Monday, March 24, 2014

APIs enabling Internet of Things

There can never be a dull moment in technology.  It is always changing, making processes more efficient and bringing increasing amount of information to consumers.  From a simple end user perspective, we know how the advent of a search engine and mobile has helped us with decision making by arguably providing relevant information accessible when we need it.

Now that we all have a mobile device and high speed internet at home, we could conclude that we are already well connected to the internet all the time.  How much more connected can we possibly get?  Well, the imagination of several others goes far beyond this.  What if all the devices near us could communicate with each other?  Not just the Smart-TVs, but Smart-Refrigerators, Smart-Thermostats, Smart-Cars, Smart-Washer/Dryer to Smart-EVERYTHING!!  For example: Smart-Thermostats already allow us to adjust the temperature of our home from outside so that the house is cozy by the time we get home. This is my interpretation of the vision behind "Internet of Things (IoT)".  The below graphic tries to make that point. You can see another perspective on IoT on Wired.

Source: WirelessDesignMag

To make this vision a reality, all devices and associated software would essentially need to communicate with each other. The way software programs communicate with each other is through an API (application programming interface).  The API describes how to communicate with a given software entity. The idea of software applications communicating with each other has been around for a while.  However, until recently it was mostly focused within a company's firewall.  Now organizations have begun exposing APIs to the outside world for consumption. 

The adoption of APIs has really taken off as shown above.  A few examples include Google Maps , Facebook, Twitter and eBay. In fact, eBay has more business from people doing transactions with their APIs as opposed to from people interacting with it's website. To be able to successfully expose an API to the world, a few basic necessities are needed.  For example:

  • A developer portal that conveys clearly on how a developer can invoke that API.
  • Metering and billing is also required so that the provider of the API can charge the user accordingly.

These and other management capabilities have been put under the umbrella of API Management. Several technology startups have taken their stab at addressing this challenge. In fact, Gartner and Forrester have published their respective Magic Quadrant and Waves around API Management.  The not so surprising aspect of their reports is that the traditional IT vendors are not the leaders here mostly.  Several upstarts including Layer 7, MuleSoft, Mashery , WSO2 and StrikeIron to name a few have some really compelling offerings in this space that usually offer both on-premise and SaaS versions of their API management suites.  Consolidation has already started to happen with traditional IT vendors acquiring some of these startups.  CA has already acquired Layer 7 and Intel has Mashery now.  

We still have a long way to go before we realize the vision of the Internet of Things outlined earlier, but surely APIs are sowing the seeds for whats to come.