FaunaDB founder Evan Weaver has a crazy thought. Even as open source projects like Linux and Kubernetes continue to thrive, he suggests that maybe, just maybe, “As long as you give developers an API that’s open and a cost model that works for them then they don’t care [about open source]. They just don’t want to operate anything.” Cloud, in other words, not code.
It’s a bold thought, and not an unreasonable one. When I floated this idea with a range of industry heavyweights, however, they pushed back for a number of different reasons.
Among them? Well, according to Guarav Gupta, an investor with Lightspeed (and former Elastic and Splunk product executive), “There is a deep amount of developer love and appreciation and almost like an addiction” for open source, something developers don’t feel for an API.
Is there a way to have the convenience of APIs without losing developers’ sense of belonging for open source communities? The answer seems to be yes, but it’s a bit complicated to get there.
Don’t forget the data
For Aurélien Georget, co-founder and chief product officer at Strapi, which offers an open source headless CMS, one of the enduring draws of open source isn’t really about code, though sometimes that’s simply a necessity. For example, in Strapi’s case many customers want to heavily customise their CMS. In this instance, a cloud service doesn’t meet their needs. They need the code.
Or even if they don’t want to tinker with the code, data drives them to it: “Our users aren’t interested in ownership of their code but of their data.
For data privacy reasons, [or] sometimes from a legal point of view (e.g. banks, insurances, public administration, etc.),” they need to run their code — and keep their data — within their own data center. This isn’t to suggest that Weaver is wrong to insist on an API-centric approach, however: “Every solution should be API-oriented,” Georget concurs, as “It lets the developers be creative, imagine new use cases, and innovate.”
Even so, Georget acknowledges, “Being independent and having 100 per cent ownership of our data has a price.” It would perhaps be more convenient to use a cloud service but this simply isn’t always possible for certain classes of application or customer, he says.
And then there’s the possibility, argues Patrick McFadin, chief evangelist at DataStax, which contributes code and operational expertise to the Apache Cassandra database community, that APIs can become a one-way door: “APIs that used to be open are getting locked down over time or put behind a paywall. The war for data is only going to get worse and the trend will be heavily proprietary.” Code, by contrast, can be given away because it’s “not the business” of most enterprises, including software vendors.
Ben Bromhead, CTO at Instaclustr, might have the ideal compromise. Instaclustr runs open source software like Apache Kafka as a managed service. So long as a company builds with cloud services that closely adhere to open source standards, they never really lose their independence of code or data:
Open source data-layer technologies guarantee companies full control over their own data and processes. By choosing 100 per cent open source technologies, companies own their own code and maintain freedom from vendor or technical lock-in. But, more important than the code itself, true open source technologies ensure that companies’ critical information supply lines cannot be disrupted by the whims of entities that provide proprietary solutions, and might interfere with their ability to fully leverage their own data no matter what.
In other words, perhaps it needn’t be a cloud or open source decision, but rather a cloud and open source choice.
It’s about trust
Which brings us back to Gupta’s contention that there’s something different, and perhaps better, about open source. Even as Gupta acknowledges that “Ultimately people want to consume things as a [cloud] service,” he suggests that code is critical for forging real affinity — even affection — for technology.
“There is a deep amount of developer love and appreciation and almost like an addiction to [an open source] product that you develop by being able to feel it and understand it and be part of a community.”
Can you achieve this “cosmic closeness” with an API? Not really, Gupta argues. Communities, he says, are “a lot easier to build if you’re open source,” rather than a “black box cloud service with an API. People like Twilio, [but] do they love it?” He doesn’t answer his rhetorical question, but it seems to demand an unequivocal, “No!” Because, as Gupta goes on to suggest, “As a developer, you want to be part of a movement.”
At the heart of such an open source movement is trust: open source, open roadmaps, open communication, open decision-making. This is where cloud vendors like Instaclustr arguably can successfully give customers what they want: the ease of cloud and the trust and control of open source.
“Good open source companies build incredible amounts of trust,” says Gupta. Wise cloud companies do the same by not forfeiting the trust and affection born within open source communities.