"When Carl Sonthemimer launched Cuisinart in this country more than a decade ago, he had to do a bit of everything at the fledgling enterprise, including writing the instruction manuals for the newfangled food processor. So the MIT engineering PhD was particularly flattered when he received two letters from customers praising the depth and thoroughness of his instructions…But 'when I called up to thank them, I found out they were (also) engineering PhDs from MIT.'" 5
Goals. People differ in what they're trying to accomplish. Often, these differences are driven by using the same system to perform different jobs. For example, the ideal word processor for someone composing a document is not ideal for someone editing a document someone else has written. (Naïvely, the composer needs to easily insert and move text and to obtain an overview of the document.
The editor is likely to be processing the document serially and to be more concerned with search and localized alteration than insertion and overview. The editor's changes ought to be marked; tracks of the author's changes are likely to get in the way.) The receptionist interacts with the email system almost exclusively by sending short messages to specific individuals; the manager likely reads more (and longer) emails, sends messages to groups, and files and organizes messages.
Task expertise. Users differ in their knowledge of the task at hand. Good interfaces give guidance to task novices; poor interfaces obstruct experts with unnecessary kibitzing.
System expertise. Similarly, users differ in their knowledge of the device they're using. Again, an ideal interface teaches as much of the system as desired to novices, while not interfering with experts' actions.
User preferences. Some people prefer to do things a certain way. On one hand, it's better if the machine can do it their way, rather than forcing users to think its way. For example, I remember a program editor that required the user to specify an operation's arguments before the operation itself (that is, "tell me what you want to insert, and then tell me where to insert it"). I found this difficult because I usually decide I want to do an insertion before I've composed what it is I'm going to add. Forced to compose first, I forget where it was going to go and what I was going to do with it there. However, I know at least one other person who assured me that he couldn't imagine editing any other way.
On the other hand, it has been argued that individual customization is a barrier to interpersonal interaction — with customization, you can't work effectively on a device with another person, easily guide them through debugging a problem, or walk up to another system and have it behave in a predictable fashion.
Mental differences. Not everyone thinks like a computer-science geek. Systems should therefore present and accept information in the manner that matches the user's mental orientation.