User laziness = user smartness, and why this is really important.

Note: This post might be a little dated. It was published in November 2008.

User research is a funny thing. When you see users rushing through your user interface without stopping to think, or skipping through huge swathes of your lovingly prepared copy, it’s tempting to think of them as lazy sods.

It’s true. Don’t feel guilty about it. That’s exactly what they are. The only thing you are wrong about is the way you are framing it – you are looking at it as a negative thing.

It’s not negative. Laziness is a manifestation of the fundamental nature of human intelligence. When users engage in lazy behaviour online, they are being very smart. It is exactly this type of smartness that has always eluded Artificial Intelligence researchers in their quest to give their creations human-like insight. Be proud!

To quote Philip Johnson Laird (one of my favourite cognitive scientists):

A calculator blindly follows the rules for multiplication or addition. It cannot notice short cuts. If you tell it to work out 200 factorial minus 200 factorial, it will do a lot of unnecessary computation, and perhaps produce an overflow error. The intelligent solution is a far more lazy one.

A chess champion who wins by working through all the possible sequences of moves several steps ahead and choosing the optimal one is not as intelligent as the player who avoids explicitly examining so many cases because he notices some higher level pattern that points directly to the best move.

The implications of this kind of laziness are profound. In particular, noticing short cuts often requires using a far more complex conceptual structure, such as might be needed to discern high level symmetries in the problem space. Compare trying to answer the question ‘Is there a prime number bigger than a billion?’ by searching for one, with Euclid’s lazy approach of proving in a few lines that there is no largest prime number.

Why is laziness important? Given any solvable task for which a finite solution is recognizable, it is possible in principle to find a solution by enumerating all possible actions (or all possible computer programs) and checking them exhaustively until the right one turns up. In practice this is useless because the set of possibilities is too great.

This is the ‘combinatorial explosion’. Any construction involving many choices from a set of options has a potentially huge array of possible constructs to choose from. If you have four choices each with two options the total set of options is sixteen. If you have twenty choices each with six options, the total shoots up to 3,656,158,440,062,976. Clearly exhaustive enumeration is not a general solution. The tree of possible moves in chess is larger than the number of electrons in the Universe (if we are to believe the physicists). So lazy short cuts have to be found.

The concept of productive laziness forms a valuable underpinning for our understanding of theories like information foraging, information scent, scan reading, and generally of user behaviour online. This in turn has a big impact on how we define ‘good’ design.

To put it simply: we are in the business of enabling users to be productively lazy in new and useful ways. When you frame it in this positive light, you are already on the road to success.

5 comments