Amazon APIs Are Fine ... For Amazon
April 03, 2012
I lifted the title from a Sam Johnston Tweet that neatly sums up an observation I had while listening to Citrix discuss the announcement of giving CloudStack to the Apache Software Foundation (ASF). If I didn't know better, I'd say that there are many in the cloud community who are happy to capitulate standards to Amazon. What's next? Letting Cisco define networking standards?Microsoft define OS, Web content and document standards? Apple define mobile platform standards? Or Oracle define SQL standards? Granted, Amazon seems to be the market leader and certainly commands the lion's share of public cloud mind-share, but hitching the standards wagon to a vendor is a fundamental problem.
"Amazon has in many ways invented and created this market, and with what is projected to be $1 billion in ecosystem and customer revenue attached to Amazon cloud, we believe the winning cloud platform will have to have a high degree of interoperability with Amazon," said Sameer Dholakia, GM Cloud Platforms Group with Citrix, during a pre-briefing. In fact, the entire 45 minutes with him was peppered with references to how CloudStack's "commitment to this [Amazon API] compatibility is unwavering and is only getting deeper." It almost sounded like the announcement was Citrix trying to sweeten up Amazon to acquire CloudStack, rather than telling the world that CloudStack was becoming an ASF project.
Here's the crux of the problem: Standards should be developed in an open, transparent forum where all constituents can participate and no single entity can control the future of the standard. Amazon, or any other vendor, is naturally going to build APIs that support its business goals, and while there is nothing inherently wrong with a vendor looking out for its own interests, doing so also means that if you, the customer, buy into that mindset or a project/product that is aligned with that mindset, then you have tied your wagon to the vendor--in this case, Amazon.
There are other potential problems, as well.
In a CloudPundit post titled "Citrix, CloudStack, OpenStack, and the war for open-source clouds," Gartner's Lydia Leong points out "a potential intellectual property issue if Amazon ever decides to get tetchy about its rights. (Presumably, Citrix isn't being this loud about compatibility without Amazon quietly telling it, 'No, we're not going to sue you.')." Elsewhere we are seeing attacks on the "unauthorized use of an API" by a third party. Oracle going after Google's use of Java's language API in Android is a recent example.
While Amazon may never try to enforce any IP rights over it's API, it is notable that Citrix pointed out that the commercial version of CloudStack it offers also includes indemnification of suits based on its use.
"Nobody ever said Amazon has to be any more open than they are--they're the market leaders and they can be as proprietary as they like, so long as they don't claim to be open (they don't)," said Sam Johnston, president, Open Cloud Initiative. "There are a number of options for protecting intellectual property (copyrights, trademarks and patents), and the situation with the AWS APIs is at least unclear. I hope and believe a truly open API (as defined by the Open Cloud Principles) will prevail, though it's not clear to me that any of the options out there today will be it."
Relying on Amazon to set the standards for cloud APIs means tying your future to Amazon's, which may or may not be in the cloud providers' or the customers' best interests. It also means that other opportunities may not surface or be developed. There are a lot of other cloud services out there from companies that have their own APIs, including Google, Microsoft, Salesforce, Rackspace, Verizon and VMware.
What would be good for everyone--including cloud services vendors, cloud software vendors, management vendors, infrastructure vendors and customers--is a set of well-defined, vendor-neutral standards that vendors and service providers can implement that will allow them to focus on service and product features that differentiate them from competitors and give customers the ability to easily implement their workloads where they choose while being confident that they can also easily get their workloads back.
The people and organizations who are working on cloud services and software need to sit down at a table and start working on meaningful cloud standards. It's that simple.
Disclosure: I am openly and proudly pro-open standards, and I think Standards Matter: The Battle For Interoperability Goes On. However, I am also practical, and at times I think Standards Don't Matter; Vendor Choice Does and that Proprietary Is Not A Four Letter Word. I'm complicated like that. Go figure.