Open source has been the backbone of cloud innovation for the past decade, from Linux and MySQL to Kubernetes, Spark, Presto and MongoDB. However, recent developments have thrown a dark cloud over the open-source business model, and the industry must now act to stifle one of the biggest sources of innovation.
As a co-creator and former Project Manager of Apache Hive, I know that incentives for an open source ecosystem are crucial. Independent developers need the incentive to put their time and skills into open source projects, and entrepreneurs with entrepreneurial thinking need the incentive to build companies around these projects to help them succeed.
The public cloud threatens to undermine these incentives because it is changing the dynamics of open source. For a large cloud provider, it's too easy to offer an open source project as a managed service. If it does so without giving anything back to the community, it will unduly benefit from the work of others and upset the incentives open source must develop.
We saw this in the current discussion about AWS, which was accused of adopting and renaming open source projects without always giving these communities something. This has led vendors like Confluent, Redis Labs and MongoDB to develop new licenses that prevent large commercial cloud vendors from offering their code as a managed service.
I do not think that this is the right approach. These new licenses are not yet recognized by the Open Source Initiative, and they have the potential to affect the exploitation rights for open source software. As Software Freedom Conservancy president Bradley M. Kuhn has said, software freedom should be "the same for everyone, whether or not they are a commercial actor." Open source has evolved because this principle has always been respected Confusion can keep people from the community.
I understand open source companies that want to protect their business. Despite the best efforts of independent developers, open source projects must consider a company's resources and responsibility as stable enough for widespread enterprise use. Linux has prevailed in the company because Red Hat and IBM have left their weight behind. Kubernetes flourished as fast as she did, because she was supported by Google. There are certainly exceptions, but an open source project can be more successful in large companies if it has the weight of a business.
Let me also talk about my prejudices. My company provides a cloud-based data analytics platform that relies heavily on open source components like Spark, Presto and Hive. At the same time, we were good open source citizens by giving something back to the community through two projects – Sparklens, a framework to improve the performance of Spark applications, and RubiX, a caching framework that accelerates performance for Presto and Spark.
By providing open source software in the cloud, these projects can attract more users and developers. However, if commercial cloud vendors benefit unfairly, it deters the next generation of programmers from entrepreneurs to build open source businesses and investors who support them.
If new licenses are not the solution, what is it?
Part of it depends on the big cloud providers playing fair. I do not think AWS is "evil", they act in their best business interest. However, you must realize that undermining open source damages them as much as any other. Open source advocates should continue to raise awareness of this issue and put public pressure on cloud providers to act responsibly. We've seen signs that this pressure can work.
We also need an "open code ethics code" created by community contributors, project leaders, and open source organizations such as OSI and Apache. It's possible to be 100 percent compatible with an open source license, but still act in a way that harms the community. Being able to point to a widespread code of ethics that provides for unacceptable practices will make it far easier to hold companies and individuals accountable for their behavior.
The last push is the competition. It is true that the big cloud providers have an advantage in attracting customers. They are considered a "simple" and "safe" choice for CIOs. But customers go where the best software and support is. If open source companies can provide their distributions with better features and better support, they will get them to choose their own products.
I've described the actions the community can take to improve the situation, as well as the actions each one of us can take. We all have the ability to influence the market by informing cloud providers about our concerns. Ask them to use feedback forms and product forums to bring features back to the community. Developers of these cloud providers also depend on open source forums and want to be part of the community. When they are alerted to these requests, more pressure to change arises.
There is no easy solution to this challenge, but we have to take it seriously. The open source model is not vulnerable and will not be broken overnight. However, if commercial cloud vendors continue to exploit projects without giving up, they will reduce the incentives that have made open source so successful. It is not in their interest to kill the goose that lays the golden egg and certainly not in the interest of developers and customers.
Ashish Thusoo is co-founder and CEO of Qubole.