Saturday, June 23, 2012

On Competing with APIs

APIs are just a vehicle for creating ecosystems and it's through exploitation of ecosystems (under models such as innovate-leverage-commoditise) that a company can aim to become linear for innovation, customer focus and efficiency with the growth of the ecosystem.

So when competing in an active market on APIs providing similar activities (such as Infrastructure), you really only need to ask yourself - what are the relative sizes of the active developer ecosystems consuming those APIs?

1. If yours is bigger and growing faster relative to competitors … you're winning. If done correctly, you're likely to become even more innovative, customer focused and efficient than your competitors. Whoot!

2. If yours is smaller but growing faster relative to competitors … you should eventually win. It might take you many years and you run the risk of the larger competitor finding that killer API but if things keep on as is, then that's fine.

3. If yours is smaller and growing slower relative to competitors … then copy their APIs. This is especially true if what we're talking about is a commodity (i.e. we're discussing utility services rather than rental services for a product) because attempts to differentiate on a commodity are likely to be futile - you'll probably end up in a niche area.

In the latter case, it's far better to tag along by co-opting the dominant ecosystem with a view of extending it once you have found a way of making your ecosystem dominant. For example, if you're OpenStack then one advantage you can create over Amazon is by creating a competitive market of OpenStack providers. Hence by adopting the dominant EC2/S3/EBS APIs, your focus should be to co-opt the existing ecosystem and offer it an advantage through a marketplace of providers.

Alas, achieving this would mean giving up on ideas about differentiating around a commodity or providing an on-ramp private cloud targeted towards your own public service. It would also require those involved overcoming their own iterative prisoner's dilema where an individual company attempts to differentiate to their own advantage weakening the system as a whole.

Whether OpenStack or Eucalyptus or CloudStack will achieve this and become dominant, well it all depends upon how well they play the game. At this moment in time, it certainly appears as if Amazon is just running away with it.

I said to myself I would never again write another post about bloody APIs. This subject has bored the industry and myself rigid for the last five years. I retired from Cloud over two years ago to get away from this nonsense on differentiating a commodity and ... well nothing surprises me about cloud. The industry will probably still be arguing over this in five years from now. Fortunately at least Eucalyptus and CloudStack understand things clearly, along with Canonical / Ubuntu and Mark Shuttleworth

Also, before anyone says it ... APIs are of course not all that's necessary for semantic interoperability, it's a starting point. Cloning APIs only get you so far but at least it's further than not cloning APIs.

Also, before anyone says it ... won't copying APIs just force providers into a price war and a spiral down to lowest margin. Absolutely and if you're a hardware provider (e.g. Dell, HP, IBM) then that's exactly what you want.

Why? Well if the market continues as is then you're going to find yourself in a strategically weak position with a single large buyer - Amazon. What any hardware vendor should be looking for is a fragmented market. By causing a price war, you'll increase demand and that's good.

Why? Because Amazon appears to run at high margin (if you compare to the best examples of commodity private cloud). Now Amazon is a shrewd player and so you can assume that the reason why they've been dropping prices but not to the extent possible is because they're controlling demand which seems to be growing at somewhere near a whopping 200%. You can therefore assume that Amazon has a bottleneck - I'd hazard a guess at buying land for data centres. So, if you force a rapid growth in demand by causing a price war then you will naturally fragment the market. This is good for the strategic position of hardware suppliers.

Also, before anyone says it ... yes, that will only work if computing infrastructure is highly elastic which the last thirty years of data says it is.

In general when it comes to APIs, I'm secretly hoping that Amazon will open source the technology behind EC2 / S3 / EBS in order to shut up the rest of the industry. I don't expect them to actually do so (for numerous reasons) but it would great for my own benefit if Amazon just ended these tiresome discussions.