Apparently AWS is B-A-D because it’s a net consumer of open source software. You know, like every single company on earth, inside or outside of tech, probably even including Red Hat. The simple truth is that everyone consumes far more open source software than they contribute. It’s just how the world works.
For those trying to keep score, however, and paint Amazon Web Services (AWS) as a bad open source citizen, the question is “Why?” Accusations of open source parsimony don’t seem to have damaged developers’ love for AWS as a platform, so exactly what are critics hoping to accomplish? Is it simply a matter of “paying a tax,” as some suggest? If we’ve been reduced to inventing taxes to be paid, with no apparent reason for imposing them, we’re doing open source wrong.
A brief history lesson
The irony in all this is that a significant share of the AWS criticism comes from Google, which used to bear the mantle of “bad open source citizen.” (Every few years we change who we want to accuse of “not giving back enough.”) The critique didn’t really fit Google any more than it does AWS today, but many (including myself) harangued Google for mostly hoarding its tech.
Over the last 10 years, Google has increased its open source output, both contributing back to projects like MySQL where it derives benefit, as well as open sourcing things like Kubernetes and TensorFlow that derive from its internal tech. It has been a welcome bounty from Google, but it hasn’t come because Google decided to be kinder and gentler. No, things like Kubernetes lead more developers to run applications on Google Cloud.
Open source, in short, became a useful part of Google’s business strategy.
Google Cloud exec (and former AWS employee) Miles Ward acknowledged that Google’s contributions aren’t done “for points” but rather “because it makes the best software.” If so, one would think that Google would open source all of its software in its quest to have the “best software.” But of course it doesn’t–most of Google’s software today that runs its impressive array of services is 100% proprietary.
SEE: Introduction to Kubernetes Using Docker (TechRepublic Academy)
This isn’t because Google is bad. There are many great reasons not to open source code–e.g., added burden of support, documentation, upfront work on the code, etc. And often those reasons are less noble but equally valid–e.g., competitive differentiation from keeping code closed. And sometimes, as (then) Yahoo!’s Jeremy Zawodny told me (and Google’s open source chief Chris DiBona affirmed) years ago at OSCON, in response to my criticism that Google and Yahoo! should open up more:
Yahoo’s applications are tightly bound together, making it difficult to open one piece without giving away information about how the remainder is written, or making it useless because knowing 1/10th of the application wouldn’t be helpful (because of all the unknown code).
There is no moral judgment in all this: Companies pursue self-interest whether opening up their software or keeping it closed. One can argue that sometimes they get this wrong, and could derive more benefit from open sourcing their code, but outside critics are rarely the ones with enough context to make that assessment.
Which brings us back to AWS.
Should we care?
Developers tend to be the audience that cares most about open source. Developers are also the group most impervious to marketing pitches. Yet these same developers flock to AWS in droves. Either AWS isn’t as bad at open source as the critics suggest, or developers, quite simply, don’t care.
I suspect the answer is a little of both. As I’ve argued, there are different ways to deliver on the promise of open source. More than a license, developers want convenience. This is why open source initially took off (“Let me download code and not get approval from Purchasing or Legal”), why permissive licensing bludgeoned the more restrictive GPL (“Get out of my way and let me do what I wish with the code”), and why the cloud has become the default for new application infrastructure (“I don’t want to wait for IT to provision a server. I want to be productive now.”).
SEE: Google finally gives developers access to its cloudy secret sauce (TechRepublic)
This quest for convenience is the primary reason that AWS has been such a developer darling, even if its competitors can plausibly proclaim themselves “more open than thou.” AWS has done more to deliver developer convenience than any other company, and its market share reflects this.
In other words, heckling AWS as a poor open source citizen won’t do much to derail AWS, and it will do even less to help its opposition. If AWS doesn’t contribute enough, and if this is bad for business, the market will punish AWS. That hasn’t happened, and suggests that perhaps AWS’ critics have misplaced their criticism, and need to rethink their business strategies.