Licences In Open Source - Part 1


Introduction
When an open source project is created and considered useful for the public, due to the nature of the ecosystem, there would always be the occurrence of people and/or organizations wanting to adopt it, and refine it to a version that suits their own use case.
For example, Android being built on Linux, and Github being built on Git.
The thing is, sometimes creators of these open source projects can be open to these extra modifications or adaptations, and sometimes not so much. In some ways, open-source licenses are the “rules” or “guardrails” creators put around their projects to determine just how much liberty others can have with these projects.
Creating open source projects involves long-term thinking about how you would like future users to interact with your project or the ways you would love to protect or safeguard them. Sometimes, legally, sometimes out of personal interest, and sometimes a mixture of both.
Licensing in open source enables interested parties to understand how to work with your project, and the expectations you have of them.
What are Licenses?
According to OSI, “open source licenses are licenses that comply with the Open Source Definition – in brief, they allow software to be freely used, modified, and shared”.
However, not all licenses are created equal. There are many types, and each comes with its own set of conditions. These licenses are typically grouped into two main categories:
Copyleft licenses, which require derivatives to remain open source
- This can be subdivided into strong or weak copy-left.
Permissive licenses, which allow derivatives to become proprietary
There are also licenses like Creative Commons (CC) that apply to non-software content like documentation, artwork, and learning materials.
Categories and Examples of Open Source Licenses
Copyleft Licenses
These ensure that derivatives of your project stay open source. Some examples include:
GNU General Public License (GNU GPL)
GNU Affero General Public License (AGPL)
GNU Lesser General Public License (LGPL)
Permissive Licenses
These allow commercial or proprietary use with fewer restrictions:
MIT License
Apache License 2.0
BSD License
Creative Commons Licenses (for non-code assets)
CC BY
CC BY-SA
CC BY-NC
CC BY-NC-SA
CC BY-ND
CC BY-NC-ND
Each of these licenses would be broken down in a second part article, including examples of how to apply them to your projects.
I’ll explain each license listed above, show how they work, and walk you through sample language you can use in your README or LICENSE file.
Whether you want your work to remain freely available forever or be adapted into commercial tools, Part 2 shares more to enable you to make informed, intentional decisions.
Subscribe to my newsletter
Read articles from Precious Onyewuchi directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
