Since the 1950s programmers have formed users groups and shared code. For example, users of IBM computers formed a user's group called SHARE in 1955. As its name suggests, programmers contributed software to a common library which was shared by all. To share a program, one had to make a copy of a deck of punched cards or a 9-inch reel of magnetic tape.
The Internet was developed in the academic and research community, which also valued sharing of ideas and information. Furthermore, the Internet simplified the mechanics of sharing software. It was no longer necessary to ship a card deck, tape or floppy disk containing a program; it could be downloaded from an FTP server.
While the Internet is now open to commercial activity (it was not at first), open source software is still widely used. Users may not realize it, but most Web sites are based on open source software. Every time you use Google or Yahoo or most other Web sites, you are using open source software. Apache is the most popular Web server on the Internet. It leads number two Microsoft 51 to 36% according to the Netcraft survey. MySQL claims to be the "worlds most popular database" (though Microsoft Access must have sold more copies as part of Office), and these are running on top Linux, an open source operating system.
The Linux operating system is the most significant threat to Microsoft's Windows monopoly. Linux has undergone continuous improvement by open source debuggers and programmers since it was launched with this 1991 posting to a network news group by a Finnish student, Linus Torvalds:
Message-ID: 1991Aug25.205708.9541@klaava.helsinki.fi From: torvalds@klaava.helsinki.fi (Linus Benedict Torvalds) To: Newsgroups: comp.os.inix Subject: What would you like to see most in minix? Summary: small poll for my new operating system Hello everybody out there using minix-I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386 (486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat Any suggestions are welcome, but I won't promise I'll implement them :-) Linus
In keeping with the last sentence of his announcement, Linus has retained editorial control of Linux. This is typical of open source projects. One person is usually in control, and a relatively small group of active developers contribute significant upgrades and extensions. A greater number find and correct errors. Some people do this on company time (for instance developers at IBM or Hewlett Packard) and others as a hobby.
Perhaps the greatest contribution of the open source community is not its software, but the culture and organizational openness it engenders. Open source projects and management techniques have spurred the need for applications that support collaboration and have facilitated the creation of distributed organizations.
A good way to get a sense of Linux and the vast array of open source application and utility software is to download Knoppix. Knoppix is a CD image that contains Linux and many application programs. The CD is bootable, so you can use it on a Windows PC without changing your configuration or installing anything.
Note that Linus refers to "Minix." Linux is a descendent of Minix, an open source version of UNIX which Andrew Tannenbaum developed for teaching an operating systems class. It was originally distributed commercially along with a textbook.
For open source news and links to software, check the Open Source Initiative and Open Source Developers Network.
You will find a list of commercial packages with recommended open source alternatives here.
Followup: