Thursday, November 13, 2008

Living With Bad Systems

When a system is first created, it's easy to find criticism. People new to the system see its behavior constantly colliding with their expectations, and it's a goldmine of ideas for making the system more intuitive and easier to use.

After a system has been around for a while, though, people start to get used to its little problems and quirks, and I think it gets harder to find good criticism about the larger scale issues.

People are so good at learning to live with inconveniences that after a certain point they don't complain about the barn-sized flaws in a system's design or behavior. Things like poor performance, unnecessary redundancies, poor integration with external systems -- after a while, people don't complain because That's Just The Way Things Work (tm).

To illustrate my point a little, follow me on a magical journey to an imaginary men's room. Can you feel the imaginary tile and smell the imaginary urinal cakes? Good. Now, look over towards the imaginary sinks.

Many public restrooms these days use motion detectors to turn the sinks on and off. You probably know what I'm talking about -- a small black sensor sits right under the faucet, and when someone's hands appear in front of it, it turns the water on. Similar setups are usually on the soap and paper towel dispensers.

The motion detectors are far from perfect, and most of the time you have to work a bit to get the water or soap or paper towels to come out. So, in order to wash and dry your hands, you sometimes spend a good two minutes trying to convince some machine, some harsh mechanical eye, that you do, in fact, exist. You stand in front of the motion detector, waving your hands around foolishly, doing little dances, saying, "I'm here! I'm real!"

And you know what? Sometimes you fail. You fail to convince a machine that you're real, and no water or soap or paper towels come out. It's downright Orwellian.

So if these machines routinely and blatantly deny your very existence, and they are completely accepted and commonplace, how many other egregious behaviors in systems across the world must be going unreported at this very moment?

If you take a step back and look at your system's design from afar, can you spot any gaping problems that everyone is just used to dealing with?

No comments: