The Open Source concept is not new, and has been studied and researched by professionals and by the academia for quite a while. Open Source software products are the outcome of collaboration and cooperation of individuals programmers from all over the world, who gather in communities. The communities are non-profit organizations that distribute and support their software without any charge. The term Open Source, also referred as Free Software, constitutes the main concept of the Open Source movement, which believes that the user must have the rights to use, modify or redistribute the software as he wishes, while granting the same rights to the users of his derivative work or redistribution. The term “Free” is referred as “Free Speech” and not “Free Beer”.
Nowadays, Open Source software is widely used by for-profit organizations. In this article, I will provide an overview of the most used Open Source Licenses, the rights that they grant, and the obligations they require.
There are two main Open Source organizations that support the Free/Open Source concept:
- The Free Software Foundation – Was founded in 1985 and promotes the idea of the freedom for the users, to use, modify, copy and redistribute the software without restrictions.
- The Open Source Initiative – Was founded in 1998, and agrees with the general concept of FSF, but believes that the cause of free software is about collaboration and creation of better software for everyone.
Open Source Licenses
- GNU General Public License: The most used and common open source license available. The GNU GPL is the most restrictive license available today, and it has introduced the “Copyleft” concept, where rights that were usually reserved by commercial firms are now granted to the users. The GNU GPL license grants the users the right to; retrieve the source code, modify it, copy it, build upon it a new product and redistribute it, freely. On the other hand, the GNU GPL does not allow the user to change the license terms, and requires that any derivative work or redistribution must retain the original license terms. Moreover, the GNU GPL does not allow mixing proprietary code (private software that is not free) with a GPL licensed software, meaning that any private changes to a GPL software, or usage by a other proprietary code is prohibited. In this case, the GPL license has a “Viral” property that “infects” any other piece of software which uses a GPL licensed software, with the GPL license. In other words, any software that links with, or adds functionality to a GPL licensed software must be licensed with GPL. The GPL also discourages software patents in this way. The GPL allows the distribution of proprietary software and GPL software in the same media. The most common open source project that is licensed with GPL is the Linux operating system.
- GNU Lesser General Public License: This is a weaker version of GPL, that is usually used by libraries. The license is similar to the GPL, with the only exception that it allows to link against it without forcing the linked code to be released under the GPL or compatible license. It also requires that a downstream user be able to link it against a newer version of the library (say, one with bug fixes). This means that you either have to dynamically link it, or provide object files for your proprietary code if you statically link it. In other words, proprietary code can use and call functions that are provided by an LGPL licensed software without the “viral” effect. A common open source project that is licensed with LGPL is the uClibc library.
- Barkley Software Distribution License: Another widely used type of license is the BSD license, which was first used by the Barkley University. This license, with some minor modifications from the original license, is the most permissive license available. Similarly to GPL, it allows the user to use, modify and redistribute the software. But unlike the GPL, any derivative work could remain private, and it is possible to mix proprietary code with the BSD licensed code. The only requirement this license has is to give the credit to the original authors of the software. The main concept of this license was born from the fact the in the 90′s, many software projects were funded by the US government, so you can actually consider the software as if it is owned by the public. Some open source software that use BSD-style license add some more requirements from the user, such as the prohibition to use the software name as a means to promote a derivative software product.
- Massachusetts Institute of Technology License: Another permissive license, similar license to the BSD license.
- Artistic License: The Artistic license was originally developed and used by the perl project, and is commercially oriented. The license allows to keep modifications as private, but prohibits to sell the software, unless it is bundled with a bigger software package.
- Netscape PL/Mozilla PL: The NPL/MPL licenses were developed in 1998 by the Netscape corporation, and present a trade-off approach between the restrictive GPL and the permissive BSD. Similarly to GPL, they grant the users the freedom to use , modify and redistribute the software while retaining the original license, and similarly to BSD, they permit mixing and usage of proprietary software. The NPL has another special property that gave Netscape extra privileges over derivative work. It allowed Netscape to reuse an open source derivative work, modify it privately and sell it. Of course, this license was not very popular due to the fact the communities felt that Netscape was going to harvest their efforts for its business. The MPL license, which does not contain this property is more popular nowadays.
- CreativeCommons License: A rather new type of license that was developed in order to protect any type of work (text, pictures, music, code) while granting some rights to the users and reserving some rights to the owner. The license has a few flavors where the owner of the work can decide which right to grant, and which right to reserve, such as allowing or disallowing redistribution, modification and commercial use.
Misconceptions about other Licenses
There are other types of licenses that are used by software authors, which are not considered to be Open Source licenses, due to the fact that they lack one or more properties of the Open Source requirements:
- Public Domain: Public domain license is not an open source license. Indeed, every user can obtain, modify and redistribute the code, but since the owner has waived his rights on the software, any other user can keep the changes private and even sell the software. Therefore, public domain software is not considered as open source.
- Freeware: Freewares are usually provided in the binary form only, without access to the source code. Therefore, freeware software is not considered as open source.
- Shareware: Shareware are usually provided in the binary form only. Furthermore, users of Shareware are required to pay some amount of money to the author, otherwise, its function is limited. Therefore, freeware software is not considered as open source.
Warranty and Liability
When a commercial firm or a private user wishes to use an open source software, they must be aware that the software comes AS-IS, with no warranty or liability, unlike proprietary, of-the-shelf software, which is provided with some kind of warranty. The authors and contributors are not liable for any of kind of damage that may rise from the usage of the software.
- The Free Software Organization: http://www.fsf.org/
- The Open Source Initiative: http://www.opensource.org/
- GNU Licenses: http://www.gnu.org/licenses/
|Check out the ads, there could be something that may interest you there. The ads revenue helps me to pay for the domain and storage.|