Topic: Computing/Computer science

You are looking at all articles with the topic "Computing/Computer science". We found 35 matches.

Hint: To view all topics, click here. Too see the most popular topics, click here instead.

πŸ”— John McCarthy Has Died

πŸ”— Biography πŸ”— California πŸ”— Computing πŸ”— Chess πŸ”— Biography/science and academia πŸ”— Computing/Computer science πŸ”— Robotics πŸ”— Stanford University

John McCarthy (September 4, 1927 – October 24, 2011) was an American computer scientist and cognitive scientist. McCarthy was one of the founders of the discipline of artificial intelligence. He coined the term "artificial intelligence" (AI), developed the Lisp programming language family, significantly influenced the design of the ALGOL programming language, popularized time-sharing, invented garbage collection, and was very influential in the early development of AI.

McCarthy spent most of his career at Stanford University. He received many accolades and honors, such as the 1971 Turing Award for his contributions to the topic of AI, the United States National Medal of Science, and the Kyoto Prize.

Discussed on

πŸ”— Year 2038 Problem

πŸ”— Computing πŸ”— Computing/Software πŸ”— Computing/Computer science πŸ”— Time

The Year 2038 problem (also called Y2038 or Y2k38 or Unix Y2K) relates to representing time in many digital systems as the number of seconds passed since 00:00:00 UTC on 1 January 1970 and storing it as a signed 32-bit integer. Such implementations cannot encode times after 03:14:07 UTC on 19 January 2038. Similar to the Y2K problem, the Year 2038 problem is caused by insufficient capacity used to represent time.

Discussed on

πŸ”— Zooko's Triangle

πŸ”— Computing πŸ”— Computer Security πŸ”— Computer Security/Computing πŸ”— Computing/Software πŸ”— Computing/Computer science πŸ”— Cryptography πŸ”— Cryptography/Computer science πŸ”— Computing/Computer Security

Zooko's triangle is a trilemma of three properties that are generally considered desirable for names of participants in a network protocol:

  • Human-meaningful: Meaningful and memorable (low-entropy) names are provided to the users.
  • Secure: The amount of damage a malicious entity can inflict on the system should be as low as possible.
  • Decentralized: Names correctly resolve to their respective entities without the use of a central authority or service.

Discussed on

πŸ”— Rope (data structure)

πŸ”— Computing πŸ”— Computing/Computer science

In computer programming, a rope, or cord, is a data structure composed of smaller strings that is used to efficiently store and manipulate a very long string. For example, a text editing program may use a rope to represent the text being edited, so that operations such as insertion, deletion, and random access can be done efficiently.

Discussed on

πŸ”— Zero one infinity rule

πŸ”— Computing πŸ”— Computing/Computer science

The Zero one infinity (ZOI) rule is a rule of thumb in software design proposed by early computing pioneer Willem van der Poel. It argues that arbitrary limits on the number of instances of a particular type of data or structure should not be allowed. Instead, an entity should either be forbidden entirely, only one should be allowed, or any number of them should be allowed. Although various factors outside that particular software could limit this number in practice, it should not be the software itself that puts a hard limit on the number of instances of the entity.

