What's the big deal? After all, if everything else in your program is correct, having an ellipsis in the About box menu command isn't going to make your program difficult to use, is it? While that is
Inconsistency with other
- Nonstandard mouse and keyboard input
- Nonstandard windows or dialog boxes that require nonstandard responses from the user
- Nonstandard controls or standard controls that behave in nonstandard ways
- Poor integration with the Windows environment
- Confusing and hard-to-understand error messages
- Inadequate accessibility
- Inadequate user assistance
Helping you make sure that your program conforms to what the user expects is exactly what the standards are for. Complying with the standards allows you to create programs that the user already
Conforming to the standards makes your job easier, not harder.
I appreciate the fact that
Designing for the User Experience
When to Violate the Standards
While the guidelines
You are trying to advance state-of-the-art user interface design, and you really know what you are doing. In this case, you should also have a significant budget for
You are creating a
radicallynew kind of program.
- Your program has extraordinary requirements.
You are creating a game or multimedia program that is designed primarily to
entertain, and you feel that conforming to the standard appearance is too boring.
- You have decided that achieving another goal is more important, and you are making a well-thought-out trade-off.
- You made an honest mistake and will fix the problem as soon as possible.
I consider the following to be really bad reasons for not conforming to the standards:
- You don't know what the standards are.
- You prefer to make up your own standards as you go.
- You find conforming to the standards too much trouble.
- You found a really cool ActiveX control on the Internet and want to use it in your program somehow, even though it doesn't conform to the standards.
People often note that Microsoft itself breaks the standards all the time. However, note that they do this to advance the state-of-the-art of Windows user interface design. Also note that they have a substantial budget to design and test new user interface designs. Microsoft typically unveils these new designs with their Office and Internet Explorer products and eventually incorporates them into the standards and other products. If you want to follow Microsoft's latest user interface designs and you have a good reason to, that is fine by me. Typically I plan to adopt them too, but I'm usually not in a big hurry to do so. I prefer to give
Violate the standards to go forward, not backward.