Why Is My Fridge Tweeting Me?
A Simple Explanation of the Internet of Things
Ever wondered what IoT is all about? Me too. That’s why I took a job working for Salesforce’s new IoT cloud a few months back. Here’s a very quick, down-to-earth primer on the topic. By the end of this post, you should be able to cut through the media chatter and understand what IoT is and what it might become.
First, IoT stands for Internet of Things. The name “Internet of Things” can be a bit misleading. IoT doesn’t mean the internet is made of things; rather, it means many things are connected through the Internet. You may have read about everything becoming a “smart” device. Most of the time, that just means that the device can connect to the Internet and send data to someone or some company. The reason everyone is interested in this now is because both sensors and fast internet connections have become very cheap in the last 5 years.
Remember back when you were in school and your parents always reminded you that your Casio graphing calculator had more processing power than the Apollo space shuttle? Smart devices are just the extension of that trend. Sensors and CPUs have become so cheap and so powerful that companies are now putting them in all sorts of stuff you wouldn’t expect so that those “dumb” devices can do cool new things.
One of the problems with IoT media reporting is that it tends to talk in generalities, so I’ll try to be really specific. Let’s talk about refrigerators. It used to be that a fridge just kept our Mac and Cheese cold between meals. But now your fridge can record all sorts of data about how it’s operating and even potentially the food inside. Your fridge might be recording data that looks something like this:
Before sensors, memory, and Internet connections became so fast and so cheap, lots of electronics recorded data like this, but most of it never got stored or used.
Now, however, not only can your fridge record and store that information locally, it can also connect to Fridgeco’s web server every minute and send that data for storage and analysis. Let’s say you own the refrigerator and one night, Fridgeco sees that it’s using a lot of power but the fridge_temp is quite high. Fridgeco could send you a text message to check the door to make sure it’s completely closed. If that doesn’t work, they could call you and suggest you book a repairman to check that it’s working properly.
That all sounds pretty reasonable, but things get really messy and complicated in the real world. Fridgeco might have 300,000 fridges in people’s homes. If each fridge is programmed to upload those 5 pieces of information every minute (which isn’t unreasonable, by the way), that means that Fridgeco needs to be able to store and make sense of 432,000,000 data “events” every day. And then there’s the matter of responding to the information quickly enough to be useful. It wouldn’t help you that much if you got an email from Fridgeco warning you that your fridge might be having problems 2 weeks after you had to pay to have it fixed.
Filtering and responding to that much data quickly turns out to be a very technically challenging problem. Most of the big technology companies are building what are called “IoT platforms,” which are really just large software programs hosted in the cloud. These platforms help other businesses make sense of their data. Fridgeco is probably really good at making fridges but not so good at writing software and making sure their servers can handle a lot of load. So, people like me get hired to design and build products that help software developers and marketing departments at refrigerator companies make money from all the cool things that their engineering departments can now accomplish.
Fridgeco is just one example of real life IoT and it’s interesting, but it’s not what gets newspapers and Wall Street really excited. The real end game is converting traditional product companies into service companies. Products are purchased once but services are purchased again & again. Let’s use Netflix as an example.
You pay Netflix every month for the privilege to watch their movies and TV shows. Fridgeco almost certainly wants to be a service like Netflix. The way that Fridgeco operates is risky: they spend tons of time and money building new fridges and the moment the customer buys one, their relationship is pretty much done. Fridgeco now has to wait 15 years for that fridge to die to make any more money from you. It would be better for Fridgeco if you rented/leased the iFridge from them for a monthly fee. But almost no one wants to rent a fridge for 10 years — it’s more expensive and existing fridges don’t really do anything that warrants a rental.
In terms of what exactly we’re building, the design challenges in the space are extraordinary. Essentially we’re building a website that helps people who don’t program computers to understand complex data. A lot of the information available is difficult to understand, ranging from unintuitive to downright obtuse. The way we’re approaching the problem right now is to build very simple web forms — very much like the kind you put data into when putting in your payment information on Amazon — that help reduce choice and user error by introducing metaphors. For instance, one common problem is how to make messy data from the Fridgeco’s of the world simple and consistent enough to work with. Rather than introduce our users to a bunch of jargon, we built something called a “Summarizer” that guides our customers through the process of taking messy data and making it clean and consistent.
Another large effort is to improve error messaging. This is harder than it sounds when you’re dealing with esoteric topics like partition keys, message brokers, and OAuth refresh tokens. The pragmatic way we’re approaching it so far is to focus on real customers and what we know about how they will use and break the program.
Salesforce, Wall Street, and I all think IoT has the potential to fundamentally transform the world in the way that the Internet did 20 years ago. Factories will create safer products, self driving cars will kill fewer people, hospitals will save more patients, and people will live happier, safer lives. We get there by enabling first businesses and then individuals to easily program and automate the objects around them in a few simple steps. Of course the devil’s in the details, specifically in the “few simple steps,” which is where Salesforce UX is hard at work creating the next big thing.