History of free and open-source software

The free software movement was launched in 1983, but there existed earlier projects which fit (or almost fit) the modern definition of free software, that is, software which all users are free to use, study, modify and redistribute ("free as in freedom"). Earlier projects provided these freedoms either for practical reasons or social reasons but were not part of an organised movement to spread the practice or the philosophy.

The movement was launched by Richard Stallman as a reaction to the growing trend of developers blocking these freedoms by only publishing the runnable version of the software and not the modifiable source code.

Stallman argues that this is a social imperative for all distributed software, rather than a technical choice which just happens to have a practical value in some contexts. In 1998, people who advocated free software but disagreed that it was a social imperative began using the term "open-source software" for the software and presenting it as having technical advantages.

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, a group of capital monopolists 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

Software communities that can now be compared with today's free-software community existed for a long time before the free-software movement and the term "free software".[2] According to Richard Stallman, the software-sharing community at MIT existed for "many years" before he got involved in 1971.[3] In the 1950s and into the 1960s almost all software was produced by computer science academics and corporate researchers working in collaboration. 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 functionality.[4]

The A-2 system, developed at the UNIVAC division of Remington Rand in 1953,[5] 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.[6]

An IBM mainframe operating system, Airline Control Program (ACP), from 1967 was also distributed with source code included.[7][8] 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 because of necessity and a differing academic culture, as well as compatibility and porting requirements. Users also feared that close sourced programs 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 software was doing.

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.[9]

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[10] 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.[11] 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 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.[12]

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. Prior to the introduction and widespread public use of the internet, there were a number of alternative ways available to do this, including listings in computer magazines and in computer programming books.

DECUS tapes

In the early 1980s, the so-called DECUS tapes[13] were a unique way of worldwide transmission of free software. Operating systems were usually proprietary software, but numerous tools like the Teco editor or Runoff 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 people 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 people 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 its 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.[14]

Launch of the free software movement

In 1983, Richard Stallman published the GNU Manifesto and 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.[15] 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.[16] Soon after the launch, he coined the term "free software" and founded the Free Software Foundation to promote the concept and a free software definition was published in February 1986.

In 1989, the first version of the GNU General Public License was published.[17] A slightly updated version 2 was published in 1991. In 1989, some GNU developers formed the company Cygnus Solutions.[18] 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.[19] Much like Unix, Torvalds' kernel attracted the attention of 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.[20]

Since 1996 Linux has included proprietary licensed components, so that it was no longer entirely free software.[21] Therefore the Free Software Foundation Latin America released a modified version of the Linux-kernel called Linux-libre, where all the proprietary and non-free components have been 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.[22]

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. OpenBSD forked from NetBSD in 1995. Other more recent forks also exist, including DragonflyBSD.

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 2012. 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 known as LAMP systems.

The launch of Open Source

In 1997, Eric 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. This code is today the basis for Mozilla Firefox and 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.

The label "open source" was adopted by some people in the free software movement at a strategy session[23] 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.[23] 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.[24]

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 known as the "Open Source Summit",[25] 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.[26] The Open Source Initiative was formed shortly thereafter.[23]

However, Richard Stallman and the FSF harshly objected to the new organization's approach. They felt that, with its narrow focus on source code, OSI was burying the philosophical and social values of free software and hiding the issue of computer users' freedom. Stallman still maintained, however, that users of each term were allies in the fight against proprietary software.[27]

In August 1999, 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.

Desktop (1984-)

Screenshot of an early X-Windows desktop, running several applications with the X11R4 default window manager, twm.

X 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.[28]

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).[29] 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.[30]

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 previous 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. A number of independent projects were started to continue maintenance of 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 (targeted primarily at phone and table 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 functionality provided by window managers.[31] Several attempts have been made or are underway to replace X for these reasons, including:

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 known as 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 the fact that open source is today an important part of the Microsoft Windows ecosystem. However, at the same time, behind the scenes, Microsoft's actions have not been as favourable towards 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,[33][34] 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 known as 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.[35]

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. A number of 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, which as of January 2012 is still technically ongoing, it emerged that not only had SCO itself 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 the fact that SCO's CEO, Darl McBride, had made numerous 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, although how and whether the other legal costs will be funded is unclear.

In 2004, the Alexis de Tocqueville Institution announced its intention to publish a book, Samizdat, "showing" that the Linux kernel was based on code stolen from Unix, in essence using the argument that 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 had not in fact been interviewed at all, and in particular ADTI had made no attempt to contact Linus Torvalds, let alone to put the allegations to him and allow him to respond. 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 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 previously 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 can not 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 in relation to 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. Partially 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, on a purportedly "confidential" basis, despite the fact that it was 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 as well. 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. Sun never filed lawsuits against any of the open source "clone projects". GCJ in particular 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% of it) 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).

See also: Oracle v Google in this article

Distributed version control (2001-)

The first open source distributed revision control system 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-)

See also: Git (History)

The pivotal moment, however, was the creation of git, which has since become the most popular DVCS.[36] 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 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 to receive contributions from a large number of 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. With GitHub, 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 the ease of forking and the visibility of forks has made it a popular way for contributors to make changes, large and small.

GitHub even has a feature to streamline quick editing of single files, which (since 2011[37]) automatically forks a copy of the repository if the user does not have permissions to edit it directly, and then issues a pull request afterwards if the user wishes. This allows "safe" changes such as string and documentation corrections to be made and then pull requests to be issued entirely from within the web browser, and makes the experience somewhat like using a wiki.

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, patents, and trademarks have implications as well. 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 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 GCC compiler 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,[38] but which is under a permissive license.[39] LWN speculated that Apple was motivated partly by a desire to avoid GPLv3.[38] The Samba project also switched to GPLv3, which Apple replaced in their software suite with a closed-source, proprietary software alternative.[40]

