A Stormy Sky of Cranky Clouds

The building hype…
The hype surrounding the Internet of Things (IoT) is building. People are getting excited, almost too excited really, about its potential. We’re oscillating between smart lightbulbs and smart dog collars, not really clear what this all means, yet we’re convinced that something transformative is coming. The Gartner hype cycle charts the rise and inevitable dip of any new technology over time:

At the end of 2012, Gartner puts the IoT just before the Peak of Inflated Expectations and I agree: right now it’s all about potential and crazy projections. People are extrapolating both amazing possibilities as well as equally scary “spying on your kids” scenarios. This is classic early thinking for any new technology, exaggerating both the values and the perils as we slowly, collectively winnow wheat from chaff.

Smartphone symbiosis
What I find surprising is that we’ve been talking about the IoT, in some form, for nearly 20 years. Even after all this time, it is still only on the early part of this curve; a bit like Sisyphus, constantly trudging up the hill, never making it over the top. Smartphones, however, are a companion technology that appears to be pulling the IoT out of this rut. The most obvious impact smartphones have had is the profound lowering of component costs. Chris Anderson, of Wired, calls this “the peace dividend of the smartphone wars” by driving these costs down so strongly over the last few years, these smart devices of IoT can leverage not only the parts, but also companion technologies like bluetooth, wifi and even software stacks.

But an even bigger impact has been in the symbiotic relationship between smart devices and smartphones. Nearly every smart device today comes with a smartphone app to control and configure it. This has allowed these smart devices to lower their costs even further, removing the need for expensive UX driven components like bitmap displays and most physical controls.

Mobile apps encapsulate my data
But this symbiosis comes at a cost. Smartphone apps create a certain rut of their own and will likely hinder rather than improve the trajectory of IoT. I’ve written about the many issues with mobile apps here so I won’t belabor the point. But mobile apps have also introduced a new data storage model so my Withings bathroom scale sends my data this way but my Nest heating controller sends it over that way. Even if all of these companies would let me export my data (many of them don’t) the point is that merging all of this data together is what could really be powerful.

Here’s one example: I was talking to a ‘smart pill bottle’ maker that used the activation of the device to remotely assure relatives that their parent is not only taking their pills, but actually in the house and active. Great stuff but it was a rather primitive measure and only happened once or twice a day. If his service could get access, for example, to all of the appliance data in the house, it could have a much richer picture with a much higher resolution of how safely active the patient actually was.

But let’s not throw stones at these companies, it’s clear that we are in a Catch-22 of sorts. While most people would agree we need an open system for smart devices, the unfortunate reality is that any product today has no choice: they must go it alone and build their own proprietary silo. Companies like Withings, Nest, Thingworx, SmartThings, and Evrythng are all doing the best they can, but this results in each creating their own systems and storage silos.

I’ve written previously about how I worry that we’ve forgotten the very reasons why the internet was so successful: its very openness encouraged an ecosystem much bigger than anything a single company could have done. Not many remember the ‘bad old days’ of Compuserve fighting with AOL and how each had not only their own, proprietary email system but also their own local content. It’s hard to believe that people even thought that was a good idea yet here we are, doing exactly the same thing with the IoT.

Stormy sky of cranky clouds
These are all good companies and many even have parts of their product open sourced. But simple math shows that any centralized system is doomed: billions of devices can’t go through a single service. While each of these companies is just trying to get a basic system working, in the long run, we all need to get our heads wrapped around what it means to have all these systems work towards a common data store.

The single biggest fallacy I want to blow up is this utopian idea that there is this SINGLE thing called ‘The Cloud’. Each company today reinvents their own cloud. The Cloud as a concept is dead and has been for years: we are living within a stormy sky of cranky clouds, all trying to pretend the others don’t exist.

One Ring can’t rule them all
For me the core issue is about scale and openness. The entire world could never run on a single email client, why would we expect the same of any IoT service? It is mathematically naive to think one company will unify the entire world of IoT, yet that is exactly what so many companies are attempting.  You could argue that Facebook is actually just pulling off this type of single service for the world but that misses 2 critical issues: Scale and speed. Facebook maybe able to handle 1-2 billion users but we’re talking about trillions of devices that need low latency communication that would prefer not having a single point of failure. The IoT is a type of communication orders of magnitude more complex.