Examples of this rule may be found in the structure of many file systems' directories (also known as folders):

  • 0 – The topmost directory has zero parent directories; that is, there is no directory that contains the topmost directory.
  • 1 – Each subdirectory has exactly one parent directory (not including shortcuts to the directory's location; while such files may have similar icons to the icons of the destination directories, they are not directories at all).
  • Infinity – Each directory, whether the topmost directory or any of its subdirectories, according to the file system's rules, may contain any number of files or subdirectories. Practical limits to this number are caused by other factors, such as space available on storage media and how well the computer's operating system is maintained.

In real-world software design, violations of this rule of thumb are common. For example, the FAT16 file system imposes a limit of 65,536 files to a directory.

Discussed on

πŸ”— Conway's Law

πŸ”— Computing πŸ”— Systems πŸ”— Computing/Software πŸ”— Computing/Computer science πŸ”— Systems/Systems engineering

Conway's law is an adage stating that organizations design systems that mirror their own communication structure. It is named after computer programmer Melvin Conway, who introduced the idea in 1967. His original wording was:

Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.

The law is based on the reasoning that in order for a software module to function, multiple authors must communicate frequently with each other. Therefore, the software interface structure of a system will reflect the social boundaries of the organization(s) that produced it, across which communication is more difficult. Conway's law was intended as a valid sociological observation, although sometimes it's used in a humorous context. It was dubbed Conway's law by participants at the 1968 National Symposium on Modular Programming.

In colloquial terms, it means software or automated systems end up "shaped like" the organizational structure they are designed in or designed for. Some interpretations of the law say this organizational pattern mirroring is a helpful feature of such systems, while other interpretations say it's merely a result of human nature or organizational bias.

Discussed on

πŸ”— Alan Turing's 100th Birthday - Mathematician, logician, cryptanalyst, scientist

πŸ”— Biography πŸ”— Computing πŸ”— Mathematics πŸ”— London πŸ”— Philosophy πŸ”— Philosophy/Logic πŸ”— England πŸ”— Biography/science and academia πŸ”— Philosophy/Philosophy of science πŸ”— History of Science πŸ”— Computing/Computer science πŸ”— Robotics πŸ”— Philosophy/Philosophers πŸ”— Cryptography πŸ”— LGBT studies/LGBT Person πŸ”— LGBT studies πŸ”— Athletics πŸ”— Greater Manchester πŸ”— Cheshire πŸ”— Cryptography/Computer science πŸ”— Philosophy/Philosophy of mind πŸ”— Molecular and Cell Biology πŸ”— Surrey πŸ”— Running

Alan Mathison Turing (; 23 June 1912 – 7 June 1954) was an English mathematician, computer scientist, logician, cryptanalyst, philosopher, and theoretical biologist. Turing was highly influential in the development of theoretical computer science, providing a formalisation of the concepts of algorithm and computation with the Turing machine, which can be considered a model of a general-purpose computer. Turing is widely considered to be the father of theoretical computer science and artificial intelligence. Despite these accomplishments, he was not fully recognised in his home country during his lifetime, due to his homosexuality, and because much of his work was covered by the Official Secrets Act.

During the Second World War, Turing worked for the Government Code and Cypher School (GC&CS) at Bletchley Park, Britain's codebreaking centre that produced Ultra intelligence. For a time he led Hut 8, the section that was responsible for German naval cryptanalysis. Here, he devised a number of techniques for speeding the breaking of German ciphers, including improvements to the pre-war Polish bombe method, an electromechanical machine that could find settings for the Enigma machine.

Turing played a crucial role in cracking intercepted coded messages that enabled the Allies to defeat the Nazis in many crucial engagements, including the Battle of the Atlantic, and in so doing helped win the war. Due to the problems of counterfactual history, it is hard to estimate the precise effect Ultra intelligence had on the war, but at the upper end it has been estimated that this work shortened the war in Europe by more than two years and saved over 14Β million lives.

After the war Turing worked at the National Physical Laboratory, where he designed the Automatic Computing Engine. The Automatic Computing Engine was one of the first designs for a stored-program computer. In 1948 Turing joined Max Newman's Computing Machine Laboratory, at the Victoria University of Manchester, where he helped develop the Manchester computers and became interested in mathematical biology. He wrote a paper on the chemical basis of morphogenesis and predicted oscillating chemical reactions such as the Belousov–Zhabotinsky reaction, first observed in the 1960s.

Turing was prosecuted in 1952 for homosexual acts; the Labouchere Amendment of 1885 had mandated that "gross indecency" was a criminal offence in the UK. He accepted chemical castration treatment, with DES, as an alternative to prison. Turing died in 1954, 16 days before his 42nd birthday, from cyanide poisoning. An inquest determined his death as a suicide, but it has been noted that the known evidence is also consistent with accidental poisoning.

In 2009, following an Internet campaign, British Prime Minister Gordon Brown made an official public apology on behalf of the British government for "the appalling way he was treated". Queen Elizabeth II granted Turing a posthumous pardon in 2013. The Alan Turing law is now an informal term for a 2017 law in the United Kingdom that retroactively pardoned men cautioned or convicted under historical legislation that outlawed homosexual acts.

Discussed on

πŸ”— Dennis Ritchie

πŸ”— Biography πŸ”— Computing πŸ”— Computer science πŸ”— Biography/science and academia πŸ”— New York (state) πŸ”— New York (state)/Hudson Valley πŸ”— Computing/Computer science πŸ”— Software πŸ”— Software/Computing πŸ”— C/C++ πŸ”— Japan πŸ”— New Jersey πŸ”— Linux

Dennis MacAlistair Ritchie (September 9, 1941 – c. October 12, 2011) was an American computer scientist. He created the C programming language and, with long-time colleague Ken Thompson, the Unix operating system and B programming language. Ritchie and Thompson were awarded the Turing Award from the ACM in 1983, the Hamming Medal from the IEEE in 1990 and the National Medal of Technology from President Bill Clinton in 1999. Ritchie was the head of Lucent Technologies System Software Research Department when he retired in 2007. He was the "R" in K&R C, and commonly known by his username dmr.

Discussed on

πŸ”— Timsort: Fastest Sorting algorithm

πŸ”— Computing πŸ”— Computer science πŸ”— Computing/Software πŸ”— Computing/Computer science

Timsort is a hybrid stable sorting algorithm, derived from merge sort and insertion sort, designed to perform well on many kinds of real-world data. It was implemented by Tim Peters in 2002 for use in the Python programming language. The algorithm finds subsequences of the data that are already ordered (runs) and uses them to sort the remainder more efficiently. This is done by merging runs until certain criteria are fulfilled. Timsort has been Python's standard sorting algorithm since version 2.3. It is also used to sort arrays of non-primitive type in Java SE 7, on the Android platform, in GNU Octave, on V8, and Swift.

It uses techniques from Peter McIlroy's 1993 paper "Optimistic Sorting and Information Theoretic Complexity".

Discussed on

πŸ”— C Minus Minus

πŸ”— Computing πŸ”— Computer science πŸ”— Computing/Software πŸ”— Computing/Computer science

C-- (pronounced C minus minus) is a C-like programming language. Its creators, functional programming researchers Simon Peyton Jones and Norman Ramsey, designed it to be generated mainly by compilers for very high-level languages rather than written by human programmers. Unlike many other intermediate languages, its representation is plain ASCII text, not bytecode or another binary format.

There are two main branches:

  • C--, the original branch, with the final version 2.0 released in May 2005
  • Cmm, the fork actively used as the intermediate representation (IR) in the Glasgow Haskell Compiler (GHC)

Discussed on