My thoughts on GPL vs. permissive licenses
My thoughts on GPL vs. permissive licenses
I'm a very much pro free software person and I used to think that GPL is basically the only possible option when it comes to benefits for free software (and not commercial use), but I've recently realised this question is actually much more ambiguous.
I think there are two sides to this issue:
- GPL forces all contributions to stay open-source which prevents commercialisation* of FOSS projects, but also causes possible interference of corporate software design philosophy and all kinds of commercial decisions, if contributions come from companies.
- MIT-like permissive licenses, on the other hand, easily allow for making proprietary forks, which, however, separates commercial work from the rest of the project, therefore making the project more likely to stay free both of corporate influence and in general.
So it boils down to the fact, that in my opinion what makes free software free is not only the way it's distributed but also the whole philosophy behind it: centralisation vs. decentralisation, passive consumer vs. co-developper role of the user etc. And this is where things start to be a bit controversial.
What do you think?
*UPD: wrong word. I mean close-sourcing and turning into a profitable product instead of something that fulfils your needs
Gpl doesn't prevent monetisation/commercialisation. Many popular devs just choose not to.
You can also dual license, providing another license for companies that wish not to publish their code for a goal project.
I don't comprehend your reasoning of MIT projects staying free from corporate influence. There are lots of MIT projects that are carried by companies.
You can commercialize GPL projects, but good luck getting people to pay that much for a project they could so easily fork. The best you could do is $20 per iso file, but even then that's only if you've got a lot of cultural sway and that'd disappear the moment you start paywalling things.
Companies like Red Hat, OpenSUSE, and Canonical charge for tech support, which I think is the most effective way to earn money off FOSS software but doesn't really encourage development so much as brand recognition.
The point is to sell a license which allows inclusion in proprietary applications. Your target aren't end-users, but corporations that want to use your project.
I have never understood this fork argument. All it takes to make it work is a clear division for the project.
If you want to make something, and it requires modification of the source for a GPL project you want to include, why not contribute that back to the source? Then keep anything that isn't a modification of that piece of your project separately, and license it appropriately. It's practically as simple as maintaining a submodule.
I'd like to believe this is purely a communication issue, but I suspect it's more likely conflated with being a USP and argued as a potential liability.
These wasteful practices of 're-writing and not-cloning' are facilitated by a total lack of accountability for security on closed source commercialised project. I know I wouldn't be maintaining an analogue of a project if there were available security updates from upstream.
I can tell you about a project I was working on at a previous job.
There were open source kicad files for a thing we needed. We wanted to modify it slightly and then include it in our finished product and also offer it individually for tinkerers or as a replacement part. But they were licensed under GPL3.
Because of the license, instead of contributing some improvements to the existing prpject, our engineers were instructed to just look at it and learn from it and then do a completely new internal project from scratch. They were told to make sure it could not be detected as a derivative and never use the existing files. And then to include our planned improvements. Just so that we could avoid licensing it as GPL3 and were free to do it however we wanted.
So the end result is, a new proprietary thing got created, the company got money, the customers don't get the source, the existing open source project got no contributions, even though it got exploited in a sense. There were other MIT licensed (and other licenses) projects where we have just contributed instead.
Don't ask me why exactly the management/legal was so against GPL3. I'm not really into understanding it deeply, but my takeaway from this is similar to OP.
"How dare my neighbor put a fence around his pool! I tell you, ever since he did that, my kids can't swim there and we've had to figure out something else to do."
Was this done according to proper clean-room design principles? If so, then imo the GPL is still working as intended. The company had to spend a fuckton of money and time getting one engineer to read the source and describe what was done to other engineers, and then ensure that one engineer never ever worked on the project again.
If they didn't do that then they violated the GPL and someone should report them to the SFLC.
Interesting! I think having any code licensed under GPL could cause a cascading effect of having to open source even more code, whereas with MIT you can just stop making it open at any point
Dual license seems great. Mit for any not monetized code, if you want to monetize it that's fine, but since you depend on the work of open sources devs, then you need to pay for a license
The more I read replies under my post, the more I understand how little I know lol Pay for a license to monetize open source code? Which one of GPL and MIT allows that?
A great example of this is paid Blender add-ons. I love the concept that I can pay for software and not only have a perpetual license and free updates forever (usually), but also get the source code. I often call add-on operators from my own Python pipeline code for further automation, so being able to look at the source helps.
It’s definitely worth paying and supporting the devs as opposed to finding a copy online where someone has “exercised their GPL right to distribute”, because it’s usually an older version and you can’t ask the dev for help. A lot of add-ons also have assets that are copyrighted and can’t be distributed freely. Outside of Blender, most graphics software is closed-source and subscription-only. Those greedy bastards can all fuck off, and I’ll give my money to decent human beings instead.
Sorry, I used a wrong word there. I meant closing the source code and turning the project into a product, aiming commercial profits instead of fulfilling users' needs.
Hmm, didn't think of it... But doesn't it defeat the GPL's purpose of preventing closing the source code?
Okay, my experience with MIT is probably too limited, never heard of projects like that. But why do those companies publish their source code? Aren't they loosing profits?
Anyway, my point was about projects that are started by enthusiasts and then, as they grow popular, receive a lot of contributions from companies, which (as I initially thought at least) would otherwise make them close sourced and so keep FOSS projects "clean". But yeah if companies have a reason to keep their contributions open source even they don't have to, I'm confused