The Cathedral And The Bazaar
''The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary'' (abbreviated ''CatB'') is an essay, and later a book, by Eric S. Raymond on software engineering methods, based on his observations of the Linux kernel development process and his experiences managing an open source project, fetchmail. It examines the struggle between top-down and bottom-up design. The essay was first presented by Raymond at the Linux Kongress on May 27, 1997, in Würzburg, Germany, and was published as the second chapter of the sametitled book in 1999. The illustration on the cover of the book is a 1913 painting by Lyubov Popova titled ''Composition with Figures'' and belongs to the collection of the State Tretyakov Gallery. The book was released under the Open Publication License v2.0 in 1999. Central thesis The software essay contrasts two different free software development models: * The ''cathedral'' model, in which source code is available with each ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Eric S
The given name Eric, Erich, Erikk, Erik, Erick, Eirik, or Eiríkur is derived from the Old Norse name ''Eiríkr'' (or ''Eríkr'' in Old East Norse due to monophthongization). The first element, ''ei-'' may be derived from the older Proto-Norse ''* aina(z)'', meaning "one, alone, unique", ''as in the form'' ''Æ∆inrikr'' explicitly, but it could also be from ''* aiwa(z)'' "everlasting, eternity", as in the Gothic form '' Euric''. The second element ''- ríkr'' stems either from Proto-Germanic ''* ríks'' "king, ruler" (cf. Gothic ''reiks'') or the therefrom derived ''* ríkijaz'' "kingly, powerful, rich, prince"; from the common Proto-Indo-European root * h₃rḗǵs. The name is thus usually taken to mean "sole ruler, autocrat" or "eternal ruler, ever powerful". ''Eric'' used in the sense of a proper noun meaning "one ruler" may be the origin of '' Eriksgata'', and if so it would have meant "one ruler's journey". The tour was the medieval Swedish king's journey, when newly ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
GNU Emacs
GNU Emacs is a text editor and suite of free software tools. Its development began in 1984 by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement. The program's tagline is "the extensible self-documenting text editor." Most functionality in GNU Emacs is implemented in user-accessible Emacs Lisp, allowing deep extensibility directly by users and through community-contributed packages. Its built-in features include a file browser and editor (Dired), an advanced calculator (Calc), an email client and news reader (Gnus), a Language Server Protocol integration, and the productivity system Org-mode. A large community of users have contributed extensions such as the Git interface Magit, the Vim (text editor), Vim emulation layer Evil, several search frameworks, the window manager EXWM, and tools for working with a wide range of p ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Syntactic Sugar
In computer science, syntactic sugar is syntax within a programming language that is designed to make things easier to read or to express. It makes the language "sweeter" for human use: things can be expressed more clearly, more concisely, or in an alternative style that some may prefer. Syntactic sugar is usually a shorthand for a common operation that could also be expressed in an alternate, more verbose, form: The programmer has a choice of whether to use the shorter form or the longer form, but will usually use the shorter form since it is shorter and easier to type and read. For example, many programming languages provide special syntax for referencing and updating array elements. Abstractly, an array reference is a procedure of two arguments: an array and a subscript vector, which could be expressed as get_array(Array, vector(i,j)). Instead, many languages provide syntax such as Array ,j/code>. Similarly an array element update is a procedure consisting of three arguments, fo ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Turing Completeness
In computability theory, a system of data-manipulation rules (such as a model of computation, a computer's instruction set, a programming language, or a cellular automaton) is said to be Turing-complete or computationally universal if it can be used to simulate any Turing machine (devised by English mathematician and computer scientist Alan Turing). This means that this system is able to recognize or decode other data-manipulation rule sets. Turing completeness is used as a way to express the power of such a data-manipulation rule set. Virtually all programming languages today are Turing-complete. A related concept is that of Turing equivalence two computers P and Q are called equivalent if P can simulate Q and Q can simulate P. The Church–Turing thesis conjectures that any function whose values can be computed by an algorithm can be computed by a Turing machine, and therefore that if any real-world computer can simulate a Turing machine, it is Turing equivalent to a Turing m ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Antoine De Saint-Exupéry
Antoine Marie Jean-Baptiste Roger, vicomte de Saint-Exupéry (29 June 1900 – 31 July 1944), known simply as Antoine de Saint-Exupéry (, , ), was a French writer, poet, journalist and aviator. Born in Lyon to an French nobility, aristocratic family, Saint-Exupéry trained as a commercial pilot in the early 1920s, working airmail routes across Europe, Africa, and South America. Between 1926 and 1939, four of his literary works were published: the short story ''The Aviator (short story), The Aviator'', novels ''Courrier sud (novel), Southern Mail'' and ''Night Flight (novel), Night Flight'', and the memoir ''Wind, Sand and Stars''. Saint-Exupéry joined the French Air Force for World War II and flew reconnaissance missions until Armistice of 22 June 1940, France's armistice with Germany in 1940. After being demobilised by the Air Force, Saint-Exupéry lived in exile in the United States between 1941 and 1943 and helped persuade it to enter the war. During this time, his works '' ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Release Early, Release Often
Release early, release often (also known as ship early, ship often, or time-based releases, and sometimes abbreviated RERO) is a software development philosophy that emphasizes the importance of early and frequent releases in creating a tight feedback loop between developers and testers or users, contrary to a feature-based release strategy. Advocates argue that this allows the software development to progress faster, enables the user to help define what the software will become, better conforms to the users' requirements for the software, and ultimately results in higher quality software. The development philosophy attempts to eliminate the risk of creating software that no one will use. This philosophy was popularized by Eric S. Raymond in his 1997 essay ''The Cathedral and the Bazaar'', where Raymond stated "Release early. Release often. And listen to your customers". This philosophy was originally applied to the development of the Linux kernel and other open-source software, ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
The Mythical Man-Month
''The Mythical Man-Month: Essays on Software Engineering'' is a book on software engineering and project management by Fred Brooks first published in 1975, with subsequent editions in 1982 and 1995. Its central theme is that adding manpower to a software project that is behind schedule delays it even longer. This idea is known as Brooks's law, and is presented along with the second-system effect and advocacy of Software prototyping, prototyping. Brooks's observations are based on his experiences at IBM while managing the development of OS/360. He had added more programmers to a project falling behind schedule, a decision that he would later conclude had, counter-intuitively, delayed the project even further. He also made the mistake of asserting that one project—involved in writing an ALGOL compiler—would require six months, regardless of the number of workers involved (it required longer). The tendency for managers to repeat such errors in project development led Brooks to qui ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Marketplace Of Ideas
The marketplace of ideas is a rationale for freedom of expression based on an analogy to the economic concept of a free market. The marketplace of ideas holds that the truth will emerge from the competition of ideas in free, transparent public discourse and concludes that ideas and ideologies will be culled according to their superiority or inferiority and widespread acceptance among the population. The concept is often applied to discussions of patent law as well as freedom of the press and the responsibilities of the media in a liberal democracy. History Support for competing ideas and robust debate can be found in the philosophy of John Milton in his work '' Areopagitica'' in 1644 and also John Stuart Mill in his book '' On Liberty'' in 1859. The general idea that free speech should be tolerated because it will lead toward the truth has a long history. English poet John Milton suggested that restricting speech was not necessary because "in a free and open encounter" truth wou ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Linus's Law
In software development, Linus's law is the assertion that "given enough eyeballs, all bugs are shallow". The law was formulated by Eric S. Raymond in his essay and book ''The Cathedral and the Bazaar'' (1999), and was named in honor of Linus Torvalds. A more formal statement is: "Given a large enough beta-tester and co- developer base, almost every problem will be characterized quickly and the fix obvious to someone." Presenting the code to multiple developers with the purpose of reaching consensus about its acceptance is a simple form of software reviewing. Researchers and practitioners have repeatedly shown the effectiveness of reviewing processes in finding bugs and security issues. Validity In ''Facts and Fallacies about Software Engineering,'' Robert Glass refers to the law as a "mantra" of the open source movement, but calls it a fallacy due to the lack of supporting evidence and because research has indicated that the rate at which additional bugs are uncovered does ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Computer Bug
A software bug is a design defect ( bug) in computer software. A computer program with many or serious bugs may be described as ''buggy''. The effects of a software bug range from minor (such as a misspelled word in the user interface) to severe (such as frequent crashing). In 2002, a study commissioned by the US Department of Commerce's National Institute of Standards and Technology concluded that "software bugs, or errors, are so prevalent and so detrimental that they cost the US economy an estimated $59 billion annually, or about 0.6 percent of the gross domestic product". Since the 1950s, some computer systems have been designed to detect or auto-correct various software errors during operations. History Terminology ''Mistake metamorphism'' (from Greek ''meta'' = "change", ''morph'' = "form") refers to the evolution of a defect in the final stage of software deployment. Transformation of a ''mistake'' committed by an analyst in the early stages of the softw ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Fetchmail
Fetchmail is an open-source software utility for POSIX-compliant operating systems which is used to retrieve e-mail from a remote POP3, IMAP, or ODMR mail server to the user's local system. It was developed from thpopclientprogram, written by Carl Harris. Its chief significance is perhaps that its author, Eric S. Raymond, used it as a model to discuss his theories of open-source software development in a widely read and influential essay on software development methodologies ''The Cathedral and the Bazaar''. Design By design, Fetchmail's only means of delivering messages is by submitting them to the local MTA/Message transfer agent or invoking a mail delivery agent like procmail, maildrop, or sendmail; delivering directly to mail folders such as maildir is not supported. It is a C program evolved by gradual mutation from an ancestor already written in C. Dan Bernstein, getmail creator Charles Cazabon and FreeBSD developer Terry Lambert, have criticized Fetchmail's design, ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Linus Torvalds
Linus Benedict Torvalds ( , ; born 28 December 1969) is a Finnish software engineer who is the creator and lead developer of the Linux kernel. He also created the distributed version control system Git. He was honored, along with Shinya Yamanaka, with the 2012 Millennium Technology Prize by the Technology Academy Finland "in recognition of his creation of a new open source operating system for computers leading to the widely used Linux kernel". He is also the recipient of the 2014 IEEE Computer Society Computer Pioneer Award and the 2018 IEEE Masaru Ibuka Consumer Electronics Award. Life and career Early years Torvalds was born in Helsinki, Finland, on 28 December 1969, the son of journalists Anna and Nils Torvalds, the grandson of statistician Leo Törnqvist and of poet Ole Torvalds, and the great-grandson of journalist and soldier Toivo Karanko. His parents were campus radicals at the University of Helsinki in the 1960s. His family belongs to the Swedish-sp ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |