Open source is dead. The cloud has killed it.
Maybe “dead” is too strong. After all, legacy tends to stick around for a long time. But all signs point to the convenience of cloud supplanting the convenience of open source in the hearts of developers. Why? Because cloud is just that much more convenient, and new services like Amazon Web Services’ Lambda take that convenience to extreme–and welcome–levels.
A planned obsolescence
Just as “open source advocates [are] taking a deserved bow for their success,” that success is being ripped from their grasp, as Redmonk’s Stephen O’Grady said. Open source has won out over proprietary software in all essential infrastructure markets, and (ironically) provides the building blocks for most successful cloud applications.
SEE Oracle’s rising open source problem (TechRepublic)
The reasons are many but can be summarized simply: Open source has fostered developer productivity, and developer productivity has become the critical success factor for most businesses as software eats the world. Even the freedom of choice that open source advocates regularly trumpet is no longer as heralded. According to O’Grady, “[C]hoice is an overhead, overhead that is multiplied with each additional choice a user has to make.”
As such, open source, even with its increasingly permissive licensing and ease of distribution (GitHub), lags behind public cloud computing services in these and other areas. Tim O’Reilly first forecast this trend in 2008, arguing that a “reasonably open” cloud service would trump open source:
The first provider to build a reasonably open, re-usable system service in any particular area is going to get the biggest uptake. Right now, there’s a lot of focus on low level platform subsystems like storage and computation, but I continue to believe that many of the key subsystems in this evolving OS will be data subsystems, like identity, location, payment, product catalogs, music, etc. And eventually, these subsystems will need to be reasonably open and interoperable, so that a developer can build a data-intensive application without having to own all the data his application requires.
We’re not quite there, but we’re getting there, and fast. As DataStax developer evangelist Patrick McFadin told me recently:
Things in our industry are heading to a place where [software licensing] is irrelevant. Organizations won’t buy server licenses and deploy them. Developers will use APIs and will be charged by the call or megabyte. The argument of what type of license will disappear as a result.
Nowhere is this more apparent than in the emerging shift to “serverless” architectures.
Brother, can you spare a Lambda function?
In an interview with Matt Wood, general manager of Product Strategy for Amazon Web Services, Wood highlighted that Lambda follows AWS S3 in providing “simple, scalable, low-cost, reliable and low-latency” services for developers. S3 eliminated the need to plan out the provisioning of storage. Instead, developers could just write their code and S3 would take care of scaling up or down to manage fluctuating storage needs.
SEE Tim O’Reilly on open data: Cheap may be open enough (TechRepublic)
Today, “AWS customers get to think about building applications with services, not servers,” Wood said. “With S3, DynamoDB, and Lambda, you can build apps without thinking about the underlying infrastructure.”
This is a dramatic improvement over open source, which freed developers from having to worry about getting approval from Legal or Purchasing before using software. In the increasingly serverless world of public cloud, developers just have to think about what they want their application to do, and AWS (or Google/Microsoft with similar services) takes care of all the necessary infrastructure.
That is hugely liberating, and it’s a step well beyond the freedoms afforded by open source. Freedom to “get stuff done,” rather than merely “freedom to fork code.”
Is it open? Not really. But it’s “reasonably open,” to use O’Reilly’s phrasing, and that seems to be enough.
Along the way, AWS Lambda and open source both challenge traditional software companies and commercial open source vendors, but things like Lambda take it much further than open source. Wood was quick to stress to me that AWS isn’t trying to kill software companies but rather insisted, “We’re trying to make software companies build better software.”
That same argument was once used by open source enthusiasts, who claimed that open source development practices produce higher-quality code. It didn’t quite work, however, as enterprises still elected to buy from their traditional vendors. With public cloud, however, a massive sea change is underway, and this time the superior ease of use and developer productivity of the cloud is a winning combination.