I had a great conversation with Jenae Ramos, UX designer and co-organizer of Orlando’s Downtown UX Meetup, talking about design and the Internet of Things. Jenae joked that designing for the screen involves many permutations of “fancy rectangles.” While that is completely selling the complexity of UX design short, I get the point. After years of designing for screens, collectively the millions of professionals in the design community have come up with effective solutions to just about any problem that can appear in pixels. While bad user experiences still abound, and it does take professionals who know what they are doing to help shepherd the business and programming folks through the entire design process (including thinking about the user from time to time), I’m sure it can feel stale coming up with solutions within a rectangular flat plane.
Depending on what type of designer you are, thinking outside the bounds of that screen can either be scary or liberating. For the former, think of it as a field of freshly fallen snow waiting for you to make your mark. These are exciting, new frontiers that go way beyond weighing the pros and cons of a hamburger menu icon. It’s a three-dimensional world with new problems and solutions awaiting around every corner.
To get you started, I’ve outlined five of what I consider the most important UX design decisions you can make when creating a new, totally in-the-real-world Internet of Things solutions.
1. Enhance the Experience
This is the catch-all category. There are many UX design decisions that I can highlight here: don’t make the user worry about battery life, make sure the perceived performance is instantaneous, reduce cognitive load rather than add to it.
If you are trying to justify why you want to connect something to the internet, maybe you are approaching the problem the wrong way round. It can be a fun exercise to ask, “What if my coffee pot were connected to my watch,” and then to figure out why, but maybe the right question should be “How would the perfect coffee pot function?” and then start asking how connecting it to the internet might get you closer to that goal.
It’s a subtle but important difference. If connecting that coffee pot to the internet doesn’t enhance the experience, then don’t do it. I love the internet of things but would never advocate for using it if it fails to make the experience better.
2. Works Locally
No one, not even the Pope (especially not the Pope?) has internet access all the time. When designing for IoT, don’t assume always-on internet connectivity. The ideal woudl be to design for no internet connectivity at first and see how much functionality can be done locally before you need to access the internet. For example, if you are designing an umbrella that glows blue when it’s raining, include a barometer within it in case it can’t check the local weather over the internet.
As an aside, that linked umbrella was created by the writer of Enchanted Objects, David Rose. I highly recommend checking that book out.
Even if we could guarantee that the HTTP-connected present will be the protocol of the future, and we can’t, there’s the very real possibility that the servers you are running now won’t be running forever. Companies that get bought out or go under often leave connected users in the cold, and while that’s manageable when it comes to on-screen experiences, when that little computer is attached to a big device, switching vendors becomes a lot more difficult.
The life cycles of connected devices are too long to assume that users will replace them every two years like a phone. Phone manufacturers can afford to integrate everything, knowing users will keep them for about two years and then replace them with another slab of screen. Things like washing machines and stoves have something like a 5-10 year lifespan, and even that can be extended by frugal buyers. What did your phone look like ten years ago?
Rather than stick users with outdated computing hardware permanently attached to their perfectly serviceable washing machine, good design would include the ability to easily upgrade the processing unit without affecting the rest of the device. Easily as in without tools. Modularizing the design can open possibilities of upgrade sales down the line, so win-win from a business and a consumer perspective.
This also goes for software. Provide a clear, understandable support policy. If you need an idea of what that looks like, use other software companies like Microsoft as an example. They clearly explain how long each of their products are going to be supported, and you should, too. I believe this is a user experience consideration because not knowing when service could just shut off creates anxiety in any knowledgeable consumer. As more and more IoT products end support unexpectedly, you want your users to know exactly how long they have before you stop support. This includes: when they will stop getting over-the-air-updates, when they will have to pay for phone support (if ever), what happens if your company goes under, what kind of uptime guarantee you have for internet-connected services, and what happens when support ends.
I would suggest that when support does end, the code gets open sourced and users are explicitly given permission to hack and upgrade their own devices. If you won’t support the device, give as many tools to the users to allow them to.
APIs. The beautiful three-letter-word that is music to any developer’s ears. Make sure whatever you are building has one, because there are use cases for the product that you are lending your UX experience to that you have never thought about. The true power of the Internet of Things isn’t the one-to-one interactions between your device and that cloud service you manage. It’s the interactions between your device and all the other devices!
Whenever it is possible, and safe, to allow a user to connect, control, and read information from your device, make sure that can happen. Your users will thank you.
Is security a user experience decision? Ask any one of the users that have had their baby monitors hacked. “Hacked” is a loose term when you don’t secure your devices. What I’m trying to say is, design for security from the outset. I don’t think anyone expects user experience designers to be able to implement the latest security measures, but understand what the basics are and advocate for the user.
After the design process, you’ll have come up with something your users are delighted to use every day. All of the unknowns that are so prevalent in today’s technologies have answers, thanks to your efforts. They know they will be able to use it five and ten years from now, even if the company gets bought out. They know that even if the internet as we know it today is supplanted with different protocols or technologies, they will be able to upgrade and extend their experience on their terms, or just let it work locally. They have control of the experience, and while the fact that this thing is internet-connected certainly enhances the experience, it does not control it or limit it. All of these benefits, thanks to your efforts as the IoT User Experience Designer.