by Josh Morse
Linux. Firefox. MySQL. Even casual computer users are familiar with some of these programs. Yet the open source licenses under which all three are released are often mysterious to even the most computer-savvy person. Today I hope to help clear up some misconceptions that surround open source software.
To understand open source software, it is important to understand the difference between an executable program, or binary, and its source code. Nearly all software that is purchased or downloaded is in binary form. This allows the software to be run on a computer. The code that was compiled into the binary is referred to as the program’s source code , and this code is usually written by internal company programmers. If other programmers were able to access the source code, they could modify it and compile it themselves, perhaps selling the new binary. As a result, companies like Microsoft zealously guard the code to Windows and other software they produce.
The aim of the open source movement, unlike the goals of Microsoft and other major software companies, is to spread their software’s source code and encourage others to modify it to suit their own needs. As a result, open source licenses, such as the General Public License (GPL), require that any software that is licensed as GPL and released must also have its source code available for download. This also applies to proprietary software that uses open source software, though the proprietary code only need be released if the open source software is made available to the public. For example, if a company uses Linux for its operating system to develop its own proprietary health care software (which we will call HealthCarePlus), they would not need to release the source code for HealthCarePlus, because Linux is only used internally. However, if the company used a copy of the open source MySQL database as part of their software package, they would need to release the source code for HealthCarePlus as well. In this way, companies are free to use open source software internally, but releasing it to clients or customers as part of a proprietary software solution means that the company’s commercial software must also be made open source. This helps encourage the idea of a “free exchange and improvement of software” that the open source movement was founded upon.
It should be noted that open source software does not have to be released for free. While most open source software is released for free since the source code must be made available, it is not a violation of the GPL to charge for the software and its code, as long as the source code does not cost more than the program binary. Many programs, like Linux, have free versions available, but offer enhanced versions with better customer support for a cost. Other software, such as MySQL, is released under a free open source license and a paid commercial license that gives customers the freedom to package MySQL with their own software without releasing their source. Programs like the Mozilla Foundation Firefox web browser relies on the monetary donations of users and the time donations of volunteer programmers. While such arrangements may seem to be a recipe for financial disaster, many companies have been able to survive and even prosper under open source arrangements. Regardless of how one feels about the open source model, it is here to stay, and the important questions for businesses to ask is “how can open source software help me?”
For more information on the General Public License and open source software in general, visit www.gnu.org