You are here

Open source software

9 September, 2015 - 12:21

Programmers typically write programs in a programming language. This is called the source program. The source program is compiled (translated) into a machine-language object program that the user’s computer can execute.

Commercial software companies generally distribute only the object program along with a license to use it on a single computer. The source program is a trade secret.

With open source software, source and object code are publicly available at no cost, and programmers making modifications or improvements often feed them back to the community.

While sharing of open source software dates back to the batch processing era, the practice has thrived on the Internet platform. 1 The culture of the academic and research community which developed the Internet was conducive to sharing. The Internet also eliminated the cost of software distribution and enabled programmers to form a community around an open source project and communicate with each other.

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 many Web sites, for example Google or Yahoo, run on open source software. The Linux operating system is perhaps the most significant open source program. Linux has undergone continuous improvement since its launch, and is now found on everything from large mainframe computers to cell phones.

In 1991, while he was a student in Finland, Linus Torvalds posted the first version of Linux on the Internet. The email announcing its availability ends with the line “Any suggestions are welcome, but I won't promise I'll implement them :-)”. In keeping with the last sentence of his announcement, Torvalds has retained editorial control of Linux. This is typical of open source projects. One person is often in control, with a relatively small group of active developers contributing significant upgrades and extensions. A greater number find and correct errors. Some people do this as part of their work, 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.

Internet resource:

Perspectives on Free and Open Source Software, edited by Joseph Feller, Brian Fitzgerald, Scott A. Hissam and Karim R. Lakhani, is an excellent anthology on open source software. There are 24 chapters from a well-known group of authors on a wide variety of topics. You can download the book from http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=11216&mode=toc or purchase a printed copy.

Many open source projects are coordinated through online repositories like Sourceforge. Sourceforge hosts over 140,000 open source projects. Project pages allow for downloads of source and object programs, documentation, bug reports, feature requests, and many facilities for enhancing communication among the programmers.