With proliferation of cloud computing services, a standard API remains a sci-fi notion for the foreseeable future

InfoWorld|Jun 22, 2012

Look at the cloud computing services out there -- then consider the fact they all have their own definition of an API. Clearly, we need standard cloud computing APIs. Enterprises are concerned because applications built around cloud APIs are costly to construct and to change. There is currently no good path to cloud portability to protect the investment in development.

Despite IT's desire for such standards, we won't see cloud API guidelines anytime soon. Here are the three main reasons.

1. Everyone already follows Amazon Web ServicesThere's no need for a standard if one company -- Amazon.com, with its Amazon Web Services -- already enjoys so much success that it's become the de facto norm. Companies such as Eucalyptus, which offer open IaaS private cloud software, provide direct AWS API compatibility, and others are taking the same direction. If you can't beat them, join them.

Moreover, APIs are nothing but interfaces into software. If you replicate the API, you must also replicate the software engine. Simply pushing the same interface doesn't mean it's the same service.

2. Abstractions are a bad ideaSome technology providers have put forth the idea that they can provide a common API layer by abstracting differing cloud APIs, such as AWS and OpenStack. That would let you write to a single API featuring a translation layer between the common API and the native API. The idea is you can switch translation layers at will, and your application is portable from cloud to cloud.

In reality, you're trading one API for another. Moreover, the performance hit may seem reasonable at 10 transactions a minute, but it'll become a huge deal at 1,000 translations a minute in a few years.

3. Cloud providers won't agree on a common API in the near futureIf you're leading the pack, there's no reason to move to a common API standard that you did not invent and that helps your competition.

Although the trailing providers could come together on a standard, few enterprises will use it unless there is real traction. Moreover, cloud providers will implement it differently, looking for ways to vary their product so as not to be easily replaced and to stand out from competitors.

None of this will stop common API standards from emerging as the cloud computing market matures. Standardization, whether formal or de facto, is the common late-maturity state in technology. Just don't hold your breath waiting for the day to come.