Open source software refers to computer programs whose underlying code has been made free and public so that users and volunteer programmers can modify them. All software is originally written in source code, a set of instructions for the computer that can be read and edited by human programmers. For source code to become finished software, it must be converted into machine language, which cannot be read or edited by people. Traditional software companies sell machine language software to customers, who cannot access the source code. Such software is sometimes called “closed source” software because the source code is “closed” to the public. With open source software, communities of volunteer programmers can share and modify the source code. When the program is ready for use, the source code can be converted to machine language and distributed freely. Well-known examples of open source software include the Linux operating system and the Mozilla Firefox Web browser.
Many people believe open source software has a number of advantages over closed source software in addition to often being available for free. For example, open source software users can make their own modifications or improvements, rather than waiting for repairs or upgrades from a software company. Also, large numbers of volunteer programmers can eliminate bugs (mistakes) from software more quickly than can the smaller teams employed by software companies.
Open source software also has some disadvantages. Many people feel that closed source software produced by a trusted software company is higher in quality, more reliable, and easier to use than open source software. Also, software companies can provide technical support and related services, which are generally not as available to users of open source software. A number of complicated legal issues surround the creation, distribution, and use of open source software.
Some software producers combine elements of open source and closed source software development. A software company might, for example, give away a free open source program and then sell related software tools that are not open source. Some companies sell distributions of open source software, standardized versions of the software already converted into machine language for easy installation and use.
The Finnish computer programmer Linus Torvalds became a pioneer of open source software after developing the Linux operating system. Torvalds made Linux and its source code available to the public, free of charge, over the Internet.
Principles used in the development of open source software have been adapted to products other than computer programs. Wikipedia, an open source encyclopedia, lets anyone with Web access edit articles. An effort called the Tropical Disease Initiative applies open source principles to medical research to fight such diseases as malaria.
See also Coding ; Computer language ; STEM education ; Torvalds, Linus .