(Image by Annett Zobel from Pixabay)
Recently, i made a quick OK Http server for feature i was developing in my work, and had to do a little research (just read the help that Github gives when creating a repo) about licenses.
And then it came to me: Which license do you use/prefer for your open source projects? Why?
I choosed MIT. They said that it's less restrictive, but i need to investigate even more hahaha
Latest comments (16)
It depends from the project purpose, currently I use:
Not that I'd recommend it, but the most permissive license is the Cypherpunks Anti-License
I like MIT, but I am at the same time growing more and more fond of the hippocratic license as it also emphasizes that the source code can't be used in violation of UNs universal declaration of human rights.
I would say each License has a purpose, and you should take that into account choosing some for a project.
I'm gonna try to summary the main Licenses I used depending on the purpose of the project.
When:
Why do I try to contribute to GPL alike licensed projects? Because I want my work to be for the communty and protected to be taken advantage of and not being contributed back.
I think Apache-2.0 is more popular for companies that aim to drive their business by open-source product. Apache-2.0 only restricts that you cannot reuse the brand. I think...
When I use MIT? for some libraries and minnor projects like Katas. Software that I will not dedicate a lot of effort, that I don't aim to create a community around it, or that I am not aiming to get a lot of adoption to then create a business around it.
My 5 cents about licensing, of course it's quite opinionated and there are more purposes. I just tried to give an inside of what I think, I might be wrong!!!, that those licenses can be used for.
I hope it helped you
^_^Depends on the project.
If I intend for something to have a mostly educational tilt, I lean on the Mozilla Public Licence 2.0. The boundaries are at the file, so if someone else wants to incorporate the MPL-licensed stuff into their stuff, the whole does not need a relicensing; only the MPL-licensed parts have to remain that way and distributed under those terms.
Otherwise, I prefer the three-clause BSD licence. I warmed up to this after I started getting involved with the BSD communities, where there is very much a don't-reinvent-the-wheel attitude; the BSD licences allow for that sort of thinking on a wider scale. Unlike the operating system projects, however, I actually have the energy to respond and want to know who wants to use my or the project's name in derivative works. Again, the boundaries are at the file.
For ham radio stuff, GPLv2 for any user-facing (ie not a library) stuff. We continue to have problems (although fading, thankfully) of code and implementations released under proprietary terms in a community and service where openness is required by regulation. Libraries, see above.
Most of my projects are under the BSD 3-clause license. It's pretty close to MIT, but with the additional that the name cannot be used without consent (hard forks must be renamed).
However, for Orchid, a bigger project with more at stake, I chose LGPL 3.0. It's functionally GPL 3.0, but has a special exception for use as a library. So companies are free to distribute their apps which contain LGPL libraries without disclosing their source, unlike GPL. For me, this gives the project the protection and collaboration benefits of GPL from OSS consumers, while not scaring off business consumers.
MIT most of the time or BSD if I want credit when needed.
Oh, yesterday i landed in that page, and i can't remember how! but definitely it was super helpful! (specially the 'Bring your lawyer' part, in 'I don’t want to choose a license.')
Thanks for your reply!
Interesting, i never heard of that license! Why you prefer it over MIT?
Hey, thanks for your reply!
I tend to prefer Apache 2 as I would like attribution as well as protection from liability.
AGPL or GPL3.0 make businesses nervous. Like not even allow you to download it sometimes (if they don't have decent lawyers)!
That gets in the way of people adopting it, as businesses don't want to accidentally open source their secrets. It totally makes sense for something like dev.to to use AGPL but might prevent adoption for libraries that could be hidden away behind the scenes.
I don´t get why AGPL or GPLv3 could make them not allow to download software. Or I don't fully understood the license (i think the last is more feasible hahaha)
I think, in that cases, that one could just talk to the developer and try luck. If they deny you the open-sourcing, you could use an alternative. There are always many!
Thanks for your reply!
The problem is the AGPL and GPL3 force you to make your code available to anyone that consumes that service, whether that's a website or and API. This applies even if you're just using a library this license.
To mitigate this this risk, it's easier for companies to just not use AGPL or GPL3 open source products at all.