Jump to content

History of free and open-source software: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
→‎See also: Added WebOS as See Also and clarified what Chrome OS is
rvt. Opinion, original research [WP:OR}, unencyclopedic, essentially unreferenced, removes well reffed material, and simply wrong.
Line 4: Line 4:
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]].
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|open source software]]" for the software and presenting it as having technical advantages.
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 has having technical advantages.


== Sharing techniques before software ==
== Sharing techniques before software ==
Line 14: Line 14:
==Free software before 1983==
==Free software before 1983==


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".<ref>{{ cite book | title = [[Hackers: Heroes of the Computer Revolution]] | author = [[Steven Levy]] | isbn = 0-385-19195-2 }}</ref> According to [[Richard Stallman]], the software-sharing community at [[Massachusetts Institute of Technology|MIT]] existed for "many years" before he got involved in 1971.<ref>{{ cite web | url = http://www.gnu.org/gnu/the-gnu-project.html | title = The GNU Project (essay) | accessdate = 2007-06-19 | quote = in 1971, I became part of a software-sharing community that had existed for many years }}</ref>
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".<ref>{{ cite book | title = [[Hackers: Heroes of the Computer Revolution]] | author = [[Steven Levy]] | isbn = 0-385-19195-2 }}</ref> According to [[Richard Stallman]], the software-sharing community at [[Massachusetts Institute of Technology|MIT]] existed for "many years" before he got involved in 1971.<ref>{{ cite web | url = http://www.gnu.org/gnu/the-gnu-project.html | title = The GNU Project (essay) | accessdate = 2007-06-19 | quote = in 1971, I became part of a software-sharing community that had existed for many years }}</ref> 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 [[Scientific method#Communication and community|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.<ref>[http://www.cozx.com/~dpitts/ibm7090.html Dave Pitts' IBM 7090 support]</ref>


