Here are four truths about input that have changed the way I look at the web.
The last decade has seen an explosion of new types of input. The pace of input innovation is like nothing we’ve seen before.
The mouse gained mass market adoption a full 142 years after the adoption of the keyboard. It took twelve more years before Microsoft popularized the scroll wheel mouse. Nine more years after the scroll wheel before cameras were commonplace in our computers and phones.
Since the iPhone’s release in 2007, every year has brought us new sensors and other forms of input. Our current generation of phones contain everything from barometers to fingerprint sensors.
Much like the web never had a fixed viewport size, input was never tied to a specific form factor. From the earliest days, smartphones have had keyboards and pointers. Even iPhones and iPad, which we normally don’t think of as having different types of input, support bluetooth keyboards and stylus.
In the last few years, we’ve seen Windows devices that defy classification. Are they tablets or laptop computers? It depends on how they are used.
Desktop computers now come with touch screens. And phones like the Nokia Lumia 950 can act as a desktop computer when docked to a monitor. We are truly designing for a continuum not only of screen sizes, but of input as well.
We can no longer make assumptions about input based on screen size or form factor. And frankly, we never should have.
Designing a tailored user experience for a keyboard and mouse is different than designing one for touch. It is tempting to try to detect whether a touch screen is present and then modify our designs accordingly.
This isn’t unique to touch screens. You cannot reliably detect the presence of a physical keyboard or a mouse from within the browser either. And for various privacy and philosophical reasons, browser makers want to make sure that input remains undetectable.
Input is like Schrödinger’s cat. There is an infinite number of types of input until the moment that someone presses a mouse or touches a screen and we
observe that activity.
We cannot know in advance what types of input someone has access to. We can only detect input when it is used and that’s too late for our user interfaces.
One moment, someone could be sitting at a desk with their tablet connected to an external keyboard, mouse and display. The next moment, they could be using the touch screen exclusively.
Unlike Schrödinger’s cat, our input experiments don’t end. Knowing what input is used one moment tells you nothing about what will be used next.