Open Source Software: A History

In the thirty years from 1970 to 2000, open source software (OSS) began as an assumption without a name or a clear alternative. It has evolved into a sophisticated movement that has produced some of the most stable and widely used software packages ever produced. This paper traces the evolution of three operating systems: GNU, Berkeley Software Distribution (BSD), and Linux, as well as the communities that have evolved with these systems and some of the commonly used software packages developed using the open source model. It also discusses some of the major figures in OSS, and defines both free and open source software. ********** Since 1998, the open source software (OSS) movement has become a revolution in software development. However, the revolution in this rapidly changing field can actually trace its roots back at least thirty years. OSS represents a different model of software distribution with which many are familiar. Typically in the PC era, computer software has been sold only as a finished product, otherwise called a precompiled binary, which is installed on a user's computer by copying files to appropriate directories or folders. Moving to a new computer platform (Windows to Macintosh, for example) usually requires the purchase of a new license. If the company goes out of business or discontinues support of a product, users of that product have no recourse. Bug fixes are completely dependent on the organization that sells the software. By contrast, OSS is software that is licensed to guarantee free access to the programming behind the precompiled binary, otherwise called the source code. This allows the user to install the software on a new platform without an additional purchase and to get support (or create a support mechanism) for a product whose creator no longer supports it. Those who are technically inclined can fix bugs themselves rather than waiting for someone else to do so. Generally there is a distribution mechanism, such as anonymous FTP, that allows one to obtain the source code, as well as precompiled binaries in some cases. There are also mechanisms for which one may pay a fee to obtain the software as well, such as on a CD-ROM or DVD, which may also include some technical support. A variety of licenses are used to ensure that the source code will remain available, wherever the code is actually used. To be clear, there are several things open source is not--it is not shareware, public-domain software, freeware, or software viewers and readers that are made freely available without access to source code. Shareware, whether or not one registers it and pays the registration fee, typically allows no access to the underlying source code. Unlike freeware and public-domain software, OSS is copyrighted and distributed with license terms designed to ensure that the source code will always be available. While a fee may be charged for the software's packaging, distribution, or support, the complete package needed to create files is included, not simply a portion needed to view files created elsewhere. The philosophy of open source is based on a variety of models which sometimes conflict; indeed it often seems there are as many philosophies and models for developing and managing OSS as there are major products. This article will review the development of several major open source projects and attempt to note philosophies of individual projects' creators and maintainers. The history of open source is closely tied to the history of the hacker culture, since hackers have largely sustained this movement. The term hacker is used here in the sense of one who is both a skilled professional programmer and a passionate hobbyist wishing to advance computer science, rather than the definition recently used by the popular press of a destructive system cracker. Eric Raymond's essay, "A Brief History of Hackerdom" gives an excellent overview of the development of the hacker culture. …