I’m talking about internet grade, redundant, and even federated openness that lets me choose which service I want to use. You are free to choose a different service but all of our devices work with our selected cloud service. We’ve done something similar before, with email, federating an API that lets many different companies offer an email service, yet still interact with everyone else.

Of course, whenever I talk about this, I almost immediately get a pragmatic eye roll and a slow head shake with comments like:

“Scott, Scott, Scott…. You clearly don’t understand how business works. How could any company open up their users’ data? A company has created a great app and it’s capturing that data, it’s theirs! To give it away would be naive, inviting a race to the bottom.”

To be fair, there is a certain amount of truth to this. It’s a tough world out there and companies look for every advantage they can but there are two reasons why this is approach is short sighted.

1. It’s not their data, it’s mine.
If I use your product and it creates data that represents my life, I want to control it. For you to think this data belongs to your company is an ethical mirage cast by technical constraints. Just because your product is implemented to upload my data to your servers doesn’t make it yours.

The main reason people put up with this is that there is no other choice. The biggest .5% of companies, the Samsungs, the Apples, the Ciscos, all have the motivation and means to attempt a closed ecosystem approach to the IoT.

However, the majority of companies just don’t care to be involved at this level. They just want to jump on the bandwagon. It’s a bit like writing operating systems versus applications. Most companies just want to write an app, almost no one is brazen enough to write an OS. Once we get an open standard to let any company play by these open data rules, the other 99.5%  will create a stampede. The “It’s my data” mantra will become a critical PR issue for companies to grapple with and make their own.

2. It’s always a race to the bottom.
I smile a bit when people think you can avoid a race to the bottom. No industry is immune to this in the long run. Even Apple is running into trouble as smart phones start to surpass the iPhone. It’s innovate or die.  A company that locks up their customers data for competitive advantage is using their customers as human shields.

Progressive companies will get ahead of this curve and realize that the best way forward is to give up ownership of what was never theirs in the first place but offer innovative services on top of that. By letting all of my data, from a variety of devices, be stored together, the overall quality of services will be so much greater.

Two bits of good news
I have no illusions here. What I’m asking for is ambitious: an open data and communication stack for the IoT. We actually don’t have too many positive role models for this type of openness. But keep in mind we were using the web for over a decade before we got fancy AJAX web apps. Let’s cut ourselves some slack and initially start with a thin shim of functionality. There are deep, meaty technical issues to discuss on latency, local vs server processing of messages, and data formats. All thorny issues that won’t be easy to solve. However, let’s make a start with this thin shim, design it with these initial open, federated principles in mind and just get some experience walking down that road.

Recently, two very good bits of news have arrived. The first is that Jawbone, makers of the UP fitness band have opened up a means to sync with Nike+. It’s not a perfect solution but it’s a start, with the VP of Product management calling out for the need for these products to cooperate. The corporate wheels seem to be creaking in this direction.

The second bit of good news is that the folks at Spark are leading the way in this more open systems approach. Their devices have 1) an open RESTful api to control their device 2) an open API to communicate and store data and 3) an open server API. This means that any server can be used. It also means that any device can play. This is a deeply open and redundant system. Are there things missing from Spark? Quite a bit actually! It is just a start, but one founded on the correct, initial approach. I think the world will be watching Spark quite closely as they are experimenting with a fundamentally different business model, one built on top of an open system, not protected by a closed one.

I’m hopeful and encouraged that companies like Jawbone and Spark are starting to move in a more open direction. Each has issues but they understand that we need new models and a fundamentally different model for the IoT to work. My guess is that many companies are beginning to work this way and let’s hope that they start finding each other and building off each others expertise.

Yes, this radically open approach is ambitious. Some might even call it naive. But to think that any single company can have a viable, scalable way forward for the entire IoT seems equally naive.  A stormy sky of cranky clouds is indeed our current, default path forward. But it is not a viable future. Let’s discuss and appreciate that we need an open, federated system and encourage companies and universities that work in this direction.