Licenses are really important part of a project. Itâs one of those protector thatâll make sure no creation of one is used by another for self-profit without permission
Even though Licenses simple stuff but they can get overwhelming to choose while owning a growing/expanding project. And itâs more important when youâre an one man show & you project is open source. Of course, you can create your own licenses. But to save time you can use a free pre-created one
Hereâs a List of popular Free Licenses, their basic breakdown & compatibility:
1. MIT
Itâs basically like saying take my piece of code/project, do whatever you want (commercially/non-commercially) but donât blame me if anything goes wrong
Itâs the most favorite Open Source Software license & being used by many popular libraries, frameworks, organizations & applications
Hereâs the license
2. GNU General Public License (GPL) v3.0
Itâs mostly like MIT but instead of saying âdo whatever you wantâ it says âdo whatever you want but keep license term unchangedâ. GPL is one of the famous license for most of the open source project built on the convention & tradition of Unix & GNU. It can be seen mostly in Linux/Unix related projects
Itâs a great license but itâs also called an âinfectionâ as once you publish something under this license, other projects copying/forking this projects have to use this license or other licenses compatible with this license. Making every fork based of this license, it makes the license contagious. But itâs a great way to make the world more open & thatâs why itâs OpenSourceFoundationâs favorite license
You can view it here
3. Apache License 2.0
Created by Apache Software Foundation in 2004 for the community & their own services. It allows doing all the things with the software including commercial use but it strictly prohibits the use of the softwareâs name/trademark/logo
Itâs a great choice for organizations as it secures the trademark & name/logo usage without affecting the flexibility of use of the product/software/library
View it here
4. FreeBSD / BSD 2-Clause License
FreeBSD License or Simplified BSD License or BSD 2-Clause License is one of the popular licenses for OpenSource projects. Itâs super simple & quite similar to MIT. It just says, âdo whatever you want but donât blame me if anything goes wrong!â
Hereâs the license
5. New BSD License / BSD 3-Clause
Itâs similar to BSD 2-Clause License, but with a 3rd clause that prohibits others from using the name of the project or its contributors to promote derived products without written consent
Hereâs the license
6. Original/Old BSD License / BSD 4-Clause License* (not accepted in OSF)
The original BSD License. It was later updated as the BSD 2-Clause. It wasnât accepted by the the OpenSourceFoundation because of itâs advertisement related clause (Clause-3). Itâs like saying, âDo whatever you want but keep License unchanged/compatible & have to give me my creditsâ
Even though its outdated, it has quite a lot meaningful things to it. It can be potentially helpful for small or one man army projects as it secures the âcreditâ of the developer which is often neglected by most of the Open Source Licenses
Hereâs the license
7. Mozilla Public License
Created by the Mozilla Foundation for the community. Itâs a great license balancing both the open source & the proprietary perspective of a project. As such, it allows the integration of MPL-licensed code into proprietary codebases, as long as the MPL-licensed components remain accessible under the terms of the MPL. Itâs a middle ground between the permissive licenses & GPL licenses
Great choice for organizations/company which want to be as transparent as possible also keeping other super secret stuff veiled
View the license here
What to choose?
Itâs complicated. But one have to be careful while choosing licenses. If youâre fine to expose âeverythingâ you can. Or you can keep your trademark/logo/patent/credit restricted too
Here are some conditions to help differentiate & choose the correct license:
- If youâve a healthy job but want to serve the community in free time, Iâd encourage to choose the permissive licenses (MIT, BSD 2-Clause, Creative Commons)
- If youâre running an organization & need a bridge between OSS & proprietary, use MPL
- If itâs a non-profit OSS organization, use Apache-2.0/BSD 3-Clause
- If youâre an one man show & donât have a healthy job or a student, I highly encourage to use BSD 4-Clause or a similar one to keep your credit secure & make it easier to get a job. Also good luck & donât give upđ
In the end, Iâm nobody to tell what to choose or not. But Licenses play a really important role in the long run. Yeah, you can change it later (like me) but keeping the ground solid from the beginning is always better
Which oneâs my favorite? (Opinion)
Itâs the Original BSD/BSD 4-Clause License. But why?
If youâre an opensource contributor/developer you might be aware of the faker.js story. In case youâre donât know, hereâs a video explanation from my bud Jeff aka Fireship,
{% youtube R6S-b_k-ZKY %}
Most of the time OSS developer works in free-time. But there are many scenarios where that person remain jobless just to maintain the OpenSource Project. Sometimes itâs profitable (sponsorship) & sometimes itâs not
Everyone just uses those libraries where a very few contributes to the project. Thatâs not a problem, this is how open-source works, mostly. But the problem is when you use too much of that product & make profits but never payback nor give the credits
Iâm not saying, the user has to pay with $ money initially or at all but there are other ways to payback. Such as, contributing back, sharing the project or give credit in their own projects. It doesnât cost anything.
Its only a few lines for others but can be a life changing opportunity for the project owner/maintainer
After all, someoneâs helping you for nothing. At least, be grateful to that person & try help him/her back in his/her problems if youâve the ability
BSD 4-Clause makes it compulsory to give credits to the developer which is most of the time neglected. OpenSource doesnât mean only open. It means sharing & helping others too. But people are selfish (that included me too) & we canât change that. But if we try we can do anything & I guess itâs high time we give the proper credits to the proper credit-holder. And there is no shame in giving others their legal credits
âMega corporation, startup & consulting firms, all make tons of money on the shoulders of open source softwareâ ~ Jeff | Fireship
IMO, BSD 4-Clause License is now a great solution to these open source developer burn out problems. If itâs not maybe we should make Licenses that actually cares about developer credits similar to BSD 4-Clause but even better
Clause-3 of original BSD License:
At the end, this is all my opinion & personal thinking. Of course I canât be right always. Maybe there are way better solutions to this problem
Do more OSS projects and DO NOT BURN OUT & TAKE BREAKS
Social
Follow me on: