The (Unfortunate) Rise of Zero Affordance Interfaces
I was talking to a compelling entrepreneur last week who, in an aside in the conversation, was lamenting the increasing popularity of zero affordance interfaces.
What do I mean? Well, an “affordance” is defined quite cleanly on Wikipedia:
An affordance is a quality of an object, or an environment, which allows an individual to perform an action. For example, a knob affords twisting, and perhaps pushing, while a cord affords pulling.
Joel Spolsky does a wonderful job of outlining excellent examples of clear affordance and why they matter.
So, then a “zero affordance” interface is an object that offers no hint to how it is to be used.
A classic example of a “zero affordance” interface in the multi-finger gestures that are possible on the touchpads of modern laptops. Dragging two fingers often offers scrolling functionality in a window. Swiping with four-fingers left or right will offer alternative desktops for complete context switching in a small, quick gesture. These tricks are incredibly effective if you know then, but there are zero affordances that indicate they are available for use when looking down at your laptop.
I take advantage of these zero affordance interfaces often as a power user, once I discover them. But I wish we (collective, as a tech community) would design less of them. They can be very frustrating to users that encounter them by accident. Watching a novice use a modern touchpad is a painful sight at first; the learning curve on multi-touch is steep. It’s even worse for elderly users, many of whom use multiple fingers on a touchpad by mistake, due to poor dexterity or muscle motor control.
All interfaces should strive to be instantly approachable to their target users. And the increasing usage of zero affordance features in touch devices hurts the cause of approachability. When designing a feature that offers no affordance to your users, think twice if the savings in screen real estate is really worth the lack of intuitiveness this trade-off requires.