What is an Open Source License?
The simplest explanation is that an Open Source License is a type of license for computer software and other products that allows the source code, blueprint, or design to be used, modified, or shared under defined terms and conditions. Open Source does not mean the software is available to use, copy, modify, and distribute as desired. Depending on the type of open source license, you may be allowed to modify the source code to meet your needs or fix any issues. The license will determine the freedom you have with the software and its source code.
Non-commercial redistribution or modification of the source code for personal use is not considered when talking about Open Source Licenses. But as a developer and a user, you must definitely be aware of these open source licenses and about these usages. Stay with this article to get an idea about the most common licenses and how they all seek to protect both the authors and users of the software.
Different Open Source Licenses: Copyleft and Permissive
There are over 200 open source licenses out there, but generally, they all fall into two primary categories. Those are Permissive and Copyleft. In 2020 around 76% of open source software is based on Permissive licenses and 14% based on Copyleft licenses. (You will find out examples and use cases of both Permissive and Copyleft licenses below)
GNU General Public License (GPL)
Affero GPL (AGPL)
Lesser General Public License (LGPL)
Berkeley Source Distribution (BSD) License
Eclipse Public License (EPL)
Mozilla Public License (MPL)
Examples of Permissive and Copyleft licenses
Permissive licenses allow you to copy, modify, recombine, and redistribute the work with minimal restrictions. In 2020 around 76% of open source software is based on permissive licenses. Usually, users are only required to include “the original copyright notice” and “a copy of the license text” in the redistribution of the permissively licensed software.
The most popular Permissive open-source licenses are Apache, MIT, BSD.
1) Apache License
2) MIT License
3) Berkeley Source Distribution (BSD) License
Permissive License Use Cases
The recent trends show that over the years, software developers tend to use Permissive licenses over Copyleft licenses. As I mentioned before, in 2020, about 76% of open-source software use Permissive licenses while 14% use Copyleft licenses. There are many reasons to choose a Permissive license over a Copyleft license:
When considering the perspective of companies who are looking to exploit a code commercially, they usually prefer a permissive license over copyleft because under the permissive license they would be able to turn their derivative work into proprietary work and use it for commercial purposes. Their only obligation when using a Permissive license is to give credits to the original worker.
The Free Software Foundation (FSF) recommends using a Permissive license to the software which has less than 300 lines. So according to FSF recommendation, small software with a Permissive license attracts more developers than a Copyleft license.
Personally, I think if someone does not want to earn profit but wants to create valuable software, the best thing is to use a Permissive license.
Copyleft licenses also give you the same permissions as permissive licenses. But it requires you to release the complete work under a copyleft license. In other words, if you release a software library under a copyleft license(like GPL), and if someone else wants to use your software library with another proprietary library, they would not be allowed to do that. The GPL is required to build the entire program under the GPL license.
1) GNU General Public License (GPL)
- 1) You does not have rights to claim patents or copyright of the software. And moreover you are obligated to “display a copyright notice”, “disclaimer of warranty”, “intact GPL notices”, and “a copy of the GPL”.
- 2) You does not have rights to change the license or add additional terms and conditions.
- 3) You are under the reciprocity obligation. In other words, you are obligated to release the source code and all of the rights to modify and distribute the entire code.
Affero GPL (AGPL)
Copyleft License Use Cases
Currently, Permissive licenses are the most used license type in open-source software. But we can’t forget Copyleft license are also plays a vital role. The GPL family is considered as one of the most commonly used OSS licenses because as an example, the Linux kernel has also been developed using the Copyleft license.
If your company develops a program using Copyleft open source license and distributes the program, anyone would be able to modify and use it. But at any time the company can change those and those changes would then have to be made public. So a Copyleft license may be the best fit for your software if you:
Here I tried to give a basic explanation about the confusing open source licenses and tried to simplify a few open-source licenses among over 200 licenses. This is for educational purposes only and does your own research to find out what is the best open source license you should choose.
*Disclaimer: This post is not legal advice, it is for informational purposes only. If you need legal advice, you should consult with an attorney who has reviewed all relevant facts and applicable
References: snyk.io, fossa.com, whitesourcesoftware.com, tldrlegal.com, synopsys.com, castsoftware.com, apache.org, jakesden.com, choosealicense.com, wikipedia.org