Will we ever see a common Cloud API standard? Or is this a fanciful notion? Currently, there seems to be several camps in the Cloud Computing world.  One camp believes in a full open environment, where a community of developers work towards a common goal.  Another camp believes in a closed environment, where each vendor creates their own so-called standards and customers determine which vendor solution to use. There's even a third camp emerging, which is a hybrid of the other two. Under this hybrid arrangement, a select group of developers work on the core environment while other developers seek a common goal using an open environment.

Amazon a Cloud API Standard?

Today, some vendors are claiming Amazon Web Services API should be the standard since Amazon seems to be the largest player in the Cloud market.  But being the largest, however, has never made a product the best. Amazon, for example, made a mistake by global namespacing with S3, or that's the consistent message you hear from people close to Amazon S3. This global namespacing creates a problem because all storage buckets are unique to the system, not your account.  For example, if I created a bucket called ‘invoices,’ you would not be able to create ‘invoices’ because the bucket name is unique to the system -not your account. This forces you to get creative with your root bucket name.  On some platforms, they have solved this issue by attaching the uniqueness of your bucket to your account and not the entire system.

Cloud Workaround

When looking at Cloud computing solutions, take a look at their APIs.  There's a good chance you might have to support multiple Cloud vendors. And by understanding how they defined their APIs, you may be able to create a pseudo standard of your own regarding an API for at least storage.