A couple of years ago I was gifted some books from my wishlist, recommended by Jeff Atwood, one of the guys who made Stack Overflow, a very effective Q&A website for programmers. At the time, I wanted to learn more about how to make good user interfaces for apps, but the books turned out to be much more interesting than that.
One of the books was Don Norman's the Design of Everyday Things. This is a book that complains about the fact that doors are often poorly designed, but it's also an introduction to the philosophy of Human Centred Design. Norman also provides a primer on some of the theory behind industrial design, such as signifiers and constraints, which are useful for analysing a design problem, but his most profound insight is this: the things that we make are intended to be used by humans, therefore we must design things that are compatible with humans.
That may seem stupidly obvious, and then you think about some of the stupid shit that gets made. Norman has a fixation on doors: doors that appear to open by pulling when they must be pushed; doors that are completely blank and must be opened by trial and error; airlocks with pairs of doors that open in opposite directions. Doors that are labelled "push" and "pull" because it's too hard to tell otherwise. Such a simple, everyday device, but a constant source of frustration. He also takes aim at a variety of other devices.
Why the hell is it so hard to make things that are easy to people to use? Partly it's because good design is sacrificed in order to produce a cheaper product, partly it's because designers and their clients are more interested in satisfying their own creative desires than making a useful thing. But most importantly to me, it's because the people who design and make things just expect people to change to suit their product.
As users of things, we also blame ourselves for being bad at using a thing. This is another of Norman's insights: he doesn't give a fuck about being bad at using a thing, because he knows he's a smart guy. If the thing is hard to use, it's probably the thing's fault. I'm actually living one of Norman's examples: I constantly find myself turning on the wrong lights in my house because the arrangement of the switches on the panel bears no relation to the arrangement of the lights on the ceiling. (That is, there lacks a natural mapping between the inputs and the outputs.) Am I a fucking idiot, or are electricians fucking cheap and lazy? I'm blaming the sparkies who make absolutely zero consideration for the people who are actually using the things they install, and I'm blaming the manufacturer who only sells light switch panels in one configuration. (But then, I'm also a cheapskate because I'm not paying an electrician to install more intuitive light switch panels.)
Norman also offers some more principles that help to identify bad designs
- if your thing requires a lot of trial and error to use properly, you might have a bad design.
- if a user has to learn a bunch of shit in order to use your thing--or worse, read a manual--then your thing isn't doing its job very well.
There are exceptions and degrees and whatnot, but not that many.
For instance, a computer-savvy person might be a highly productive power user, pumping out spreadsheets, code or blog articles, but they have also invested a ton of time learning a specialised set of skills to use a thing that really isn't compatible with humans' natural strengths. Keyboards, (mouse) pointers, password authentication and the modern desktop environment are all half-baked designs. Cars are also a woefully unfinished product: humans should not be driving cars, trucks, or anything, and they prove this constantly by crashing the fucking things - it's a job for an autopilot. Both computers and cars are everyday things that humans have to work very hard to use without difficulty.
Now, this subject matter is very interesting when you apply it to things like gadgets and apps, but it gets really interesting when you apply it to systems. By systems, I mean the way that we do things like business operations or interface with government services. A lot of these systems seem to suffer from a massive failure to design for humans, either on purpose or through sheer incompetence. I have about eleventy such things I've found at my workplace, but then my workplace is like an episode of Gordon Ramsay's Kitchen Nightmares without a kitchen.
One example that sticks in my mind is the emergency room at hospitals. In Australia, the emergency room is free: you don't have to pay to see a doctor there, but the staff will prioritise you based on how sick you seem to be. I've personally been to the emergency room for various reasons: I nearly killed myself at school gymnastics; I went into shock after going on a roller-coaster; I swallowed a large coin; I tore my anterior cruciate ligament. (These are not in chronological order.) Arguably, only the first one required an emergency room visit, and I was delivered there by ambulance. The characteristic example, however, is the complaint that people go to the emergency room when they (or their children) merely have flu symptoms. (I'm talking about during normal times, not during pandemic times.) Some people have looked at this problem and said "the visitors are to blame for using the emergency room for non-emergencies; they should have availed themselves of other services instead". I contend that this is bullshit. The system is to blame for not accommodating real human behaviour, particularly humans under stress. Don't blame the user, blame the design, and make a better one.
This takes to me another point: In a democracy, everyone's a wannabe designer. There are some awful ideas on how to design a better emergency room (e.g. "make people pay a fee so they only go there for actual emergencies"), but that's just one example. Discussions about employment, housing, healthcare, and law enforcement all feature pundits, commentators and politicians offering terrible solutions that seem like they are designed with a totally different species in mind. Good design of anything is a skill that has to be learned and practised, you can't take a shortcut with so-called "common sense".
Here's a heuristic I'm working on: if your idea requires humans to do things that humans are not good at doing, then your idea might just suck.
Here's another: Try blaming the thing before you blame the user. You might actually make something better, for once.
One of the books was Don Norman's the Design of Everyday Things. This is a book that complains about the fact that doors are often poorly designed, but it's also an introduction to the philosophy of Human Centred Design. Norman also provides a primer on some of the theory behind industrial design, such as signifiers and constraints, which are useful for analysing a design problem, but his most profound insight is this: the things that we make are intended to be used by humans, therefore we must design things that are compatible with humans.
That may seem stupidly obvious, and then you think about some of the stupid shit that gets made. Norman has a fixation on doors: doors that appear to open by pulling when they must be pushed; doors that are completely blank and must be opened by trial and error; airlocks with pairs of doors that open in opposite directions. Doors that are labelled "push" and "pull" because it's too hard to tell otherwise. Such a simple, everyday device, but a constant source of frustration. He also takes aim at a variety of other devices.
Why the hell is it so hard to make things that are easy to people to use? Partly it's because good design is sacrificed in order to produce a cheaper product, partly it's because designers and their clients are more interested in satisfying their own creative desires than making a useful thing. But most importantly to me, it's because the people who design and make things just expect people to change to suit their product.
As users of things, we also blame ourselves for being bad at using a thing. This is another of Norman's insights: he doesn't give a fuck about being bad at using a thing, because he knows he's a smart guy. If the thing is hard to use, it's probably the thing's fault. I'm actually living one of Norman's examples: I constantly find myself turning on the wrong lights in my house because the arrangement of the switches on the panel bears no relation to the arrangement of the lights on the ceiling. (That is, there lacks a natural mapping between the inputs and the outputs.) Am I a fucking idiot, or are electricians fucking cheap and lazy? I'm blaming the sparkies who make absolutely zero consideration for the people who are actually using the things they install, and I'm blaming the manufacturer who only sells light switch panels in one configuration. (But then, I'm also a cheapskate because I'm not paying an electrician to install more intuitive light switch panels.)
Norman also offers some more principles that help to identify bad designs
- if your thing requires a lot of trial and error to use properly, you might have a bad design.
- if a user has to learn a bunch of shit in order to use your thing--or worse, read a manual--then your thing isn't doing its job very well.
There are exceptions and degrees and whatnot, but not that many.
For instance, a computer-savvy person might be a highly productive power user, pumping out spreadsheets, code or blog articles, but they have also invested a ton of time learning a specialised set of skills to use a thing that really isn't compatible with humans' natural strengths. Keyboards, (mouse) pointers, password authentication and the modern desktop environment are all half-baked designs. Cars are also a woefully unfinished product: humans should not be driving cars, trucks, or anything, and they prove this constantly by crashing the fucking things - it's a job for an autopilot. Both computers and cars are everyday things that humans have to work very hard to use without difficulty.
Now, this subject matter is very interesting when you apply it to things like gadgets and apps, but it gets really interesting when you apply it to systems. By systems, I mean the way that we do things like business operations or interface with government services. A lot of these systems seem to suffer from a massive failure to design for humans, either on purpose or through sheer incompetence. I have about eleventy such things I've found at my workplace, but then my workplace is like an episode of Gordon Ramsay's Kitchen Nightmares without a kitchen.
One example that sticks in my mind is the emergency room at hospitals. In Australia, the emergency room is free: you don't have to pay to see a doctor there, but the staff will prioritise you based on how sick you seem to be. I've personally been to the emergency room for various reasons: I nearly killed myself at school gymnastics; I went into shock after going on a roller-coaster; I swallowed a large coin; I tore my anterior cruciate ligament. (These are not in chronological order.) Arguably, only the first one required an emergency room visit, and I was delivered there by ambulance. The characteristic example, however, is the complaint that people go to the emergency room when they (or their children) merely have flu symptoms. (I'm talking about during normal times, not during pandemic times.) Some people have looked at this problem and said "the visitors are to blame for using the emergency room for non-emergencies; they should have availed themselves of other services instead". I contend that this is bullshit. The system is to blame for not accommodating real human behaviour, particularly humans under stress. Don't blame the user, blame the design, and make a better one.
This takes to me another point: In a democracy, everyone's a wannabe designer. There are some awful ideas on how to design a better emergency room (e.g. "make people pay a fee so they only go there for actual emergencies"), but that's just one example. Discussions about employment, housing, healthcare, and law enforcement all feature pundits, commentators and politicians offering terrible solutions that seem like they are designed with a totally different species in mind. Good design of anything is a skill that has to be learned and practised, you can't take a shortcut with so-called "common sense".
Here's a heuristic I'm working on: if your idea requires humans to do things that humans are not good at doing, then your idea might just suck.
Here's another: Try blaming the thing before you blame the user. You might actually make something better, for once.