Elastic changed the Elasticsearch license from Apache 2.0 to SSPL. I am not a fan of the decision. This comes from my personal experience with OSS and I do not like the precedent that it sets for OSS. But I think it makes great business sense for Elastic and they are fully in their rights to do so! I also think it is inevitable and I've written about it here: Is AWS the meteor that kills OSS companies?

I've never been a CEO and never taken money from investors or in Elastic's case, the general public. I don't envy the position of the leaders of these companies making the license changes. They have built the project and community with years of work and I'm sure every single one of them loves OSS to their core. Changing the license of their baby would have been a hard pill to swallow :(

It sets a bad precedent

I've written about this before, but I've started off my career with OSS and owe it everything! I started contributing to Prometheus because of Google Summer of Code and then took a semester off with the hope to build a company around Prometheus. It was during this gap semester that I met Tom Wilkie and the conversations I've had with him are what got me my current job at Grafana Labs.

I could invest my time in Prometheus because I was confident that I could build a company around it if I wanted. And I think it is important to have a healthy commercial ecosystem around a project rather than a single company. In Elastic's case, it does have many small companies monetising Elastic in several ways, including offering it as a service. And the change in licensing basically screwed them over.

Many small businesses build their products around Elastic (and other single company controlled OSS projects) because the project was licensed as Apache 2.0. The implicit (and sometimes explicit) promise was that it will stay that way forever and it was safe to build on top.

Rise of the foundation and SSPL

People will now triple think building companies around projects controlled by a single entity. Any company that wants to build a truly open and collaborative community will now have to donate all the rights to a neutral third-party Foundation if they want to attract other commercial partners.

While I'm not a fan of donating to foundations, I'm very glad Apache Foundation and CNCF and other similar foundations exist and I think we'll see more of those.

Nobody enjoys changing licenses, especially the founders of the companies/projects. They have released the project as OSS because they believed in it. Some members of the community also see it as a betrayal. Hope that AWS won't swoop in is no longer a strategy. We will see more and more projects released as SSPL / BSL right from the start. As much as I don't like it, I think it is inevitable and it is an improvement over launching as Apache 2.0 and then switching.

Conclusion

If I were to launch an OSS project, I would want it to be part of GSoC and I would want contributors to feel empowered to build businesses around it. I draw my roots from there. But if I were to build a business, I would be unlikely to do an Apache 2.0 license, unless I'd be happy building a bootstrapped, slow growing business. I am not sure if you could be a successful public company while allowing AWS to eat your lunch.

And I would never build a business around a project that is controlled by a single for-profit entity. Even if the company puts out a statement it will be Apache 2.0 forever, you never know what is in store years down the lane. Leadership could change, priorities could change and realities of the market could change. You could invest years of time into it and then be caught with your pants down. I really, really don't like the precedent set by Elastic :(

And I really, really, really hope AWS compromises its profit a little bit and does true partnerships and revenue share with OSS companies.