The [[A-2 system]], developed at the [[UNIVAC|UNIVAC division of Remington Rand]] in 1953,<ref>{{ cite book | last=Ceruzzi | first=Paul | title=A History of Modern Computing | publisher=The MIT Press | year=1998 }}</ref> 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]].<ref>{{ cite web | title=Heresy & Heretical Open Source: A Heretic's Perspective | url=http://www.infoq.com/presentations/Heretical-Open-Source }}</ref>
The [[A-2 system]], developed at the [[UNIVAC|UNIVAC division of Remington Rand]] in 1953,<ref>{{ cite book | last=Ceruzzi | first=Paul | title=A History of Modern Computing | publisher=The MIT Press | year=1998 }}</ref> 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]].<ref>{{ cite web | title=Heresy & Heretical Open Source: A Heretic's Perspective | url=http://www.infoq.com/presentations/Heretical-Open-Source }}</ref>
Line 20: Line 20:
An [[IBM]] mainframe operating system, [[IBM Airline Control Program|Airline Control Program]] (ACP), from 1967 reportedly distributed its source code in a way very similar to the way free software is now.<ref>{{ cite web | url = http://www.itworld.com/print/75218 | title = An Abbreviated History of ACP, One of the Oldest Open Source Applications }}</ref> User groups such as that of the [[IBM 701]], called [[SHARE (computing)|SHARE]], and that of [[Digital Equipment Corporation]] (DEC), called [[DECUS]] were formed to facilitate the exchange of software.
An [[IBM]] mainframe operating system, [[IBM Airline Control Program|Airline Control Program]] (ACP), from 1967 reportedly distributed its source code in a way very similar to the way free software is now.<ref>{{ cite web | url = http://www.itworld.com/print/75218 | title = An Abbreviated History of ACP, One of the Oldest Open Source Applications }}</ref> User groups such as that of the [[IBM 701]], called [[SHARE (computing)|SHARE]], and that of [[Digital Equipment Corporation]] (DEC), called [[DECUS]] were formed to facilitate the exchange of software.


In the early 80's, the so-called ''DECUS tapes''<ref>{{cite web | url = http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/| title = The DECUS tapes }}</ref> were a unique way of worldwide transmission of free software. Operating systems were usually proprietary software, but numerous tools like the [[TECO (text editor)|Teco]] editor or [[Runoff (program)|Runoff]] or ''List'' (File Listing Utility) etc. were facilitating the user's life. These new ideas benefited to DEC which sometimes incorporated them in 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 to use a Unix-like system on Dec [[PDP-11]] (16 bits) and mostly on [[Vax]] (32 bits) running under the [[OpenVMS|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 codes.
In the early 80's, the so-called ''DECUS tapes''<ref>{{ cite web | url = http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/| title = The [[DECUS]] tapes }}</ref> were a unique way of worldwide transmission of free software. Operating systems were usually proprietary software, but numerous tools like the [[TECO (text editor)|Teco]] editor or [[Runoff (program)|Runoff]] or ''List'' (File Listing Utility) etc. were facilitating the user's life. These new ideas benefited to DEC which sometimes incorporated them in 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 to use a Unix-like system on Dec [[PDP-11]] (16 bits) and mostly on [[Vax]] (32 bits) running under the [[OpenVMS|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 codes.


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.
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.
Line 116: Line 116:
=== Microsoft's contributions to open source ===
=== 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]], and contributed them to the mainline kernel. Note that Hyper-V itself is not 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 contributed some [[Hyper-V]]-supporting patches to the Linux kernel, although Hyper-V itself is not open source. Microsoft's [[F Sharp (programming language)|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's [[F Sharp (programming language)|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.
Microsoft representatives have made regular appearances at various open source and Linux conferences for many years.
Line 174: Line 172:


== Recent developments ==
== Recent developments ==
{{Refimprove section|date=September 2013}}
{{Unreferenced section|date=January 2012}}
{{advert|date=December 2012}}
{{See also|Free software movement#Legislation}}
{{See also|Free software movement#Legislation}}


=== Use of Mac OS X ===
=== Distributed version control ===
[[Mac OS X]], which is not open source but contains some open source components, some of which are shared with Linux, has become a very popular operating system for free software users and developers, some of whom have switched from Linux to Mac OS X. This is viewed as unfortunate by some purists in the open source community, who would prefer people to use free operating systems such as Linux to get the full benefits of freedom for the whole software stack, and to contribute to improving the quality of those operating systems through the "many eyes make all bugs shallow" effect. However, it is worth noting that some key software components, such as [[bash (Unix shell)|bash]] (now the default [[shell (computing)|shell]] in Mac OS X), [[CUPS]], [[Samba (software)|Samba]], [[LLVM]], and [[WebKit]], are used on both Linux and Mac OS X (although LLVM is less commonly used than gcc), and a large proportion of free software applications, such as [[LibreOffice]], work on Mac OS X. Due to its contributions to some of these projects, [[Apple Inc.]] is a major contributor to the free software community.

There are a number of projects running on Mac OS X which seek to make it easier to install open source software on the operating system, such as [[Homebrew (package management software)|Homebrew]].

===Android (2008-)===
{{See also|Android#History|label 1 = Android (History)}}

In September 2008, Google released the first version of [[Android (operating system)|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.

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

===Chrome OS (2009-)===
Until recently, Linux was still a relatively uncommon choice of operating system for desktops and laptops. However, Google's [[Chromebook]]<nowiki/>s, running the open source [[Chrome OS]] which is based on Linux and is essentially a [[web browser]]-centric operating system, have captured 20-25% of the market in US laptops.<ref>{{Cite web|url = http://www.telegraph.co.uk/technology/google/10173494/Google-Chromebook-sales-soar-in-face-of-PC-decline.html|title = Google Chromebook sales soar in face of PC decline|accessdate = 3 September 2013|date = 11 July 2013|website = [[Daily Telegraph]]|last = Williams|first = Rhiannon}}</ref>
=== Distributed version control (c. 2005-) ===
{{advert|date=December 2012}}


The increasing popularity of open source [[distributed version control]] systems such as [[git (software)|git]] (created in 2005), and then 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 (software development)|fork]] their own copy of a repository with one click, and issue a pull request from the appropriate [[branching (software)|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.
The increasing popularity of open source [[distributed version control]] systems such as [[git (software)|git]] (created in 2005), and then 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 (software development)|fork]] their own copy of a repository with one click, and issue a pull request from the appropriate [[branching (software)|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.
Line 204: Line 188:
* [[History of software engineering]]
* [[History of software engineering]]
* [[List of formerly proprietary software]]
* [[List of formerly proprietary software]]
* [[WebOS]]
* [[OpenBSD timeline]]
* [[OpenBSD timeline]]



Revision as of 00:10, 4 September 2013

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 has 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][improper synthesis?]

Free software before 1983

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 reportedly distributed its source code in a way very similar to the way free software is now.[7] 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.

In the early 80's, the so-called DECUS tapes[8] 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 facilitating the user's life. These new ideas benefited to DEC which sometimes incorporated them in 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 to use a Unix-like system on Dec PDP-11 (16 bits) and mostly on Vax (32 bits) 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 codes.

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 an 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 70s and early 80s which continues to be used includes SPICE,[9] TeX (developed by Donald Knuth), and the X Window System.

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]

Online software sharing communities in the 80s

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

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.[14] 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.[15] 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.[16] A slightly updated version 2 was published in 1991. In 1989, some GNU developers formed the company Cygnus Solutions.[17] 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.[18] 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.[19]

Linux remains free software under the terms of the GNU GPL, and 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.[20]

Linux adoption grew among businesses and governments in the 1990s and 2000s.

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.

In the late 2000s, the vast majority of computers running a free BSD are those running Mac OS X (a proprietary operating system based on Darwin). The only major technology company using FreeBSD is Yahoo.

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[21] 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.[21] 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.[22]

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",[23] 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.[24] The Open Source Initiative was formed shortly thereafter.[21]

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

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

early X

X has become the de facto window system in desktop free software operating systems.

KDE was founded in 1996 by Matthias Ettrich. At the time, he was troubled by the inconsistencies in 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.[26]

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

Both KDE and GNOME now participate in freedesktop.org, an effort to standardize Unix desktop interoperability, although there is still competition between them.[28]

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 long since 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 contributed some Hyper-V-supporting patches to the Linux kernel, although 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 know 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.[29]

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.

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.[citation needed] 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).

Recent developments

Distributed version control

The increasing popularity of open source distributed version control systems such as git (created in 2005), and then 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[30]) 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.

See also

References

  1. ^ a b c d 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 19 June 2007. 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. ^ "The [[DECUS]] tapes". {{cite web}}: URL–wikilink conflict (help)
  9. ^ "A brief history of spice".
  10. ^ Fisher, Franklin M. (1983). IBM and the U.S. Data Processing Industry: An Economic History. Praeger. ISBN 0-03-063059-2. {{cite book}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)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. ^ De Bona, C., et al. Open Sources 2.0. O'Reilly, ISBN 0-596-00802-3.
  14. ^ "Talk transcript where Stallman tells the printer story".
  15. ^ "Transcript of Richard Stallman's Speech, 28 Oct 2002, at the International Lisp Conference". GNU Project. 28 October 2002. Retrieved 21 December 2008.
  16. ^ "GNU General Public License v1.0".
  17. ^ Michael Tiemann. "Future of Cygnus Solutions, An Entrepreneur's Account".
  18. ^ "Release notes for Linux kernel 0.12".
  19. ^ "A Brief History of Debian".
  20. ^ http://www.gnu.org/gnu/linux-and-gnu.html
  21. ^ a b c Tiemann, Michael (19 September 2006). "History of the OSI". Open Source Initiative. Retrieved 23 August 2008.
  22. ^ Muffatto, Moreno (2006). Open Source: A Multidisciplinary Approach. Imperial College Press. ISBN 1-86094-665-8.
  23. ^ Open Source Summit Linux Gazette. 1998.
  24. ^ Goodbye, "free software"; hello, "open source"
  25. ^ Richard Stallman. "Why Open Source Misses the Point".
  26. ^ Ettrich, Matthias (14 October 1996). "New Project: Kool Desktop Environment (KDE)". Newsgroupde.comp.os.linux.misc. 53tkvv$b4j@newsserv.zdv.uni-tuebingen.de. Retrieved 29 December 2006.
  27. ^ Richard Stallman (5 September 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Retrieved 9 September 2005.
  28. ^ A tale of two desktops
  29. ^ Ovide, Shira (16 April 2012). "Microsoft Dips Further into Open-Source Software". Wall Street Journal. Retrieved 17 April 2012.
  30. ^ "Forking with the Edit Button". GitHub blog. 26 April 2011. Retrieved 9 January 2012.

External links