Does GPL v3 Alienate Developers?
An anonymous reader writes "Via Wired, a blog post in which BMC Software's Whurley and Google's Greg Stein agree that the GPL v3 is currently on a path that will alienate developers. Stein has an interesting theory called 'license pressure' which is similar to 'pricing pressure'. 'Due to pressure from developers, all software is moving towards permissive licensing" translation, the GPL and developers are moving in opposite directions ... Developers care about the licenses on the software they use and incorporate into their projects, they like permissive licenses, and they will increasingly demand permissive licenses.'"
Because as a developer we can always choose. GPL2, 3, BSD, Mozilla, MIT whatever we want. We are the ones in control. It's the users that can get annoyed when a package they could normally use can't after a license shift.
As an "open source" developer for some time now, I disagree. In fact, once I am ready to release I doubt it will be under any version but the GPL v3. Why? Consider one question: Does the FSF and EFF back most or indeed any of the other versions of an OS license?
Because only the GPL has the full faith and backing of the FSF and the EFF. In the era of expensive patent and "anti patent" litigation, I want those organizations on my side for the same reason that --though I consider myself quite conservative in most political positions --, I don't automatically dismiss the ACLU as a leftist liberal organization. They have a good track record of protecting the important parts of our "electronic civil rights."
...Open Source isn't the only answer -- but it's almost always a better value than the alternatives...
So what you're saying is that people with a vested interest in making money on other people's code are demanding that code move to a more 'permissive' license like BSD instead of GPLV3? Because I've seen more projects move in the opposite direction -- moving away from BSD-like and into GPLV2 rather than the other way around. But, for the most part, projects that have BSD-like licenses and those with GPL-like licenses tend to either stay with the same license or move to a dual-license scenario. OTOH, I see more new projects going with GPL-like licenses over BSD-like licenses.
Whatever. I don't see GPLV3 causing any major shift in the open source/free software community
My blog
Quite. Whishful thinking on the part of those who are scared of the GPLv3. If it will "allienate" developers (who exactly nobody knows since ratio of bitching about the GPL is always inversely proportional to the actual coding in free software projets) then it will be great, nobody will use it, there are other licences out there and everything will be perfect for the anti-copyleft camp.
The "problem" with the GPLv3 isn't that it will allienate developers, it's exactly the opposite: most people against the underlying principle of the GPL - and especially those who have been relying on loopholes created by the changes in technology and society - are scared that it will actually be adopted - which I think it will, replacing the GPLv2 in new projects as the "de facto" copyleft licence. Don't like it, don't use it, but especially don't bitch about others using it, fell free *not* to use the code in the first place.
I'm sure certain companies would like GPLv3 to be alienating open-source developers, but frankly I don't see that happening too much. The only people it's alienating are people who would never use the GPL anyway. I've heard this tune sung before, when GPLv2 was being introduced: all those unrealistic, idealistic, totally unneccesary changes RMS was introducing would completely destroy the license and developers would abandon the GPL as unworkable. We can see how accurate that prediction was.
I think it's great you have chosen to release your work with a BSD/MIT licence (really). But from reading your post it's apparent that you don't really seem to view the current GPL as suitable, so the GPLv3 will not change that. Every complain you have about the GPLv3 can be applied to the GPLv2.
the disconnect isn't between people who want GPLv3 to be "Less permissive" or "more permissive", it's between people who think GPLv3 is "more permissive" vs people who think GPLv3 is "less permissive". Both sides want more permissive licenses, they just disagree on what constitutes "permissive". Some say "you won't let me take permission away from others, so it's less permissive!", others say "we won't let anyone take away permission, ever, so it's more permissive."
/is/ allowed!"
GPLv3 really just seems to be an attempt to make things explicit which were implied in GPLv2. Personally, I think that's a step in the wrong direction, because the moment you enumerate which things you can or can't do, as opposed to just blanket saying: "you can't, in any way, distribute this software if you, in any way, prevent others from distributing this software", people will say "oh, you said "patent", not "Billy's Intellectual Voucher Certificate", so my way of restricting use
-- 'The' Lord and Master Bitman On High, Master Of All
As we all know, the BSD license has pressured people into not using the GPL at all. Given the greater freedom to the end user it gives, it makes the market for GPL software utterly untenable. That's why Linux has switched to BSD licensing. The public domain, however, is so compelling, given its great degree of freedom and complete removal of all boundaries on use, Microsoft has placed all of Windows in the public domain. In fact, the only thing that stood between Microsoft and total world domination was their licensing which prevents certain people from using their software as they see fit!
Joke Joke!
There's an old rule of marketing which states "You can charge too little for a product". Just look at most people's gut reactions, GPL'd software is more valuable than public domain software. For developers and corporations like IBM, GPL'd software is more valuable than BSD software because of the GPL's additional sine qua non provisions. The spirit of fairness that is at the basis of RMS's 4 freedoms has value to developers and coporations. For most developers, protections against corporate profiteering preserve their personal ability to profit from their labor. The only people alienated are freeloaders.
Right now, there are roughly 3 types of OSS licenses.
The article states "look at the proliferation of licenses", as a sign that the GPL isn't filling a need. The simple facts are that the first two licenses are pretty much in the bag. Nobody writes new licenses that attempt to the accomplish the first two. Pretty much to a person, everyone uses Apache 2, BSD or the GPL to accomplish those goals. If you start looking down the list of other one-off licenses that are for OSS. Those are all about filling the need in the third item. If anything, it could be said that the LGPL is "failing". It isn't the "one true license" to accomplish the task. Essentially the proliferation of license's is about finding a "share and share alike" that can exist in a corporate environment. Where the core technology can be shared and developed by many folks, while the extensions and non-core pieces can be value-adds that are solve for money.
Greg Stein's a brilliant guy, and one hell of an engineer. But I think he's living in his own little world here. Lot's of folks like and enjoy writing software under the premise of the second type of license. Some folks do it under the first. In the end, the collaborative effort will virtually always win out. So in a lot of ways it doesn't matter if you use a license from the first or second group. That's why Apache has never been taken and had a closed competitor that is more used. Sure some commercial products are based on it, but none of them will ever quash Apache out of existence because they are so popular.
All the action is how to have an open source commercial license. The LGPL has a few terms that are a bit harsh on business, and have little to say with respect to patents or trademarks. In this day and age a license must address those.
Kirby
Correct. Further, GPLs v2 and v3 have clear statements saying that it's ok to sell covered software.
t ranscript
Enabling businesses to be built up around free software is essential for the progress of the free software movement. Our licences just have to ensure that those companies cannot harm the movement (neither intentionally nor under pressure from MS).
So if you distribute the software, you can't hide the source, and you can't sue the users for patent infringement, and you can't put it on a device that is set up to allow you to continue to modify without also giving the recipient that freedom. (Boo-hoo, you lose the "freedom" to screw others.)
And in the other direction, there is a warranty disclaimer so that distributing the software doesn't put people's business at risk.
Here's a summary of what's new in GPLv3:
http://fsfeurope.org/projects/gplv3/brussels-rms-
As is typical of this type of FUD article, the author talks nothing about the actual content of the licence, and instead just gives baseless summaries and gossipy predictions.
Please help publicise swpat.org - the software patents wiki
"This is partly why I've tried to convert my projects to BSD licenses. I have a substantial amount of code that I've written GPL"
As long as you're the copyright holder you can change the license when you wish. Or put your contributions to a GPL project under revised BSD or even in the public domain.
"its hard to remember who wrote what."
Ah, there's the rub. That's hardly the GPL's fault tho, is it? That's copyright law and your failure to do what copyright makes it necessary for you to do. Join the crowd and work for copyright abolition if you dont want to bother with that part.
"I don't feel comfortable using my own code because its GPL'd."
You dont feel comfortable using _their_ code because it's GPL you mean. You could have asked for copyright assignment if you wanted to accept the patches in that case. This is not a GPL problem, this is a situation you've put yourself in.
Of course, if the license were not the GPL, or you required copyright assignment, then maybe those contributors wouldn't have contributed. I sure know I wouldn't contribute anything non-trivial under a non-copyleft (preferably GPL) license.
"BSD licensing is the way to go, imo."
Nah, seen too much BSD code get proprietarized and used to screw end users. Not with my code they dont. They can write it all on their own if they want power over others that bad.
I'm proud of the code I write, and a lot of it is portable - I know it inside and out - but other people have fixed, added on, improved and optimized my code. As a result of that happening under the GPL, I can't use that for other closed-source projects I work on. It's frustrating, I don't feel comfortable using my own code because its GPL'd.
Horsefeathers. You can use your own code for any purpose you like, under any license you like. Releasing it under the GPL places obligations on others who acquire the code under that license. It doesn't place any obligation on you, nor prevent you from releasing your own code under multiple other licenses simultaneously. What you actually appear to be saying here is that you're no longer sure what code is actually yours in project X, and you're afraid of using other people's code, which they released under the GPL, in a closed source application. The real solution to that issue is good record keeping and an effective version control system, so you know what code is yours and what is not. Changing to a different license is a way to avoid the particular issue you're facing, but it's neither the only one nor necessarily the best one. If you've truly gotten lots of outside assistance on a project, the first question I'd ask is if the same level of assistance would have been available under another license. I can't speak for anyone else but I'm quite willing to help advance a project knowing that my efforts are protected by the GPL. I'm not so willing to pitch in and help out if I suspect that you're going to take the product of my hard labor, stick it in a proprietary application, and stuff the money you get for my labor in your bank account.
"The legitimate powers of government extend only to such acts as are injurious to others." Thomas Jefferson.
'"Business doesn't like the GPL": true when they are on the receiving end, but false when they are on the giving end.'
I'd change that to "true when they are in the middle". Business on the recieving end _loves_ GPL code. It means they dont have to worry about a supplier going bellyup, it means they can change providers, it means they can hire outside help with the code, it means the software isnt going to fork into a bazillion proprietary incompatible versions and it means it's there long term, and that invested time and money isnt going to vanish.
It's the middlemen, who want to recieve freedom but not give it to anyone else who dont like the GPL.
That's something I can live with.
Because:
Tivo wants to use GPL code but prevent users from installing modifications to the GPL code on their boxes.
Google wants to use GPL code and add modifications that others are prevented from using or modifying by using software patents and lawsuits.
If you want to use free code and hide your changes, and further restrict users, BSD is the way to go.
Sorry for the flaming, but I hope you can see it's easy to lose patience with this sort of thing. And I lose patience with Slashdot for running this story over and over again.
Bruce
Bruce Perens.
I don't think this is true. If I take BSD licensed code and make a change to it and then license this new group of code as GPL, I don't think there is any problem. The GPL meets all the requirements of the BSD license. I can do anything with the BSD code I want so long as it is in compliance with the BSD license. The BSD license does not restrict me from not prividing the source, or selling the code, or licensing the code in some new way. MS took the entire TCP stack and so long as they keep the original credit in it, they can release it under their proprietary Windows license. The same is true for releasing it under GPL (as far as I know). Now if I have GPL code and I want to release it under the BSD license, I have a problem, because that does not meet all the criteria for the GPL license. To do that I do need permission from all the copyright holders who contributed.
On your first point, regarding GPL2 and 3, I agree by the way. I just believe you are incorrect about moving BSD code to GPL, which I think is perfectly legal.
write something and put it out for GPL, my ONLY option if I want to continue to have any control is to require copyright assignment to me for any patches/etc.
So why, precisely, should you have control over the code that I write? If I offer up a patch to project X, my intent is to contribute to project X. It's not to add to your personal code library. You have control over your code. You have control over your project. (Someone else, of course, can fork your project and create a derivative project over which you have no control. That project, of course, must be released under the GPL, so you'd still have access to it, just not control over it.)
which in turn make the original person (like the poster) effectively unable to control their code. You can't even fork it without stripping out all the non-copyright-assigned code if you want to switch licenses, for example. So, once it's been tainted with non-copyright-assigned GPL code, your project is never your own again, which puts off people like the parent poster who want to retain the copyrights on their code.
Any developer worth his salt is going to have copies of his original code and the patches he himself wrote. That code is his and he has full control over it. The code in the project isn't his code. It's an amalgamation of his and others' code. If he didn't write it, and he didn't pay for it, why on earth should he have absolute control over it?
If you want to maintain absolute control over all code in a project, write it yourself or pay someone to assist you in writing it. If you ask for and accept the voluntary labor of others to advance your project, you lost the ability to have absolute control over all of the code in the project. That's the whole intent and purpose of the GPL. It isn't a bug. It's a feature. If you don't want to make that trade, don't use the GPL. If you can convince others to contribute code to your project under a BSD or other such license, then more power to you.
"The legitimate powers of government extend only to such acts as are injurious to others." Thomas Jefferson.