Customer-driven open source is the future of software
By some estimates there are roughly 190 million companies on earth today. Imagine if they were all contributing to open source. Of course, most of those companies are not in a position to contribute code, but if we want truly sustainable, customer-friendly open source, it is time to focus on the best possible source: companies that do not sell software.
Why? Because the more software is built to suit the needs of those who are running it day-to-day, the better that software will be, and the less we will need to worry about sustainability.
Make someone pay for this
Although open source has never been more broadly used, we are apparently in an “open source sustainability” crisis. It is the same “crisis” we have been in for the past 20 years, with persistent warnings that this cannot last. I wrote about it in 2008 (“Open source has the chance of becoming a non-renewable resource if enterprises consume it without contributing cash or code back”), but by 2013 my concern had faded: “ This dramatic improvement in the health of the open source ecosystem derives from two primary trends: a move toward more permissive, Apache-style licensing, coupled with an increase in open source contributions from web technology companies like Facebook.”
While I continue to believe open source is nowhere near an existential crisis, I do believe we have frittered away needless energy looking for sustainability in the wrong place: vendors. As I pointed out in 2013, the real innovation in open source stems from customers; that is, from enterprises who use open source to build their businesses and contribute code accordingly.
Software of the people, by the people, for the people
Red Hat CEO Jim Whitehurst has been agitating for customer-driven open source for well over a decade: “Ultimately, for open source to provide value to all of our customers worldwide, we need to get our customers not only as users of open source products but truly engaged in open source and taking part in the development community.”
There are many reasons why such customer-driven (or user-driven) innovation might be best, but Linux veteran Matt Wilson put it this way: “If I can risk predicting the future, I think you’ll see a lot more new open source software emerging from companies that are building it and using it to solve their business problems. And it will be better because of a positive feedback loop of putting the software into an applied practice.”
Wilson said: “If you look backwards in time, [you’ll see] that software vendors dominate the enterprise software space. And I think that is a reason why so much of it is so so bad. Because the people building the software are not using it to solve problems.”
Not software sold on a golf course. Software built to meet real-world needs by the companies experiencing those needs. Fortunately, it is already happening:
- Lyft released Envoy, a high performance C++ distributed proxy designed for single services and applications, as well as a communication bus and “universal data plane” designed for large microservice “service mesh” architectures;
- Airbnb released Airflow, a platform to programmatically author, schedule, and monitor data pipelines;
- Walmart released Electrode, a React-based application platform (that the company used to run Walmart.com);
- Netflix released Spinnaker, a multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence;
- Intuit released Argo, a collection of projects for working with Kubernetes that include Argo Workflows, a container-native workflow engine; Argo CD, for declarative continuous deployment; and Argo Events, an event-based dependency manager;
- Capital One released Cloud Custodian, a tool used to deliver automated governance, security, compliance, and cost optimisation to enterprise cloud environments.
There are many more. Even a cursory review of the speakers at OSCON 2019 reveals Uber, Bosch, The Home Depot, Comcast, and others, many of them talking about how their companies both use and build open source software.
The future of software
Of course, there is great software built by vendors, too, though the best software released by vendors tends to have more to do with how they are running their infrastructure than what they are selling. Take Google and Kubernetes, for example: Google had been running containerised workloads for over a decade before releasing Kubernetes. Kubernetes suddenly gave non-Google-like companies Google-like powers.
This is the future of open source. Vendors will continue to contribute to open source projects, and to release projects of their own. But Whitehurst and Wilson seem to be onto something: the best software is software that companies build to “scratch their own itches,” in true open source fashion, and address their own day-to-day needs.
Matt Asay, IDG News Service