What is open source software? What’s so great about it? What is the history of open source software? These are all questions which I hope to answer in this article. I should start by defining open source software. The GNU project, a group that promotes open source software and made many of the system components behind the GNU/Linux operating system, defines open source or “free” software as being free as in “freedom” rather than free as in “free food.” There are four specific freedoms which GNU outlines. The freedom to run and use the program as you want; the freedom to copy and redistribute the program; the freedom to audit and change the source code; and the freedom to redistribute your edited version of the program.
So why are these freedoms important? What do they do for software? What’s so great about open source? I will address these questions next. The freedoms to access, change, and redistribute source code, the programs, and configurations of a piece of software have a significant effect on how software is developed. For one thing, the availability of a software’s source code expedites bug fixing, since users can search for them in the code, rather than just the developers, which is an example of how open source software is community driven. Savvy users can report bugs much better by having access to source code, since bug reports will be by nature, less detailed, if a user only has access to the software’s user environment. Thus, even if you don’t know how to program, you will still experience the benefit from the more effective bug fixing process of open source software. Another benefit of freely available source code is transparency; users can know the contents of their software. Thus, they can tell if a program is invading their privacy, for example. The ability for one to edit and redistribute the source code of a program further contributes to the community of open source software, discussed earlier. Finally, the freedom to run software as one pleases ensures that the user is in control of their software experience.
Finally, we have the history of open source software. Our story begins in 1983, with MIT graduate and open source software advocate Richard Stallman’s announcement of the GNU project. The stated goal of GNU was to create an operating system entirely comprised of free and open source software, using the older UNIX operating systems as a design model for what the end product should look like. (If you’re reading this article on a school computer, then you’re using a GNU based operating system). At the time, the concept of open source software had existed, but the market was dominated by proprietary, closed source software, and there were no open source operating systems. If one wanted to use a computer, they would be using closed source software, hence defining the goal of making an open source OS as an alternative. In 1991, Finnish computer science student Linus Torvalds created the Linux kernel, a part of an operating system that assigns memory to system processes. By 1992, Linux was licensed as open source software, and was later incorporated into GNU’s as the Kernel, adding the finishing piece to what we now know as GNU/Linux. In 1998, the Open Source Initiative (OSI) was founded by Eric Raymond and Bruce Perens. The group became a major industry advocate of open source software, and even coined the term, which replaced the previously used term, “free software.” It should be noted that this is a very brief overview of the history of open source software. The concept of developers sharing their knowledge and programs dates back to the early days of computing, and the complete history would be far too much to cover in this article.