Recent mergers have affected major open-source software. Sun Microsystems (Sun) acquired MySQL AB, owner of the popular open-source MySQL database, in 2008.[41]

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.[42] 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.[43] All of these have distinct names; they are distinct projects and can not use the trademarked name MySQL.[44]

Android (2008-)

In September 2008, Google released the first version of Android, a new smartphone operating system, as open source (note that certain 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 lapped up by multiple 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.[45]

Because Android is based on the Linux kernel, this means that Linux is now the dominant kernel on both mobile platforms (due to Android) and on supercomputers,[46] and a key player in server operating systems too.

Oracle v 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 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.[47]

However, Oracle appealed to the Federal Circuit, and Google filed a cross-appeal on the literal copying claim.[48] 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. The case is ongoing as of July 2014.

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 market in sub-$300 US laptops.[49] 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

References

  1. 1.0 1.1 1.2 1.3 James J. Flink (1977). The Car Culture. MIT Press. ISBN 0-262-56015-1.
  2. Steven Levy. Hackers: Heroes of the Computer Revolution. ISBN 0-385-19195-2.
  3. "The GNU Project (essay)". Retrieved 2007-06-19. in 1971, I became part of a software-sharing community that had existed for many years
  4. Dave Pitts' IBM 7090 support
  5. Ceruzzi, Paul (1998). A History of Modern Computing. The MIT Press.
  6. "Heresy & Heretical Open Source: A Heretic's Perspective".
  7. "An Abbreviated History of ACP, One of the Oldest Open Source Applications".
  8. "A Short History TPF". Archived from the original on 4 December 2004. Retrieved 6 September 2013.
  9. "A brief history of spice".
  10. 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
  11. Fisher. op.cit.
  12. Weber, Steven (2004). The Success of Open Source. Cambridge, MA: Harvard University Press. pp. 38–44. ISBN 0-674-01858-3.
  13. "The DECUS tapes".
  14. De Bona, C., et al. Open Sources 2.0. O'Reilly, ISBN 0-596-00802-3.
  15. "Talk transcript where Stallman tells the printer story".
  16. "Transcript of Richard Stallman's Speech, 28 Oct 2002, at the International Lisp Conference". GNU Project. 28 October 2002. Retrieved 2008-12-21.
  17. "GNU General Public License v1.0".
  18. Michael Tiemann. "Future of Cygnus Solutions, An Entrepreneur's Account".
  19. "Release notes for Linux kernel 0.12".
  20. "A Brief History of Debian".
  21. Take your freedom back, with Linux-2.6.33-libre FSFLA, 2010.
  22. "Linux and GNU - GNU Project - Free Software Foundation". Gnu.org. 2013-05-20. Retrieved 2013-10-02.
  23. 23.0 23.1 23.2 Tiemann, Michael (19 September 2006). "History of the OSI". Open Source Initiative. Retrieved 23 August 2008.
  24. Muffatto, Moreno (2006). Open Source: A Multidisciplinary Approach. Imperial College Press. ISBN 1-86094-665-8.
  25. Open Source Summit Linux Gazette. 1998.
  26. Goodbye, "free software"; hello, "open source"
  27. Richard Stallman. "Why Open Source Misses the Point".
  28. 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.
  29. Richard Stallman (5 September 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Retrieved 2005-09-09.
  30. A tale of two desktops
  31. http://www.phoronix.com/scan.php?page=article&item=x_wayland_situation
  32. Translation needed from https://de.wikipedia.org/wiki/Y_Window_System
  33. Gavin Clarke (23 July 2009). "Microsoft opened Linux-driver code after 'violating' GPL". The Register. Retrieved 6 September 2013.
  34. "GNU General Public License".
  35. Ovide, Shira (16 April 2012). "Microsoft Dips Further into Open-Source Software". Wall Street Journal. Retrieved 17 April 2012.
  36. "SCM Ranking, Q3 2013" (PDF). Switch-Gears. Retrieved 22 September 2013.
  37. "Forking with the Edit Button". GitHub blog. 26 April 2011. Retrieved 9 January 2012.
  38. 38.0 38.1 Brockmeier, Joe. "Apple's Selective Contributions to GCC". Retrieved 23 October 2011.
  39. "LLVM Developer Policy". LLVM. Retrieved November 19, 2012.
  40. Holwerda, Thom. "Apple Ditches SAMBA in Favour of Homegrown Replacement". Retrieved 23 October 2011.
  41. "Sun to Acquire MySQL". MySQL AB. Retrieved 2008-01-16.
  42. Thomson, Iain. "Oracle offers commercial extensions to MySQL". Retrieved 23 October 2011.
  43. Samson, Ted. "Non-Oracle MySQL fork deemed ready for prime time". Retrieved 23 October 2011.
  44. Nelson, Russell. "Open Source, MySQL, and trademarks". Retrieved 23 October 2011.
  45. "Android, the world's most popular mobile platform". Google. Retrieved 6 September 2013.
  46. Steven J. Vaughan-Nichols (29 July 2013). "20 great years of Linux and supercomputers". ZDNet. Retrieved 6 September 2013.
  47. Niccolai, James (June 20, 2012). "Oracle agrees to 'zero' damages in Google lawsuit, eyes appeal". Retrieved 2012-06-23.
  48. Jones, Pamela (October 5, 2012). "Oracle and Google File Appeals". Groklaw. Retrieved November 17, 2012.
  49. Williams, Rhiannon (11 July 2013). "Google Chromebook sales soar in face of PC decline". Daily Telegraph. Retrieved 3 September 2013.

External links