Just let the GPL die of its own death, there are countless licenses out there that are much more reasonable.
I've worked at a lot of companies these past 20 years and in every single one of them, the GPL was simply banned. You were not allowed to touch any software that used that license, and sometimes, the ban extended to even more reasonable licenses like the LGPL.
And for good reasons.
These days, releasing a software with a GPL license is pretty much a guarantee that your code will never become popular because nobody with a sane mind and a minimal understanding of software licensing will want to touch it, let alone corporations.
For the record, I agree with you. I will personally avoid applying the GPL to my code, either by my own decision or because of code I am using, mostly because I want the freedom, both for myself and for those who might use my code, to release on iOS.
That being said, this doesn't seem to be about a company looking at the GPL and avoiding it. This looks like a company looking at the GPL, not complying with its restrictions, but using the code anyway.
I may not like the GPL, but if a fellow developer decides to use it, I will defend that right.
[edited to elaborate on my reasons for not using the GPL. See comments below]
>I will personally avoid applying the GPL to my own code, mostly because I want the freedom to release on iOS.
How does putting your code under the GPL prevent you, the copyright holder, from doing anything like releasing on the Apple App Store? The notion of infringing on your own copyright is just absurd.
It doesn't, but if I GPL my own iOS code, NO ONE will want to use it in an actual shipping iOS app of any significance. The GPL requires the resulting binary to be free of DRM, and the iOS App Store automatically and uniformly applies DRM to all downloads, free or paid. Thus, no iOS developer will use GPL code in their own app since it essentially gives the original copyright holder the power to have your app taken down.
So yeah, I could have made my point a little better. Here's some elaboration:
I will personally avoid applying the GPL, either by my own decision or because of code I am using, mostly because I want the freedom, both for myself and for those who might use my code, to release on iOS.
>It doesn't, but if I GPL my own iOS code, NO ONE will want to use it in an actual shipping iOS app of any significance.
I don't see how the proliferation of DRM-ridden iOS apps is a laudable goal for a free software project. If you want, you can sell exceptions to let other people to use your code in their apps. I don't particularly like the practice, but the net harm is much lower than if the program was released under a permissive license.
There was a dustup a while back between the developers of VLC and Apple. It's since been resolved, but the state of GPL code on the app store (knowing what we know about Apple's arbitrariness) is still murky.
If you take substantial contributions from other developers (which is presumably the reason you open sourced it), you won't be the sole copyright holder any more.
As long as the Linux kernel exists, the GPL won't die. As long as cooperation want to use Linux, they will touch GPL'd software. As long as you don't modify that software, there's no harm to the cooperation.
Besides, there's compelling reasons for companies to GPL software they code which doesn't overlap with their core business. If you happen to code a new testing framework because you need one, you can GPL it and profit from the community improving it. In that case you don't really care about adoption, you care about getting improvements back, which is the strength of the GPL. It's a great license for infrastructure code, just not for your main product.
> As long as the Linux kernel exists, the GPL won't die.
So the GPL is alive in the same sense that COBOL is alive: because there's still some software out there that uses it.
Great.
That's a pretty useless definition with a ridiculously low bar, though.
The simple truth is that hardly any new project created in the past ten years has picked the GPL. And just for that reason, it's dying. It will never be technically dead, but it's certainly dead from a practical standpoint.
Guess what friend -- GPL is not going to die no matter how much you and your short-sighted friends pray for it. It's survived other legal challenges before and it will survive this one too.
Your companies that "simply banned" GPL did so because they were too ignorant to bother to read it and understand it. Banning LGPL too proves the point.
Your claim that it's somehow not "sane" to use it betrays your own hostility and ignorance. Why don't you direct your anger at something actually evil, instead of a license that has done demonstrably good things for the world?
The good news is you pissed me off enough to get off my ass and donate. GPL Forever.
> Guess what friend -- GPL is not going to die no matter how much you and your short-sighted friends pray for it. It's survived other legal challenges before and it will survive this one too.
It's already pretty much dead, hardly any project uses it any more.
> Why don't you direct your anger at something actually evil, instead of a license that has done demonstrably good things for the world?
> The good news is you pissed me off enough to get off my ass and donate. GPL Forever.
Anger? You seem to be the one spittling at your keyboard right now. I don't really care much about this topic, I just avoid the GPL for my projects and it looks like I'm not the only one.
Sorry I made you angry, it's really not worth getting yourself upset about.
> It's already pretty much dead, hardly any project uses it any more.
Hahahaha ! Almost every single device you own or will own will include GPL code, from your phone to every television to (soon) your light switches and light bulbs.
After the world ends, the only thing still alive will be GPL licensed Linux kernels running robots (assuming that's not after the int64_t time_t wrap time :-).
Because the GPL restricts the freedom of anyone who incorporates your code.
Pick Apache or a BSD license, you have the same guarantees of access to the source code and you're not restricting the freedom of people using your code.
You have some guarantees of access to the present source code (and as jdjb points out, not necessarily), but you're certainly not guaranteed access to changes made in the future by that or other parties like the GPL does. That's the whole point of copyleft and why I prefer it, I don't want to worry if I'll be able to access the features and fixes that will be made by others or if I will be left in the dust. And fair's fair, if you benefited from the work made by others then it's only fair to them to benefit from yours.
Maybe I'm mistaken, but I have the feeling that many -of course, not all and I'm not saying that you do- think that their precious code is so amazing and it will give so much competitive advantage that they need to leave open the option for a closed source version that will make them rich, and that's why they defend "freer" licenses very passionately. Newsflash, it almost surely -like 99,99%- won't happen.
This is completely wrong. Purchasing a product that contains code licensed under the BSD license does not ensure you get access to the source (unmodified or otherwise). It is the biggest difference between the GPL and BSD license.
All the BSD license ensures is that if they distribute the code they have to retain things like author retribution.
The freedom to profit from code in the same way as the author. Oracle, for one, has done marvelous things in ensuring that their JVM is the only one that people use by GPLing it and convincing IBM to stop contributing to the more open Apache Harmony project. Additionally, the same enterprise can do things with MySQL that no other vendor can, again putting other entities at a distinct disadvantage. The GPL is very weaponizeable if you want to ensure competitors are always a step behind you.
I don't know about the JVM, but what you mention about MySQL has to do not strictly with the GPL but with it being dual licensed (GPL and propietary) and as a result many Linux distributions like Red Hat, OpenSUSE, Fedora and Arch decided to make MariaDB -which is only GPL, compatible with MySQL and has more features- the default and it's readily available in most -if not all- distros, Windows and Mac OS X. So I would take the part of "competitors always a step behind you" with a very big grain of salt.
How is Apache Harmony more open? Easier to get in extensions without going through all the committees? You can do that with a fork of the OpenJDK too, nothing in the GPL preventing that.
As for MySQL, I don't see how the existence of a proprietary version of MySQL is somehow the GPL's fault. The users would be even more at a disadvantage if the proprietary version was the only one that existed and there was no free version, so the existence of the GPL version is a net benefit for everyone.
Not that it's a particularly good idea to buy a proprietary license or even contribute code to Oracle. PostgreSQL will treat you much more fairly. It doesn't require copyright attribution from their contributors, it's governed by a 501(c)(3) charity in the US and a similar non-profit in the EU rather than a company that only looks out for itself.
There is nothing wrong with making a profit with software, but signing an expensive restrictive EULA for a database is just a bad deal, whether you're a small startup or a major corporation.
It doesn't even do that. I profit plenty from others' GPL-licensed effort. The difference is I don't feel entitled to restrict others from profiting from the effort that went into creating the combined work.
If your goal is simply to get your code used by other people and corporations, under virtually no restriction with what they do with it, then the GPL is not a good choice.
If your goal is to let others use your code for the greater benefit of everyone that uses your code, then the GPL enforces that (at least to the extent it can be reasonably enforced).
Incorrect. Because a lot of others can't use your code for greater benefit of everyone because it's GPL. Your code is open source, regardless of the derivative work. GPL is about forcing other developers' to release their code in order to use your code.
GPL is about ensuring that all users of the code, both developers and end users, receive the same freedoms that the authors of any derivative work had.
But just as the GPL author has the freedom to make their code available, another author should be able to choose not to make their own code available. Again, this has nothing to do with freedom, this has to do with imposing your personal beliefs on others.
Yes, the other author has the ability to choose to not open source their code. But they absolutely do not have the choice to not abide by whatever license was applied to the libraries and original works they are building from.
The freedoms awarded by the GPL are not intended for the authors of the derivative works but for everyone else. The restrictions in place only prevent the author of the derived work from restricting everyone else.
Lawyers pretty much freak out over it if there's even a hint of using GPL software in a product. Not so much for tools, etc, but they get pretty adamant about it in stuff that touches the product code (this is admittedly vague) in my experience. I won't touch the stuff for commercial use, personally. Not once in 10 years have I not been able to find a suitable non-GPL project that did the same thing as the GPL code to meet my needs. In my opinion, using GPL is a pretty solid way to stifle a project. YMMV.
Well it is pretty much copyright judo. As such, most copyright lawyers can't just apply boilerplate to it and call it a day. So for them it is easier to recommend to not touch it than try to get to grips with what it is actually trying to accomplish.
I don't pretend to understand the subtleties of the license. All I know is the lawyers say "don't use it" and if I see it, I move on. Many others do this as well, and it can't be good for those projects.
It's just not worth a conversation in every case I've run across.
But that's perfectly OK and working as intended. I mean, if you want to distribute a closed source product, then you're working against what the FSF and GPL were created for, and it's wise to stay away from them. Remember, free software doesn't measure its success by the number of corporations that choose their code to use in closed source products, but by the amount of freedom it gives to its users (not just the developers). Having corporations use GPL code in their products is great but not the main objective.
+1 If you want your code to be used you need to use a less restrictive license and trust organisations and their developers to do the right thing. Open sourcing everything is not always the best solution and if you force them to open source their changes the chances are you're going to get some internal branch open sourced hidden on some corporate site somewhere, that's not going to give anything back to the community because somebody is going to have to pull those changes back and support them. If you want to build quality OSS then you need to engage the development community, not put a gun to their head and force them to open source.
Lots of companies open source their products under the AGPL with a commercial license they sell. This allows them to say their products are 'open source' and look good, but in reality it hampers their own product. If I wanted to commercialise that product and make changes, I can open source the changes, but I won't sign the original companies CLA which means they can't take my code and use it in their commercial version.
This lawsuit will be interesting though, as it will probably set a precedent on how you can use GPL software in commercial software.
The worse thing is that when one of the developers tried to write a non-GPL version of BusyBox they were criticised for "taking away the only relevant tool for copyright enforcement of the Software Freedom Conservancy group" - they're as bad as patent trolls.
> These days, releasing a software with a GPL license is pretty much a guarantee that your code will never become popular because nobody with a sane mind and a minimal understanding of software licensing will want to touch it, let alone corporations.
I've worked at a lot of companies these past 20 years and in every single one of them, the GPL was simply banned. You were not allowed to touch any software that used that license, and sometimes, the ban extended to even more reasonable licenses like the LGPL.
And for good reasons.
These days, releasing a software with a GPL license is pretty much a guarantee that your code will never become popular because nobody with a sane mind and a minimal understanding of software licensing will want to touch it, let alone corporations.