I’ve been steadily working my way through a re-read of Don Norman’s classic The Design Of Everyday Things (holiday are great for reading for me). A lot of it was familiar, but I was reminded of a few things that I thought I’d share.
Progressive Enhancement (PE) and User-Centered Design (UCD) are really tightly connected. They’re both about focusing on the needs and capabilities of the user. They’re both about being careful: planning for when things go wrong.
Something went wrong
The fifth chapter, “Human error? No, bad design” in particular had me nodding my head a lot. It’s all about asking “how do we handle when things go wrong?” and thinking about that often when designing.
This is very much the thought process that goes into building with PE. There a lot more ways that things can go wrong that there are ways that it can go right. If build based on the best case scenario, we could end up with a lot of unhappy users.
Human, not machine
Norman’s notes how some badly designed systems treat people like computers: they assume easy pick-up from interruptions, the ability to concentrate perfectly for long periods of time, or high levels of precision. The one that particularly rang my bell was interruptions.
In terms of PE and UCD this made me think of two things: multi-device usage and network connection.
We know that people use multiple devices throughout the day, often for stages of the same task. That means we need to make it easy to resume activities from another device.
We know that the network connection and speed that a person has access to will be varied, and often bad. This means we need to plan for spotty network connections, and provide offline access where can (and sync up data when a connection is available).
In the book, Norman says that “the best solution to the problem of designing for everyone is flexibility”, and this what PE (and Responsive Web Design) does for the web.
(If you’ve made it all the way to the end of this post, heres’s a present: the original, slightly odd, UCD-PE-BFFs picture.)