History of free and open-source software
History of computing |
---|
Hardware |
Software |
Computer science |
Modern concepts |
Timeline of computing |
|
In the 1950s and 1960s, computer operating software and compilers were delivered as a part of hardware purchases without separate fees. At this time, source code, the human-readable form of software, was generally distributed with the software providing the ability to fix bugs or add new functions. Universities were early adopters of computing technology. Many of the modifications developed by universities were openly shared, in keeping with the academic principles of sharing knowledge, and organizations sprung up to facilitate sharing. As large-scale operating systems matured, fewer organizations allowed modifications to the operating software, and eventually such operating systems were closed to modification. However, utilities and other added-function applications are still shared and new organizations have been formed to promote the sharing of software.
Sharing techniques before software
The concept of free sharing of technological information existed long before computers. For example, cooking recipes have been shared and remixed since the beginning of human culture.
In the early years of automobile development, one enterprise owned the rights to a 2-cycle gasoline engine patent originally filed by George B. Selden.[1] By controlling this patent, they were able to monopolize the industry and force car manufacturers to adhere to their demands, or risk a lawsuit. In 1911, independent automaker Henry Ford won a challenge to the Selden patent. The result was that the Selden patent became virtually worthless and a new association (which would eventually become the Motor Vehicle Manufacturers Association) was formed.[1] The new association instituted a cross-licensing agreement among all US auto manufacturers: although each company would develop technology and file patents, these patents were shared openly and without the exchange of money between all the manufacturers.[1] By the time the US entered World War 2, 92 Ford patents and 515 patents from other companies were being shared between these manufacturers, without any exchange of money (or lawsuits).[1]
Free software before the 1980s
In the 1950s and into the 1960s almost all software was produced by academics and corporate researchers working in collaboration, often shared as public domain software. As such, it was generally distributed under the principles of openness and co-operation long established in the fields of academia, and was not seen as a commodity in itself. At this time, source code, the human-readable form of software, was generally distributed with the software itself because users frequently modified the software themselves, because it would not run on different hardware or OS without modification, and also to fix bugs or add new functions.[2]
The A-2 system, developed at the UNIVAC division of Remington Rand in 1953,[3] was released to customers with its source code. They were invited to send their improvements back to UNIVAC. Thus it is believed that A-2 was the first example of free and open-source software.[4]
An IBM mainframe operating system, Airline Control Program (ACP), from 1967 was also distributed with source code included.[5][6] User groups such as that of the IBM 701, called SHARE, and that of Digital Equipment Corporation (DEC), called DECUS were formed to facilitate the exchange of software.
Thus in this era, software was free, not because of any concerted effort by software users or developers, but rather due to need, a differing academic culture, and compatibility and porting requirements. Users also feared that programs that did not come with source code would contain backdoors that granted the distributor attack to their system, as security mechanisms were virtually nonexistent. Software logging was not prevalent on any major operating systems, and it was impossible to see what a program was doing.
Some university computer labs had a policy requiring that all programs installed on the computer had to come with published source-code files.[7]
The implementations of Tiny Basic published in Dr. Dobb's Journal in 1975 and onwards were another example of software being released as free software and being developed collaboratively without any organised push.
Very similar to open standards, researchers with access to Advanced Research Projects Agency Network (ARPANET) used a process called Request for Comments to develop telecommunication network protocols. This collaborative process of the 1960s led to the birth of the Internet in 1969.
Some free software which was developed in the 1970s continues to be developed and used, such as TeX (developed by Donald Knuth) and SPICE.[8]
Initial decline of free software
By the late 1960s change was coming: as operating systems and programming language compilers evolved, software production costs were dramatically increasing. A growing software industry was competing with the hardware manufacturers' bundled software products (the cost of bundled products was included in the hardware cost), leased machines required software support while providing no revenue for software, and some customers able to better meet their own needs[9] did not want the costs of manufacturer's software to be bundled with hardware product costs. In the United States vs. IBM antitrust suit, filed 17 January 1969, the U.S. government charged that bundled software was anticompetitive.[10] While some software continued to come at no cost, there was a growing amount of software that was for sale only under restrictive licences.
In the early 1970s AT&T distributed early versions of UNIX at no cost to government and academic researchers, but these versions did not come with permission to redistribute or to distribute modified versions, and were thus not free software in the modern meaning of the phrase. After UNIX became more widespread in the early 1980s, AT&T stopped the free distribution and charged for system patches. As it is quite difficult to switch to another architecture, most researchers paid for a commercial licence.
In the late 1970s and early 1980s, computer vendors and software-only companies began routinely charging for software licences, marketing it as "Program Products" and imposing legal restrictions on new software developments, now seen as assets, through copyrights, trademarks, and leasing contracts. In 1976 Bill Gates wrote an essay entitled Open Letter to Hobbyists, in which he expressed dismay at the widespread sharing of Microsoft's product Altair BASIC by hobbyists without paying its licensing fee. In 1979, AT&T began to enforce its licences when the company decided it might profit by selling the Unix system.[11]
1980s and 1990s
Informal software sharing continues
However, there were still those who wished to share their source code with other programmers and/or with users on a free basis, then called "hobbyists" and "hackers".[12] Before the introduction and widespread public use of the internet, there were several alternative ways available to do this, including listings in computer magazines (like Creative Computing, SoftSide, Compute!, Byte, etc.) and in computer programming books, like the bestseller BASIC Computer Games.[13]
DECUS tapes
In the early 1980s, the so-called DECUS tapes[14] were a unique way of worldwide transmission of free software. Operating systems were usually proprietary software, but many tools like the TECO editor, Runoff text formatter, or List file listing utility, etc. were developed to make users' lives easier, and distributed on the DECUS tapes. These utility packages benefited DEC, which sometimes incorporated them into new releases of their proprietary operating system. Even compilers could be distributed and for example Ratfor (and Ratfiv) helped researchers to move from Fortran coding to structured programming (suppressing the GO TO statement). The 1981 Decus tape was probably the most innovative by bringing the Lawrence Berkeley Laboratory Software Tools Virtual Operating System which permitted users to use a Unix-like system on DEC 16-bit PDP-11s and 32-bit VAXes running under the VMS operating system. It was similar to the current cygwin system for Windows. Binaries and libraries were often distributed, but users usually preferred to compile from source code.
Online software sharing communities in the 1980s
In the 80s, parallel to the free software movement, software with source code was shared on BBS networks. This was sometimes a necessity; software written in BASIC and other interpreted languages could only be distributed as source code, and much of it was freeware. When users began gathering such source code, and setting up boards specifically to discuss its modification, this was a de facto open source system.
One of the most obvious examples of this is one of the most-used BBS systems and networks, WWIV, developed initially in BASIC by Wayne Bell. A culture of "modding" his software, and distributing the mods, grew up so extensively that when the software was ported to first Pascal, then C++, its source code continued to be distributed to registered users, who would share mods and compile their own versions of the software. This may have contributed to it being a dominant system and network, despite being outside the Fidonet umbrella that was shared by so many other BBS makers.
Meanwhile, the advent of Usenet and UUCPNet in the early 1980s further connected the programming community and provided a simpler way for programmers to share their software and contribute to software others had written.[15]
Launch of the free software movement
In 1983, Richard Stallman launched the GNU Project to write a complete operating system free from constraints on use of its source code. Particular incidents that motivated this include a case where an annoying printer couldn't be fixed because the source code was withheld from users.[16] Stallman also published the GNU Manifesto in 1985 to outline the GNU Project's purpose and explain the importance of free software. Another probable inspiration for the GNU project and its manifesto was a disagreement between Stallman and Symbolics, Inc. over MIT's access to updates Symbolics had made to its Lisp machine, which was based on MIT code.[17] Soon after the launch, he[12] used the existing term "free software" and founded the Free Software Foundation to promote the concept. The Free Software Definition was published in February 1986.
In 1989, the first version of the GNU General Public License was published.[18] A slightly updated version 2 was published in 1991. In 1989, some GNU developers formed the company Cygnus Solutions.[19] The GNU project's kernel, later called "GNU Hurd", was continually delayed, but most other components were completed by 1991. Some of these, especially the GNU Compiler Collection, had become market leaders in their own right. The GNU Debugger and GNU Emacs were also notable successes.
Linux (1991–)
The Linux kernel, started by Linus Torvalds, was released as freely modifiable source code in 1991. The licence wasn't a free software licence, but with version 0.12 in February 1992, Torvalds relicensed the project under the GNU General Public License.[20] Much like Unix, Torvalds' kernel attracted attention from volunteer programmers.
Until this point, the GNU project's lack of a kernel meant that no complete free software operating systems existed. The development of Torvalds' kernel closed that last gap. The combination of the almost-finished GNU operating system and the Linux kernel made the first complete free software operating system.
Among Linux distributions, Debian GNU/Linux, begun by Ian Murdock in 1993, is noteworthy for being explicitly committed to the GNU and FSF principles of free software. The Debian developers' principles are expressed in the Debian Social Contract. Since its inception, the Debian project has been closely linked with the FSF, and in fact was sponsored by the FSF for a year in 1994–1995. In 1997, former Debian project leader Bruce Perens also helped found Software in the Public Interest, a non-profit funding and support organization for various free software projects.[21]
Since 1996, the Linux kernel has included proprietary licensed components, so that it was no longer entirely free software.[22] Therefore, the Free Software Foundation Latin America released in 2008 a modified version of the Linux-kernel called Linux-libre, where all proprietary and non-free components were removed.
Many businesses offer customized Linux-based products, or distributions, with commercial support. The naming remains controversial. Referring to the complete system as simply "Linux" is common usage. However, the Free Software Foundation, and many others, advocate the use of the term "GNU/Linux", saying that it is a more accurate name for the whole operating system.[23]
Linux adoption grew among businesses and governments in the 1990s and 2000s. In the English-speaking world at least, Ubuntu and its derivatives became a relatively popular group of Linux distributions.
The free BSDs (1993–)
When the USL v. BSDi lawsuit was settled out of court in 1993, FreeBSD and NetBSD (both derived from 386BSD) were released as free software. In 1995, OpenBSD forked from NetBSD. In 2004, Dragonfly BSD forked from FreeBSD.
The dot-com years (late 1990s)
In the mid to late 90s, when many website-based companies were starting up, free software became a popular choice for web servers. Apache HTTP Server became the most-used web-server software, a title that still holds as of 2015.[24] Systems based on a common "stack" of software with the Linux kernel at the base, Apache providing web services, the MySQL database engine for data storage, and the PHP programming language for providing dynamic pages, came to be termed LAMP systems.
The launch of Open Source
In 1997, Eric S. Raymond published The Cathedral and the Bazaar, a reflective analysis of the hacker community and free software principles. The paper received significant attention in early 1998 and was one factor in motivating Netscape Communications Corporation to release their popular Netscape Communicator Internet suite as free software.[25] This code is today the basis for Mozilla Firefox and Mozilla Thunderbird.
Netscape's act prompted Raymond and others to look into how to bring free software principles and benefits to the commercial-software industry. They concluded that FSF's social activism was not appealing to companies like Netscape, and looked for a way to rebrand the free software movement to emphasize the business potential of the sharing of source code.[26]
The label "open source" was adopted by some people in the free software movement at a strategy session[27] held at Palo Alto, California, in reaction to Netscape's January 1998 announcement of a source code release for Navigator. The group of individuals at the session included Christine Peterson who suggested "open source", Todd Anderson, Larry Augustin, Jon Hall, Sam Ockman, Michael Tiemann and Eric S. Raymond. Over the next week, Raymond and others worked on spreading the word. Linus Torvalds gave an all-important sanction the following day. Phil Hughes offered a pulpit in Linux Journal. Richard Stallman, pioneer of the free software movement, flirted with adopting the term, but changed his mind.[27] Those people who adopted the term used the opportunity before the release of Navigator's source code to free themselves of the ideological and confrontational connotations of the term "free software". Netscape released its source code under the Netscape Public License and later under the Mozilla Public License.[28]
The term was given a big boost at an event organized in April 1998 by technology publisher Tim O'Reilly. Originally titled the "Freeware Summit" and later named the "Open Source Summit",[29] The event brought together the leaders of many of the most important free and open source projects, including Linus Torvalds, Larry Wall, Brian Behlendorf, Eric Allman, Guido van Rossum, Michael Tiemann, Paul Vixie, Jamie Zawinski of Netscape, and Eric Raymond. At that meeting, the confusion caused by the name free software was brought up. Tiemann argued for "sourceware" as a new term, while Raymond argued for "open source". The assembled developers took a vote, and the winner was announced at a press conference that evening. Five days later, Raymond made the first public call to the free software community to adopt the new term.[30] The Open Source Initiative was formed shortly thereafter.[27] According to the OSI Richard Stallman initially flirted with the idea of adopting the open source term.[31] But as the enormous success of the open source term buried Stallman's free software term and his message on social values and computer users' freedom,[32][33][34] later Stallman and his FSF strongly objected the OSI's approach and terminology.[35] Due to the rejection of Stallman of the term open source software, the FOSS ecosystem is being divided in its terminology, see also Alternative terms for free software. For example, a 2002 FOSS developer survey revealed that 32.6% associate themselves with OSS, 48% with free software, and 19.4% in between or undecided.[36] Stallman still maintained, however, that users of each term were allies in the fight against proprietary software.
On October 13, 2000, Sun Microsystems released the StarOffice office suite as free software under the GNU Lesser General Public License. The free software version was renamed OpenOffice.org, and coexisted with StarOffice.
On the end of 1990s the term "Open source" gained much traction in public media[37] and acceptance in software industry in context of the dotcom bubble and the open-source software driven Web 2.0.
Desktop (1984-)
The X Window System was created in 1984, and became the de facto standard window system in desktop free software operating systems by the mid-1990s. X runs as a server, and is responsible for communicating with graphics hardware on behalf of clients (which are individual software applications). It provides useful services such as having multiple virtual desktops for the same monitor, and transmitting visual data across the network so a desktop can be accessed remotely.
Initially, users or system administrators assembled their own environments from X and available window managers (which add standard controls to application windows; X itself does not do this), pagers, docks and other software. While X can be operated without a window manager, having one greatly increases convenience and ease of use.
Two key "heavyweight" desktop environments for free software operating systems emerged in the 1990s that were widely adopted: KDE and GNOME. KDE was founded in 1996 by Matthias Ettrich. At the time, he was troubled by the inconsistencies in the user interfaces of UNIX applications. He proposed a new desktop environment. He also wanted to make this desktop easy to use. His initial Usenet post spurred a lot of interest.[38]
Ettrich chose to use the Qt toolkit for the KDE project. At the time, Qt did not use a free software licence. Members of the GNU project became concerned with the use of such a toolkit for building a free software desktop environment. In August 1997, two projects were started in response to KDE: the Harmony toolkit (a free replacement for the Qt libraries) and GNOME (a different desktop without Qt and built entirely on top of free software).[39] GTK+ was chosen as the base of GNOME in place of the Qt toolkit.
In November 1998, the Qt toolkit was licensed under the free/open source Q Public License (QPL) but debate continued about compatibility with the GNU General Public License (GPL). In September 2000, Trolltech made the Unix version of the Qt libraries available under the GPL, in addition to the QPL, which has eliminated the concerns of the Free Software Foundation. KDE has since been split into KDE Plasma Workspaces, a desktop environment, and KDE Software Compilation, a much broader set of software that includes the desktop environment.
Both KDE and GNOME now participate in freedesktop.org, an effort launched in 2000 to standardize Unix desktop interoperability, although there is still competition between them.[40]
Since 2000, software written for X almost always uses some widget toolkit written on top of X, like Qt or GTK.
In 2010, Canonical released the first version of Unity, a replacement for the prior default desktop environment for Ubuntu, GNOME. This change to a new, under-development desktop environment and user interface was initially somewhat controversial among Ubuntu users.
In 2011, GNOME 3 was introduced, which largely discarded the desktop metaphor in favor of a more mobile-oriented interface. The ensuing controversy led Debian to consider making the Xfce environment default on Debian 7. Several independent projects were begun to keep maintaining the GNOME 2 code.
Fedora did not adopt Unity, retaining its existing offering of a choice of GNOME, KDE and LXDE with GNOME being the default, and hence Red Hat Enterprise Linux (for which Fedora acts as the "initial testing ground") did not adopt Unity either. A fork of Ubuntu was made by interested third-party developers that kept GNOME and discarded Unity. However, as of 2013, Ubuntu still has Unity as its default desktop environment, and has no plans to change this; indeed, a variant of Unity will be used in the upcoming range of Ubuntu-based smartphones and tablets.
When Google built the Linux-based Android operating system, mostly for phone and tablet devices, it replaced X with the purpose-built SurfaceFlinger.
Open source developers also criticized X as obsolete, carrying many unused or overly complicated elements in its protocol and libraries, while missing modern functionality, e.g., compositing, screen savers, and functions provided by window managers.[41] Several attempts have been made or are underway to replace X for these reasons, including:
- The Y Window System, which ceased development in 2004.[42]
- The Wayland project, started in 2008.
- The Mir project, started in 2013 by Canonical Ltd. to produce a replacement windowing system for Ubuntu.
Microsoft, SCO and other attacks (1998–)
As free software became more popular, industry incumbents such as Microsoft started to see it as a serious threat. This was shown in a leaked 1998 document, confirmed by Microsoft as genuine, which came to be called the first of the Halloween Documents.
Microsoft once compared the GPL to "a cancer", but has since stopped using this analogy. Indeed, Microsoft has softened its public stance towards open source in general, in recognition of open source since becoming an important part of the Microsoft Windows ecosystem. However, at the same time, behind the scenes, Microsoft's actions have been less favourable toward the open source community.
Microsoft's contributions to open source
In 2006 Microsoft launched its CodePlex open source code hosting site, to provide hosting for open source developers targeting Microsoft platforms. In July 2009 Microsoft even open sourced some Hyper-V-supporting patches to the Linux kernel, because they were required to do so by the GNU General Public License,[43][44] and contributed them to the mainline kernel. Note that Hyper-V itself is not open source. Microsoft's F# compiler, created in 2002, has also been released as open source under the Apache license. The F# compiler is a commercial product, as it has been incorporated into Visual Studio, which is not open source.
Microsoft representatives have made regular appearances at various open source and Linux conferences for many years.
Recently Microsoft has launched a subsidiary named Microsoft Open Technologies Inc., with the aim of bridging the gap between proprietary Microsoft technologies and non-Microsoft technologies by engaging with open source standards.[45]
In January 2016 Microsoft released Chakra as open source under MIT License, the code is available on GitHub.[46]
SCO v IBM and related bad publicity (2003–)
In 2003, a proprietary Unix vendor and former Linux distribution vendor called SCO alleged that Unix intellectual property had been inappropriately copied into the Linux kernel, and sued IBM, claiming that it bore responsibility for this. Several related lawsuits and countersuits followed, some originating from SCO, some from others suing SCO. However, SCO's allegations lacked specificity, and while some in the media reported them as credible, many critics of SCO believed the allegations to be highly dubious at best.
Over the course of the SCO v IBM case, it emerged that not only had SCO been distributing the Linux kernel for years under the GPL, and continued to do so (thus rendering any claims hard to sustain legally), but that SCO did not even own the copyrights to much of the Unix code that it asserted copyright over, and had no right to sue over them on behalf of the presumed owner, Novell.
This was despite SCO's CEO, Darl McBride, having made many wild and damaging claims of inappropriate appropriation to the media, many of which were later shown to be false, or legally irrelevant even if true.
The blog Groklaw was one of the most forensic examiners of SCO's claims and related events, and gained its popularity from covering this material for many years.
SCO suffered defeat after defeat in SCO v IBM and its various other court cases, and filed for Chapter 11 bankruptcy in 2007. However, despite the courts finding that SCO did not own the copyrights (see above), and SCO's lawsuit-happy CEO Darl McBride no longer running the company, the bankruptcy trustee in charge of SCO-in-bankruptcy decided to press on with some portions he claimed remained relevant in the SCO v IBM lawsuit. He could apparently afford to do this because SCO's main law firm in SCO v IBM had signed an agreement at the outset to represent SCO for a fixed amount of money no matter how long the case took to complete.
In 2004, the Alexis de Tocqueville Institution (ADTI) announced its intent to publish a book, Samizdat, showing that the Linux kernel was based on code stolen from Unix, in essence using the argument that it was impossible to believe that Linus Torvalds could produce something as sophisticated as the Linux kernel. The book was never published, after it was widely criticised and ridiculed, including by people supposedly interviewed for the book. It emerged that some of the people were never interviewed, and that ADTI had not tried to contact Linus Torvalds, or ever put the allegations to him to allow a response. Microsoft attempted to draw a line under this incident, stating that it was a "distraction".
Many suspected that some or all of these legal and fear, uncertainty and doubt (FUD) attacks against the Linux kernel were covertly arranged by Microsoft, although this has never been proven. Both ADTI and SCO, however, received funding from Microsoft.
European Commission v Microsoft (2004–2007)
In 2004 the European Commission found Microsoft guilty of anti-competitive behaviour with respect to interoperability in the workgroup software market. Microsoft had formerly settled United States v. Microsoft in 2001, in a case which charged that it illegally abused its monopoly power to force computer manufacturers to preinstall Internet Explorer.
The Commission demanded that Microsoft produce full documentation of its workgroup protocols to allow competitors to interoperate with its workgroup software, and imposed fines of 1.5 million euros per day for Microsoft's failure to comply. The Commission had jurisdiction because Microsoft sells the software in question in Europe.
Microsoft, after a failed attempt to appeal the decision through the European court system, eventually complied with the demand, producing volumes of detailed documentation.
The Samba project, as Microsoft's sole remaining competitor in the workgroup software market, was the key beneficiary of this documentation.
ISO OOXML controversy (2008–)
In 2008 the International Organisation for Standardisation published Microsoft's Office Open XML as an international standard, which crucially meant that it, and therefore Microsoft Office, could be used in projects where the use of open standards were mandated by law or by policy. Critics of the standardisation process, including some members of ISO national committees involved in the process itself, alleged irregularities and procedural violations in the process, and argued that the ISO should not have approved OOXML as a standard because it made reference to undocumented Microsoft Office behaviour.
As of 2012, no fully correct open source implementation of OOXML exists, which validates the critics' remarks about OOXML being difficult to implement and underspecified. Presently, Google cannot yet convert Office documents into its own proprietary Google Docs format correctly. This suggests that OOXML is not a true open standard, but rather a partial document describing what Microsoft Office does, and only involving certain file formats.
Open source and programming languages
The vast majority of programming languages in use today have a free software implementation available.
Since the 1990s, the release of major new programming languages in the form of open source compilers and/or interpreters has been the norm, rather than the exception. Examples include Python in 1991, Ruby in 1995, and Scala in 2003. In recent times, the most notable exceptions have been Java, ActionScript, C#, and Apple's Swift until version 2.2 was proprietary. Partly compatible open source implementations have been developed for most, and in the case of Java, the main open source implementation is by now very close to the commercial version.
Java
Since its first public release in 1996, the Java platform had not been open source, although the Java source code portion of the Java runtime was included in Java Development Kits (JDKs), on a purportedly "confidential" basis, despite it being freely downloadable by the general public in most countries. Sun later expanded this "confidential" source code access to include the full source code of the Java Runtime Environment via a separate program which was open to members of the public, and later made the source of the Java compiler javac available also. Sun also made the JDK source code available confidentially to the Blackdown Java project, which was a collection of volunteers who ported early versions of the JDK to Linux, or improved on Sun's Linux ports of the JDK. However, none of this was open source, because modification and redistribution without Sun's permission were forbidden in all cases. Sun stated at the time that they were concerned about preventing forking of the Java platform.
However, several independent partial reimplementations of the Java platform had been created, many of them by the open source community, such as the GNU Compiler for Java (GCJ). Sun never filed lawsuits against any of the open source clone projects. GCJ notably caused a bad user experience for Java on free software supporting distributions such as Fedora and Ubuntu which shipped GCJ at the time as their Java implementation. How to replace GCJ with the Sun JDK was a frequently asked question by users, because GCJ was an incomplete implementation, incompatible and buggy.
In 2006 Jonathan I. Schwartz became CEO of Sun Microsystems, and signalled his commitment to open source. On 8 May 2007, Sun Microsystems released the Java Development Kit as OpenJDK under the GNU General Public License. Part of the class library (4%) could not be released as open source due to them being licensed from other parties and were included as binary plugs. Because of this, in June 2007, Red Hat launched IcedTea to resolve the encumbered components with the equivalents from GNU Classpath implementation. Since the release, most of the encumbrances have been solved, leaving only the audio engine code and colour management system (the latter is to be resolved using LittleCMS).
Distributed version control (2001-)
The first open source distributed revision control system (DVCS) was tla in 2001 (since renamed to GNU arch); however, it and its successors baz and bzr (Bazaar) never became very popular, and GNU arch was discontinued, although Bazaar still continues and is used by Canonical.
However, other DVCS projects sprung up, and some started to get significant adoption.
Git (2005-)
Git, which has since become the most popular DVCS, was created in 2005.[47] The story of its creation is an unusual one. Some developers of the Linux Kernel started to use a proprietary DVCS called BitKeeper, notably Linux founder Linus Torvalds, although some other kernel developers never used it due to its proprietary nature. The unusual situation whereby Linux kernel development involved the use by some of proprietary software "came to a head" when Andrew Tridgell started to reverse-engineer BitKeeper with the aim of producing an open source tool which could provide some of the same functionality as the commercial version. BitMover, the company that developed BitKeeper, in response, in 2005 revoked the special free of-charge license it had granted to certain kernel developers.
As a result of the removal of the BitKeeper license, Linus Torvalds immediately decided to write his own DVCS, called git, because he thought none of the existing open source DVCSs were suitable for his particular needs as a kernel maintainer (which was why he had adopted BitKeeper in the first place). A bunch of other developers quickly jumped in and helped him, and git over time grew from a relatively simple "stupid content tracker" (on which some developers developed "porcelain" extensions) into the sophisticated and powerful DVCS that it is today. Torvalds no longer maintains git himself, however; it has been maintained by Junio Hamano for many years, and has continued receiving contributions from many developers.
The increasing popularity of open source DVCSs such as git, and then, later, DVCS hosting sites, the most popular of which is GitHub (founded 2008), incrementally reduced the barriers to participation in free software projects still further. With sites like GitHub, no longer did potential contributors have to do things like hunt for the URL for the source code repository (which could be in different places on each website, or sometimes tucked away in a README file or developer documentation), or work out how to generate a patch, and if necessary subscribe to the right mailing list so that their patch email would get to the right people. Contributors can simply fork their own copy of a repository with one click, and issue a pull request from the appropriate branch when their changes are ready. GitHub has become the most popular hosting site in the world for open source software, and this, together with the ease of forking and the visibility of forks has made it a popular way for contributors to make changes, large and small.
Recent developments
While copyright is the primary legal mechanism that FOSS authors use to ensure license compliance for their software, other mechanisms such as legislation, software patents, and trademarks have uses also. In response to legal issues with patents and the DMCA, the Free Software Foundation released version 3 of its GNU Public License in 2007 that explicitly addressed the DMCA's digital rights management (DRM) provisions and patent rights.
After the development of the GNU GPLv3, as copyright holder of many pieces of the GNU system, such as the GNU Compiler Collection (GCC) software, the FSF updated most of the GNU programs' licenses from GPLv2 to GPLv3. Apple, a user of GCC, and a heavy user of both DRM and patents decided to switch the compiler in its Xcode IDE from GCC to Clang, another FOSS compiler,[48] but which is under a permissive license.[49] LWN speculated that Apple was motivated partly by a desire to avoid GPLv3.[48] The Samba project also switched to GPLv3, which Apple replaced in their software suite with a closed-source, proprietary software alternative.[50]
Recent mergers have affected major open source software. Sun Microsystems (Sun) acquired MySQL AB, owner of the popular open source MySQL database, in 2008.[51]
Oracle in turn purchased Sun in January, 2010, acquiring their copyrights, patents, and trademarks. This made Oracle the owner of the most popular proprietary database and the most popular open source database (MySQL). Oracle's attempts to commercialize the open source MySQL database have raised concerns in the FOSS community.[52] Partly in response to uncertainty about the future of MySQL, the FOSS community forked the project into new database systems outside of Oracle's control. These include MariaDB, Percona, and Drizzle.[53] All of these have distinct names; they are distinct projects and cannot use the trademarked name MySQL.[54]
Android (2008-)
In September 2008, Google released the first version of Android, a new smartphone operating system, as open source (some Google applications that are sometimes but not always bundled with Android are not open source). Initially, the operating system was given away for free by Google, and was eagerly adopted by many handset makers; Google later bought Motorola Mobility and produced its own "vanilla" Android phones and tablets, while continuing to allow other manufacturers to use Android. Android is now the world's most popular mobile platform.[55]
Because Android is based on the Linux kernel, this means that Linux is now the dominant kernel on both mobile platforms (via Android), and supercomputers,[56] and a key player in server operating systems too.
Oracle vs Google
In August 2010, Oracle sued Google claiming that its use of Java in Android infringed on Oracle's copyrights and patents. The initial Oracle v. Google trial ended in May 2012, with the finding that Google did not infringe on Oracle's patents, and the trial judge ruled that the structure of the Java application programming interfaces (APIs) used by Google was not copyrightable. The jury found that Google made a trivial ("de minimis") copyright infringement, but the parties stipulated that Google would pay no damages, because it was so trivial.[57]
However, Oracle appealed to the Federal Circuit, and Google filed a cross-appeal on the literal copying claim.[58] The Federal Circuit ruled that the small copyright infringement acknowledged by Google was not de minimis, and sent the fair use issue back to the trial judge for reconsideration. In 2016, the case was retried and a jury found for Google, on the grounds of fair use.
Chromium OS (2009-)
Until recently, Linux was still a relatively uncommon choice of operating system for desktops and laptops. However, Google's Chromebooks, running Chrome OS which is essentially a web thin client, have captured 20-25% of the sub-$300 US laptop market.[59] Chrome OS is built from the open source Chromium OS, which is based on Linux, in much the same way that versions of Android shipped on commercially available phones are built from the open source version of Android.
See also
- Open source software#History
- Free software#History
- History of Mozilla Application Suite
- History of software
- History of software engineering
- List of formerly proprietary software
- WebOS
- OpenBSD timeline
References
- 1 2 3 4 James J. Flink (1977). The Car Culture. MIT Press. ISBN 0-262-56015-1.
- ↑ "IBM 7090/7094 Page". Retrieved 11 August 2015.
- ↑ Ceruzzi, Paul (1998). A History of Modern Computing. The MIT Press.
- ↑ "Heresy & Heretical Open Source: A Heretic's Perspective".
- ↑ "An Abbreviated History of ACP, One of the Oldest Open Source Applications".
- ↑ "A Short History TPF". Archived from the original on 4 December 2004. Retrieved 6 September 2013.
- ↑ Sam Williams. "Free as in Freedom: Richard Stallman's Crusade for Free Software". "Chapter 1: For Want of a Printer". 2002.
- ↑ "A brief history of spice".
- ↑ Fisher, Franklin M.; McKie, James W.; Mancke, Richard B. (1983). IBM and the U.S. Data Processing Industry: An Economic History. Praeger. ISBN 0-03-063059-2.page 176
- ↑ Fisher. op.cit.
- ↑ Weber, Steven (2004). The Success of Open Source. Cambridge, MA: Harvard University Press. pp. 38–44. ISBN 0-674-01858-3.
- 1 2 Shea, Tom (1983-06-23). "Free software - Free software is a junkyard of software spare parts". InfoWorld. Retrieved 2016-02-10.
- ↑ Ahl, David. "David H. Ahl biography from Who's Who in America". Retrieved 2009-11-23.
- ↑ "The DECUS tapes".
- ↑ De Bona, C., et al. Open Sources 2.0. O'Reilly, ISBN 0-596-00802-3.
- ↑ "Talk transcript where Stallman tells the printer story".
- ↑ "Transcript of Richard Stallman's Speech, 28 Oct 2002, at the International Lisp Conference". GNU Project. 28 October 2002. Retrieved 2008-12-21.
- ↑ "GNU General Public License v1.0".
- ↑ Michael Tiemann. "Future of Cygnus Solutions, An Entrepreneur's Account".
- ↑ "Release notes for Linux kernel 0.12".
- ↑ "A Brief History of Debian".
- ↑ Take your freedom back, with Linux-2.6.33-libre FSFLA, 2010.
- ↑ "Linux and GNU – GNU Project – Free Software Foundation". Gnu.org. 2013-05-20. Retrieved 2013-10-02.
- ↑ "January 2015 Web Server Survey". Netcraft. Retrieved 3 February 2016.
- ↑ Kelty, Christpher M. (2008). "The Cultural Significance of free Software - Two Bits" (PDF). Duke University press - durham and london. p. 99.
- ↑ Karl Fogel (2016). "Producing Open Source Software - How to Run a Successful Free Software Project". O'Reilly Media. Retrieved 2016-04-11.
- 1 2 3 Tiemann, Michael (19 September 2006). "History of the OSI". Open Source Initiative. Archived from the original on 2002-10-01. Retrieved 23 August 2008.
- ↑ Muffatto, Moreno (2006). Open Source: A Multidisciplinary Approach. Imperial College Press. ISBN 1-86094-665-8.
- ↑ Open Source Summit Linux Gazette. 1998.
- ↑ Eric S. Raymond. "Goodbye, "free software"; hello, "open source"". catb.org. Retrieved 11 August 2015.
- ↑ Tiemann, Michael (19 September 2006). "History of the OSI". Open Source Initiative. Archived from the original on 2002-10-01. Retrieved 23 August 2008.
- ↑ Leander Kahney (March 5, 1999). "Linux's Forgotten Man - You have to feel for Richard Stallman.". wired.com. Archived from the original on 2001-06-22.
- ↑ "Toronto Star: Freedom's Forgotten Prophet (Richard Stallman)". linuxtoday.com. Oct 10, 2000. Retrieved 2016-03-25.
- ↑ Nikolai Bezroukov (November 1, 2014). "Portraits of Open Source Pioneers - Part IV. Prophet". Retrieved 2016-03-25.
- ↑ Richard Stallman. "Why Open Source Misses the Point".
- ↑ The Mysteries of Open Source Software: Black and White and Red All Over by Brian Fitzgerald, Pär J. Ågerfalk University of Limerick, Ireland "Open Source software (OSS) has attracted enormous media and research attention since the term was coined in February 1998." (2005)
- ↑ Ettrich, Matthias (14 October 1996). "New Project: Kool Desktop Environment (KDE)". Newsgroup: de.comp.os.linux.misc. Usenet: 53tkvv$b4j@newsserv.zdv.uni-tuebingen.de. Retrieved 2006-12-29.
- ↑ Richard Stallman (5 September 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Retrieved 2005-09-09.
- ↑ "A tale of two desktops". PC & Tech Authority. Retrieved 11 August 2015.
- ↑ "The Wayland Situation: Facts About X vs. Wayland – Phoronix". Retrieved 11 August 2015.
- ↑ Translation needed from de:Y Window System
- ↑ Gavin Clarke (23 July 2009). "Microsoft opened Linux-driver code after 'violating' GPL". The Register. Retrieved 6 September 2013.
- ↑ "GNU General Public License".
- ↑ Ovide, Shira (16 April 2012). "Microsoft Dips Further into Open-Source Software". Wall Street Journal. Retrieved 17 April 2012.
- ↑ "ChakraCore GitHub repository is now open".
- ↑ "SCM Ranking, Q3 2013" (PDF). Switch-Gears. Retrieved 22 September 2013.
- 1 2 Brockmeier, Joe. "Apple's Selective Contributions to GCC". Retrieved 23 October 2011.
- ↑ "LLVM Developer Policy". LLVM. Retrieved 19 November 2012.
- ↑ Holwerda, Thom. "Apple Ditches SAMBA in Favour of Homegrown Replacement". Retrieved 23 October 2011.
- ↑ "Sun to Acquire MySQL". MySQL AB. Retrieved 2008-01-16.
- ↑ Thomson, Iain. "Oracle offers commercial extensions to MySQL". Retrieved 23 October 2011.
- ↑ Samson, Ted. "Non-Oracle MySQL fork deemed ready for prime time". Retrieved 23 October 2011.
- ↑ Nelson, Russell. "Open Source, MySQL, and trademarks". Retrieved 23 October 2011.
- ↑ "Android, the world's most popular mobile platform". Google. Retrieved 6 September 2013.
- ↑ Steven J. Vaughan-Nichols (29 July 2013). "20 great years of Linux and supercomputers". ZDNet. Retrieved 6 September 2013.
- ↑ Niccolai, James (20 June 2012). "Oracle agrees to 'zero' damages in Google lawsuit, eyes appeal". Retrieved 2012-06-23.
- ↑ Jones, Pamela (5 October 2012). "Oracle and Google File Appeals". Groklaw. Retrieved 17 November 2012.
- ↑ Williams, Rhiannon (11 July 2013). "Google Chromebook sales soar in face of PC decline". Daily Telegraph. Retrieved 3 September 2013.
External links
- Elmer-Dewitt, Philip (30 Jul 1984). Software Is for Sharing, Time.
- Richard Stallman speaking about free software and the GNU project in 1986, Sweden
- David A. Wheeler on the history of free software, from his "Look at the numbers!" paper
- The Daemon, the GNU, and the Penguin, by Peter Salus
- Documents about the BSD lawsuit that lead to 386BSD and then FreeBSD
- Open Sources: Voices from the Open Source Revolution (January 1999)
- The history of Cygnus solutions, the largest free software company of the early 90s
- LWN.net's 1998–2008 timeline part 1 (part 2, 3, 4, 5, 6)
- Open Source Software, a paper by Oliver Mezquita Prieto
- A Brief History of FreeBSD, by Jordan Hubbard
- UNESCO Free Software Portal
- Infinite Hands, a free licensed folk song about the history of free software.