
A bad year for open source databases
December 31, 2024
Although the definitions of Open Source are related to specific software characteristics (i.e., the license), the reality is much more complex. Open-source is way more related to a social contract that the software’s creator and its users morally sign than the definition might lead you to believe. This social contract’s key aspect concerns the software’s current license and the licenses of future versions. This is because although users of open-source software usually do not pay to use it, they incur high costs to do so. Examples of those costs are training costs and potential costs to replace a certain technology should it become unavailable in the future.
CockroachDB, ScyllaDB, and Redis became relevant precisely because of their open-source models. They built trust, gained adoption, and created communities on the promise of openness. Now, they’re reneging on that promise. It’s not just a technical shift; it’s a moral one.
The official justification is always the same, with minimal variations: “We had to go closed source to protect our business from cloud providers.” Amazon’s AWS is often accused of abusing open-source projects for profit without giving back. But let’s be honest: this is a completely pointless argument.
First, what those cloud providers do is entirely legitimate under the license those projects chose to adopt. A big misconception is that companies creating open-source software should be the only ones making money on it. This is the exact point of open source: giving up part of the profits in exchange for the ability to create a community around the project.
A second point is that there is not a single open-source license; there are many, and they work in different ways. If a project is under Apache License 2 and feels that some community members are using their software without giving back, it might evaluate other licenses that have stronger copy-left requirements without making its software close-source. Changing licenses, even between two open source licenses, is never a decision to make lately, but at least moving between two open source licenses reduces the number of users impacted by the change. Also, a change of license moment is always a moment where forks might arise. A fork is far less likely to result due to the more limited number of affected users when moving from one open-source license to another.
I hope that 2024 will mark the end of this trend, but I know that it will continue until venture capitalist-backed startups create open-source projects that require every contributor to sign a CLA.