So for starters, technical interoperability between different systems, at the moment, is not great. It is improving, but we have this situation where people will often end up with a basket of apps. So there’ll be an app for the lighting. There’ll be an app for the heating. There’ll be an app for, perhaps, an appliance. And those things are not necessarily yet talking to each other. There’s lots of work going on to fix that. When you have 50 or 60 devices in your house, you’ve got lots of different potential ways for those things to interrelate to one another. So you might think about them in terms of which rooms they’re in.
You might think about them in terms of which activities you need them for, like watching a film or things that should be turned off when I go to bed to save energy. And those interrelationships– really, we talk about the grand dream of the Internet of Things, is that all the things talk to each other and can anticipate your needs. But in order for things to coordinate in common sense ways, they have to be able to describe themselves a little bit to the system. And the system has to have some idea of what it is that we might want to do with them. So at the moment, there is work going on around data models for describing devices.
But it’s at a relatively simple level in terms of talking about this is a light switch. It can be on or off, or a certain percentage dimmed. And that means that the system then goes, I don’t care who made that. I know what I can do with this thing. But then there are more levels of data, really, that we have to think about on top of that, such as metadata that describes where that device is and how it’s particularly being used in context and who owns it, and what the activities are that are happening around that, which is quite difficult in a home context.
Because there’s lots of stuff that happens in the home, and it’s a very complicated social context, often. And people really don’t like you getting things wrong. They don’t like you turning on sprinklers when they’re trying to have a barbecue, and that kind of stuff. So getting that picture right is going to require quite a lot of data modelling work. And I think it’s going to be interesting to see where that goes in the near future. And I would argue that that is actually as much a part of designing a great UX (user experience), as sticking the user interface on top.
Because if we haven’t modelled people’s needs into that data modelling, we’re not going to be able to make the devices behave in the ways that people expect them to do. And the other thing I think is really interesting is the idea that distributing functionality between different devices, and having lots of things that you have to keep track of and coordinate, is, in a way, requiring more of us to think like programmers than like end users of the kinds of computer systems that most of us are used to.
So for 30 years in interface design, we’ve had this concept of direct manipulation, which is the idea that you can– it’s a bit like WYSIWYG(what you see is what you get) word processors, as opposed to the old green screen systems. You can see things in front of you, and you can manipulate them. You can see the impact immediately, and you can undo that action if it’s not what you want. But a lot of connected products sell themselves on benefits of either remote control. So you can turn the heating off when you’ve gone on holiday and realised you’ve forgotten to turn it down, or automation.
So you can set things up to run patterns of things to happen at a future date. And so that creates this disconnect between my idea of what it is I want to do, and what’s actually happening. I can’t necessarily see that the thing I’ve actioned, the light I programmed to turn on remotely has actually woken somebody up. So people are really bad at anticipating their future needs and at thinking about all the things that might be happening in a different location.
And there’s a lot of configuration work involved in anticipating those things and thinking about the different tools and devices you have to achieve that, and figuring out exactly how to configure them; and then working out when things might not run exactly as smoothly as you thought. And is this going to conflict with this other sys– is this thing that turns lights on to keep the house secure going to conflict with this other system that’s trying to turn things off in order to save energy?
And so I think if we’re not careful, we get into this extremely complicated pattern, where things that people thought were– people thought their homes were quite easy to live in, and suddenly, we’ve turned them into a programming exercise, with debugging and things going wrong. And that’s not necessarily a bad thing. Some people will love that. But I think it’s not necessarily for everybody, so we have to be careful that we are actually making people’s lives easier and not just creating a whole load of configuration overhead.