The Community Corrosive Effects of CLAs (2021)
blog.hansenpartnership.com
blog.hansenpartnership.com
The point about the balance of power and power dynamics involved is interesting. I think it applies more broadly as well. Are these really “agreements” when individuals have no ability to negotiate them? They seem more like playground rules.
One problem is discoverability. GitHub lists forks in an un-sort-able manner.
This obviously doesn't solve the problem generally, but I recently found an extension called lovely-forks[1], that automatically shows the most starred fork for every github repository.
The Developer Certificate of Origin is not a contributor license agreement. (See https://writing.kemitchell.com/2021/07/02/DCO-Not-CLA.) It has no part that clearly says the contributor grants a license for their contribution, or on what terms.
This is the main disadvantage of the DCO, especially in non-GPL projects. Not that it "encourages distributed ownership". A contributor license agreement doesn't change who owns any copyrights, either. That's a copyright assignment. FSF's copyright assignment paperwork isn't a contributor license agreement, either. Assignment != License.
License grants in CLAs are often in different, broader terms than open source licenses for several reasons. For one, many open source licenses are ancient, without clear and complete license grants by today's standards. Second, part of the point of a CLA in many cases is to enable project stewards to change or legally upgrade license terms in the future. CLAs give them all the rights we can think of to license on whatever terms, so they're not caught short.
There is no reason CLAs for a project can't be shared openly.
If temptation to abuse of power were inevitable, we would see a lot more individual contributors to open projects who retained ownership of their copyrights suing project users about meaningless license violations for monetary settlements.
Companies like Elastic have changed to new licenses for future development. None that I'm aware of has tried to change the license terms for previously released open work retroactively, and there are serious legal questions about whether this is even possible or practical. Bloggers and tweeters sow a lot of unfounded fear about "evil corporate relicensing" by using loose terms that can imply, for those ready to see it, that there are releases floating around out there with Apache 2.0 license notices that aren't actually Apache 2.0 licensed anymore. What actually changes is that ongoing development by those companies moves to new terms, and folks interested in continuing development under the old license terms either do or don't step up to "fork" from the last release under those terms.
Why is it an issue? I’m using their free product, and I’m making it better by contributing and them accepting the contribution. The CLA absolves me and absolves them and let’s them keep power over the licensing. Code bases with all sorts of “rights holders” for various pieces of the codebase are probably a nightmare to deal with if the license needs to be adjusted for whatever reason.
The "extend" part might map to maintaining or getting free labor for a project, maybe to eventually modify it in an incompatible way once sufficient usage share is attracted, if you can get other devs to do it.
"Extinguish" would then be breaking the public version completely while possibly still using the working code in proprietary software.
The "extinguish" part needs a CLA to be legal, or with, say, the GPL, they'd be required to publish the source of the derivative work.
Indeed. Maybe, then, it's the corporations who should have a think about requiring a CLA?
PSA: CLA is Contributor License Agreement
FTFY
But he's not going to live forever (thank god) and his successors might try to use GPL4 as a political wedge within the FOSS community. Put in restrictions on project governance and codes of conduct, make a violation unrelated to the software itself terminate the license, something like that. "Ethical source" didn't get anywhere but something backed with the heft of FSF might. (Given how RMS has stacked FSF with loyalists, it's probably more likely that they'd do something to punish "ethical source" than enshrine it. Both are equally corrosive in my view.)
Or it might make FSF even less relevant. We'll see.
The more realistic risk of a CLA on GPL'ed code is that the person in control would switch it to a more permissive license without the copyleft restrictions of the GPL. That would actually have a negative impact that others can't mitigate by forking (although with a fork you could of course again make any new code added to the project the original license again).
But in seriousness, you are completely correct, and I agree with you.
I think it’s fair to demand that clarity. Keep in mind though that if a project is already using a permissive license it’s always going to be easy to make the project open core or for someone to make a proprietary work with your contribution.
Contrary to this article’s statements CLAs are actually easier for everyone involved at least on the second contribution due to the tools that exist. It’s just a checkbox on a PR.