or why no corporation will fork your permissively licensed open source project without contributing back upstream.
This post should address some angsts people expressed when I’m discussed with them about open source licenses.
Almost all of them expressed a strong dislike for permissive licenses, because they fear, that once the project gets popular some big corporation will take the code, develop a fork of it and sell it without contributing back to their open source project.
“You must be this tall to…”
First of all: most open source projects will never get that popular. Especially it’s very rare that a project gets popular enough, that they’ll be used in a successful commercial product.
So don’t worry. Just pick any license which let’s people use your software in the ways they want and move on with your life.
I tend to use the MIT License a lot these days for things I release as open source. I think it’s short and answers (without using too much legalese) all questions someone who wants to use your project will ask:
- Who made that?
- May I use it for my project?
- What kind of warranty is granted?
Forking is really expensive
The second thing is, that maintaining an internal fork of an open source project is really really really expensive.
These are the choices you’ve for maintaining downstream patches:
- Invest the time, backport upstream bug fixes and security fixes.
- Invest more time and forward-port your set of patches to any change the upstream project makes.
- Invest no time at all and let it rot, be stuck on an old, unsecure and buggy version of the software. You will almost surily land in dependency hell too, because you cannot upgrade software that depends on it.
All of these options cost time (and time is money) and therefore do not create business value.
That’s the reason why every corporation avoids having to maintain downstream patches to open source software.
Don’t fear making free software.