The free / open source software movement has won more and more
supporters in the years of software development. Many people around
the world have renounced lot of money and spent their time and
valueable knowledge into unpaid activity, to create partially better
software than the commercial counterpart. Maybe the open source
community and their output is nowadays the only realistic competitor
to the monopoly of Microsoft. The Internet as it is today wouldn't be
imaginable without the "hacker community". Nearly every technical
aspect of it was developed in a worldwide collaborativly process. Its
quality and reliability wouldn't be imaginable, if not that many
individuals had contributed a detail.
This work wants to give a brief overview about the history of origins
of the open source movement, mentions the important aspects and gives
some examples of very successfull open source projects.
In the early days of computer science research, many researchers in academia and industrial domain made the source code of their experimental software available to researchers outside their own organization. [1] In the 1960's and 1970's a "hacker culture" was established in the U.S. computer science laboratories (Stanford, Berkeley, Carnegie Mellon and MIT). This small community of programmers took it for granted to share their improvements of software with the others. [2] Before the 70's also one of the world's biggest computer manufacturer IBM included the source code of the software delivered with their computer systems and embraced improvements made by their customers. [3]
In 1969 the first version of UNIX was developed at the AT&T Bell Telephone Laboratories. As one of the first the Berkely University decided to use this operating system for research purposes and also teaching programming. In this environment AT&T UNIX got enhanced more and more, also additional components were developed. This resulted in an own Berkely Software Distribution (BSD) of the AT&T UNIX. As the popularity of UNIX grew, AT&T realized that there was a potential business market for UNIX and released a commercial version called UNIX System V, which brougth negative effects about the free software community. [1]
Between 1970 and 1980 with the come of (affordable) microcomputers of IBM, Apple and Macintosh into the market it got common practice, to sell software independent from hardware and to protect it against competitors, so to make the software proprietary, which means to keep the source code as a secret. More and more hackers were hired away by proprietary software companies, the free software community was about to shrink.
It was Richard Stallman [4], a student at the Massachusetts Institute of Technoloy A.I. Laboratory, who should guarantee the continueing and the fortification of the free software movement. In the beginning of his study he began the development on Emacs (naturally in an open source environment), which is according to its definition an "extensible, customizable, self-documenting real-time display editor." [5] Not long ago, Emacs was described like "with Emacs you can do everything, expect making coffee". Even this description isn't legal anymore, since the frenchman Eric Marsden [6] wrote a module [10] with which you can submit a brew request to a RFC2324-compliant [7] coffee device inside Emacs (over the Hyper Text Coffee Control Protocol, or HTCPCP).
As commercial interests caused more and more software to become proprietary and inaccessible, Stallman developed a philosophical view that software should be free [8].
In an interview around 1999 he said: "I was faced with a choice. One: join the proprietary software world, sign the nondisclosure agreements and promise not to help my fellow hackers. Two: leave the computer field altogether. Or three, look for a way that a programmer could do something for the good. I asked myself, was there a program or programs I could write, so as to make a community possible again?" [9]
Stallman decided well and so he started in 1984 the GNU project (for "GNU's not UNIX"), which was aimed at creating a UNIX-compatible free operating system. What emerged from this effort was a lot of widely used software, like the already mentioned GNU Emacs, the GNU compiler collection (gcc), the debugger gdb, the GNU C library and more. [1]
To ensure, that this code would always be freely modifiable and distributable, he created the the GNU General Public Licence (GPL). It says in the preamble: "..., the GNU General Public License is intended to guarantee your freedom to share and change free software - to make sure the software is free for all its users." It's an important aspect, that free refers not to price, rather than freedom: "When we speak of free software, we are referring to freedom, not price. Our General Public License are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things." [11]
In 1985 Stallman founded the Free Software Foundation (FSF) [12], a non profit umbrella for free software developement, to promote the development of GNU and GPL related software. At the moment, there are 1.870 GNU packages listed in the free sofware directory [13], which started in 1999 also as a project of the FSF.
Until the 90's the only thing missing to complete the GNU operating system, was the heart of an operating system, the kernel. In 1989 Linus Torvalds, a student at the University of Helsinki fortunately starts to improve the Minix kernel, which was a small UNIX based kernel used for education purposes. He shared his work with the Internet community and several other programmers began to modify and tweak code, sending their improvements back to Torvalds for inclusion in the next release of the kernel. This should be the foundation stone for the formation of Linux, the nowadays most used freely operating system. Linux became the de facto kernel for the GNU operating system. [2]
Influenced by an essay "The Cathedral and the Bazaar" [14] published in 1997 by Eric Raymond, the man behind fetchmail (a widely used email forwarding utility) Netscape decided in 1998 in fact of the growing domination of Microsoft in the browser market, to open the source code of the Netscape Navigator.
Shortly afterward, Eric Raymond, Bruce Perens, a computer scientist, and Tim O'Reilly, founder and president of the computer book publisher O'Reilly, decided, that the free software community needed better marketing and formed the Open Source Initiative [15] to promote the benefits to the business community and form for the business adapted software licenses, but continuing to comply with the demands of the open source environment. [2] One of these revised licences is the Mozilla Public License [16], which has since become widely used. There arised until now many other open source licenses [17], all reviewed and approved by the OSI.
The open source defintion by OSI is definitely different from the FSF definition. Stallman says clearly, when he categorize kinds of software: "The term 'open source' software is used by some people to mean more or less the same thing as free software. However, their criteria are somewhat less strict; the have accepted some kinds of license restrictions that we have rejected as unacceptable. We prefer the term 'free software'." [18] I've not analysed the definitions or licenses in detail, to document this fact. This would go beyond the scope of this work.
The Mozilla project arised from the opening of the source code of the Netscape Navigator. An imense number of people all over the world helped to make the most compliant with existing standards browser in the browser market. The project also led to the formation of Bugzilla [20], a bug tracking system, which is meanwhile used for lot of other open source (and also commercial) projects for bug management.
KDE is a complex desktop environment
for UNIX workstations. It is one of the biggest open source non-profit
projects. It could be said, that it provides a larger functionality
than most common commercial desktop environments. There exist nearly
for every requirement an application based on KDE which could be
obtained in the most cases over the Internet by free.
The open source project OpenOffice
arised like Netscape Navigator also from the opening of the source code
of the proprietary software StarOffice by Sun. The mission statement
on openoffice.org says: "To
create, as a community, the leading international office
suite that will run on all major platforms and provide access
to all functionality and data through open-component based APIs
and an XML-based file format."
OpenOffice includes all useful components, which are usually included
in a commercial office package, like programs for word processing,
spreadsheets, presentations, drawings and more and it can be
obtained over the internet for all important platforms by free.
Gimp is an acronym for GNU Image
Manipulation Program. It is a freely distributed piece of software
suitable for such tasks as photo retoching, image composition and
image authoring. [23] It can be definitely
matched with Adobe Photoshop, the commercial leading Image
Manipulation program.
The Apache HTTP Server is an
open source project managed by the Apache
Software Foundation. [26] It is the most
used webserver in the world, the August 2002 Netcraft Web Server Survey [27] found that 63% of the web sites on the
Internet are using Apache. [25] It can be
asumed, that this fact is not a matter of coincidence. It is another
indication, that the open source community produces the most
qualitative, reliable and useful software.
The Free / Open Source unfolds the potential of creativity of
humankind and is an important movement against capitalism and the
monopolys of the big software companies. The so called "Halloween Papers" [28], an analysis by Microsoft of the dangers of open
source software for commercial interests, indicate that this fact was
already recognized by this companies, and they already set a course. Software patents [29],
which are already common practice in the USA, got now also a raised
issue in Europe. The introduction of these may would be the end of
many open source projects, since the possibility of copyright
infringements. It can be asumed, that the idea of software patents was
not raised by people writing free software.
Apart this worst scenario thinking optimistic, the open source
community hopefully continues expanding, achieving technical
revolutions and making good software which is intended to assist us,
not to make even more money.