CHAPTER 7 Designing Adaptive Interfaces
well in less-capable browsers (graceful degradation^4 ). And if we let our stats
deceive us into believing we don’t need to worry about non-JavaScript
users or specific older browsers, we may even call it a day and assume
anyone who visits on those browsers is going to have a bad experience (or
no experience at all).
Obviously, that’s not a very good demonstration of user empathy. We
need to build solid, universal experiences that will work without the bells
and whistles and then add on the flashy bits when we know the browser
can actually use them. Support RGBa colors? Awesome, let’s tweak the look
and feel a bit. Got gesture support? Great, let’s upgrade the interface to
make it work with swipe.
Smartly built interfaces offer a continuum of experience. In case you’re
unfamiliar with the term, a continuum is a collection of steps from point A
to point B where each step varies by a minute degree. For a simple exam-
ple, consider the continuum from a peanut to a Peanut M&M:
- First, there’s the peanut, a natural and tasty snack in its own right.
- Next comes the chocolate-covered peanut, a definite improvement on
the original. The smooth, rich chocolate coating complements the pea-
nut beautifully. - Finally the package is complete: the candy shell provides texture and a
touch of sweetness that rounds out the experience perfectly.
Each step in this continuum from peanut to Peanut M&M is a perfectly
valid snack option, but each (in my opinion at least) is also a significant
improvement on the previous step.
We should strive to create interfaces that operate like this. Each step
in the process of building an interface should add to the experience. In the
end, independent users may have differing experiences of the interface,
but no one is denied access to a good experience.
4 http://en.wikipedia.org/wiki/Fault-tolerant_system