If you don’t know who the author if this article is, it’s okay. Just know that this man is behind everything to see here. Yeah, it’s the guy that has a CSS hack named after him… You know someone’s important when you’ve got that happening for you. Now, let me continue to the point of the post.
Three Hypotheses of Human Interface Design
Hypothesis 1: Human interface cognitive load is proportional to the number of clicks/keystrokes/gestures
For me, this hypothesis comes to life through the wonders of Quicksilver and keyboard shortcut. With Quicksilver, my fingers have less reason to leave the keyboard. Maybe one day… we’ll have bitmapped keyboards (iPhone, anybody?)
Hypothesis 2: Human interface cognitive load is inversely proportional to interface latency
In other words: Make the user feel smarter than the computer at all times. Sure, the computer is able to calculate much much better and faster than the average human being… but what it comes down to is making the user feel like he’s in control. Regardless of how fast he can type or not type, the user shouldn’t be the one that’s waiting: The computer should be the servant to the master user, never EVER the other way around.
I hate you, beachballs and hourglasses.
Hypothesis 3: The usability of an interface is inversely geometrically proportional to its cognitive load
The better the interface, the easier it’ll be to use, and people will want to use it. It’s as if the system is calling out to the user, “Use me, and feel better about yourself.”
This is the case with me and Apple products: I want to not only use them, I want to lick them.
Conclusions
What does this all mean?
When designing human computer interfaces (including web UIs):
- Minimize the number of text fields in your interfaces down to the absolute minimum necessary.
- Minimize the number of click/keystrokes/gestures necessary to accomplish actions in your interface.
- Make your interface as responsive as possible - minimize the latency of each and every action a user might take in your interface.
And be prepared for both lots of users, and frequent users.
I’m going to take these points to heart in designing my next web application’s interface. I want things to be customizable, but at the same time, I don’t want to impede the user at all in his or her quest to achieve UI heaven.
Simplify. Simplify. Simplify.