3 ms·
Microsoft requires a CLA. I have contributed small fixes before and am working on a smallish but bigger impact fix, and I’ll have no problem signing again. Why
by bmitc 4y ago
Microsoft requires a CLA. I have contributed small fixes before and am working on a smallish but bigger impact fix, and I’ll have no problem signing again.
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.
- AmericanChopper 4y agoI’ve contributed bug fixes and small features to a bunch of CLA projects, and every time I do the project eventually rug pulls the license and replaces it with something that works exactly against my particular interests. I don’t get massively salty about it, but it’s kinda shitty and really makes me think twice about contributing to any CLA these days. Every time I see a CLA now I just think it’s some jerks crowdsourcing R&D from a community that they know they’re eventually going to shaft with a new commercial license.
- nicpottier 4y agoI think this often cuts both ways and license changes are a last resort by project owners trying to find a sustainable path forward. Sentry being an example of this. Some (most?) OS projects have some company/organization behind them that is doing most of the work, I have no problem signing a CLA if that helps them continuing to exist by relicensing my contribution in some way. At least not if my contributions are pretty small scale, which I think most outside contributions are.
- intelVISA 4y agoThe Microsoft CLA is a key part of their classic embrace/extend/extinguish playbook.
- bmitc 4y agoFor example?
- danuker 4y agoThey'll sunset the free-software project, and use your contributions for their proprietary spyware.
- bmitc 4y agoI appreciate that, but that’s not an example. It’s also not a description of embrace/extend/extinguish.
- danuker 4y ago"Embrace" is indeed not in this example, but would depend on whether the project originally adhered to some community standard. 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.