I’ve been trying to take a bit of a break from writing, but considering what I do for a living, how I spend my free time, and the baffling level of WTAF of today’s news, taking a break from break-taking seemed in order.
Today Redis Labs announced that it was adding something called the Commons Clause “…to certain components of open source Redis.” It acknowledges that this means those components are no longer open source, but hand waves that away and implies that it’s not a big deal.
It’s a big deal, and it’s a bad idea.
The Commons Clause is intended as an add-on to OSI-approved licenses. Its primary purpose is to remove “the right to Sell the Software.” Unfortunately, it goes on to define selling as:
…practicing any or all of the rights granted to you under the License to provide to third parties, for a fee or other consideration (including without limitation fees for hosting or consulting/ support services related to the Software), a product or service whose value derives, entirely or substantially, from the functionality of the Software.
Which, you know, is monumentally vague and won’t at all cause problems in court, now will it? Yes, it will. Despite that, the Redis Labs legal and executive teams decided to go forward with this relicensing. What did they hope to accomplish?
Did they hope to force Amazon and other big corporations to stop eating the Redis Labs lunch? If so, they’re going to fail. What will happen is that Amazon, probably in conjunction with Google, will fork Redis to avoid this problem. While it could continue using and developing this fork internally, it’s more likely that they’ll release the fork as a FOSS project, thereby wooing away the existing Redis community and contributors. This will allow them to continue operating as they already are without having to bear the entire burden of maintaining the newly forked project. Redis Labs, on the other hand, will be left with the entire burden of maintaining the original Redis project.
But maybe the problem was that Redis Labs was already carrying this entire burden. Their statement does, after all, include this line that implies this may be the case:
Redis Labs is leading and financing the development of open source Redis and deserves to enjoy the fruits of these efforts.
A review of the Redis project contributions (which I have not done) would reveal whether this is what’s happened. If it is, then there are better ways to play nicely in the free/open source playground than to take your ball and go home when someone does something you don’t like. For instance, you could evaluate why there are so few other contributors to the project and then take action to improve those numbers. Or you could approach the biggest users directly and ask them why they aren’t collaborating more, then cooperate with them to help encourage contributions. Or, if you’re relicensing everything anyway, you could switch to something like the AGPL, which would cause other enterprises either to release their own source code or stop using Redis. Of course, this would probably just lead to a fork as mentioned above, but at least Redis Labs would come out looking like a shrewd member of the FOSS community rather than a foot-stamping child.
The entire situation is just perplexing. This sort of change undoubtedly had to receive approval from a lot of very smart people at Redis Labs, and that approval undoubtedly happened after many hours of discussions and emails. Despite that, they decided to go forward with this unfavourable change. If I were one of the investors in Redis Labs, I’d be raising a skeptical eyebrow and taking a good hard look at just what in the heck is going on over there. Questionable decisions like this shouldn’t be able to get through so many layers of leadership without being shot down.
Anyway, you can look forward to a bevy of thinkpieces from free and open source software luminaries in the next few days, all doing the same sort of finger wagging and WTFing that I am. None of us think this is a good idea, which is to be expected from our ilk and is not really news. What interests me now is seeing how the rest of the market reacts. What will AWS, Google Cloud, and the others do with this news? And how will this affect the revenues and profits of Redis Labs? Will they be able to keep up their streak of 10 quarters so far of double-digit growth?
Let’s find out.