
Home |
More Bloopers |
More Links |
Sample Chapters |
Figures NEW!
The Author |
Table of Contents | Discussion Center | Buy the Book
Table of Contents
Download the Table of Contents as a PDF
Chapter 1: First Principles
Chapter 2: GUI Component Bloopers
Chapter 3: Layout and Appearance Bloopers
Chapter 4: Textual Bloopers
Chapter 5: Interaction Bloopers
Chapter 6: Web Bloopers
Chapter 7: Responsiveness Bloopers
Chapter 8: Management Bloopers
Chapter 9: Software Reviews
Chapter 10: War Stories of a User-Interface Consultant
Introduction
1.1 Principle 1: Focus on the users and their tasks, not the technology
1.1.1 Understand the users
1.1.2 Understand the tasks
1.1.3 Interactive products and services function in a broad context
1.2 Principle 2: Consider function first, presentation later
1.2.1 What "consider function first" does not mean
1.2.2 What "consider function first" does mean
1.2.3 Develop a conceptual model
1.3 Principle 3: Conform to the users' view of the task
1.3.1 Strive for naturalness
1.3.2 Use the users' vocabulary, not your own
1.3.3 Keep program internals inside the program
1.3.4 Find the correct point on the power/complexity trade-off
1.4 Principle 4: Don't complicate the users' task
1.4.1 Common tasks should be easy 36
1.4.2 Don't give users extra problems to solve
1.5 Principle 5: Promote learning
1.5.1 Think "outside-in," not "inside-out"
1.5.2 Consistency, consistency, consistency, but don't be naive about it
1.5.3 Provide a low-risk environment
1.6 Principle 6: Deliver information, not just data
1.6.1 Design displays carefully; get professional help
1.6.2 The screen belongs to the user
1.6.3 Preserve display inertia
1.7 Principle 7: Design for responsiveness
1.7.1 Defining responsiveness and the lack thereof
1.7.2 Responsiveness on the Web: A big deal
1.7.3 Summary of responsiveness design principles
1.8 Principle 8: Try it out on users, then fix it!
1.8.1 Test results can surprise even experienced designers
1.8.2 Schedule time to correct problems found by tests
1.8.3 Testing has two goals: Informational and social
1.8.4 There are tests for every time and purpose
Further reading
Introduction
2.1 Complicating access to functionality
2.1.1 Blooper 1: Dynamic menus
2.1.2 Blooper 2: Duplicate menu items
2.1.3 Blooper 3: Hidden functions
2.1.4 Blooper 4: No keyboard equivalents
2.2 Unconventional application windows
2.2.1 Blooper 5: Confusing primary windows with dialog boxes
2.2.2 Blooper 6: Commands are only on toolbar buttons
2.2.3 Blooper 7: All menubar commands are on toolbar
2.3 Misusing choice controls and tabs
2.3.1 Blooper 8: Confusing checkboxes and radiobuttons
2.3.2 Blooper 9: One-from-N settings with no initial value
2.3.3 Blooper 10: Using a checkbox for a non-ON/OFF setting
2.3.4 Blooper 11: Using command buttons as toggles
2.3.5 Blooper 12: Using tabs as radiobuttons
2.3.6 Blooper 13: Too many tabs
2.4 Providing faulty feedback
2.4.1 Blooper 14: Buttons that trigger on "mouse down"
2.4.2 Blooper 15: Ambiguous selections
2.4.3 Blooper 16: Not showing busy cursor
2.5 Abusing text fields
2.5.1 Blooper 17: Using text fields for read-only data
2.5.2 Blooper 18: Overusing text fields
2.5.3 Blooper 19: Type-in fields that behave abnormally
Further reading
Introduction
3.1 Poor layout and arrangement of windows and dialog boxes
3.1.1 Blooper 20: Mixing dialog box control buttons with content control buttons
3.1.2 Blooper 21: Layout that doesn't reflect usual or natural order of settings
3.1.3 Blooper 22: Poor initial window location
3.2 Goofs with group boxes and separators
3.2.1 Blooper 23: Misusing group boxes
3.2.2 Blooper 24: Inconsistent group box style
3.2.3 Blooper 25: Inconsistent separator style
3.3 Shoddy labeling and spacing
3.3.1 Blooper 26: Radiobuttons spaced too far apart
3.3.2 Blooper 27: Inconsistent property label alignment
3.3.3 Blooper 28: Poor label placement
3.3.4 Blooper 29: Unlabeled scrolling container components
3.4 Troublesome typography and graphic design
3.4.1 Blooper 30: Inconsistent text fonts
3.4.2 Blooper 31: Tiny fonts
3.4.3 Blooper 32: Inactive controls insufficiently grayed out
Further reading
Introduction
4.1 Unprofessional writing
4.1.1 Blooper 33: Inconsistent terminology
4.1.2 Blooper 34: Unclear terminology
4.1.3 Blooper 35: Speaking Geek
4.1.4 Blooper 36: Careless writing
4.2 Unfriendly messages and labels
4.2.1 Blooper 37: Clueless error messages
4.2.2 Blooper 38: Misuse (or nonuse) of "..." on command labels
4.2.3 Blooper 39: Inconsistent use of colons on setting labels
4.2.4 Blooper 40: Tooltips that say the same thing as the visible label
4.3 Misleading window titles
4.3.1 Blooper 41: Same title on different windows
4.3.2 Blooper 42: Window title doesn't match invoking command
Further reading
Introduction
5.1 Allowing implementation to dictate GUI
5.1.1 Blooper 43: Exposing the implementation to users
5.1.2 Blooper 44: Asking users for random numbers
5.1.3 Blooper 45: TTY GUIs
5.2 Presenting information poorly
5.2.1 Blooper 46: Overwhelming users with decisions and detail
5.2.2 Blooper 47: Easily missed information
5.2.3 Blooper 48: Unexpected rearrangement of display
5.2.4 Blooper 49: Instructions that go away too soon
5.3 Setting stumbling blocks for users
5.3.1 Blooper 50: Similar functions with inconsistent user interfaces
5.3.2 Blooper 51: Unnecessary or poorly marked modes
5.3.3 Blooper 52: Installation nightmares
5.4 Diabolical dialog boxes
5.4.1 Blooper 53: Too many levels of dialog boxes
5.4.2 Blooper 54: Dialog boxes that trap users
5.4.3 Blooper 55: Cancel button doesn't cancel
5.4.4 Blooper 56: OK and Cancel do the same thing
Further reading
Introduction
6.1 Web structure and interaction bloopers
6.1.1 Blooper 57: Web site structure reflects organization structure or history
6.1.2 Blooper 58: Back doesn't go where users expect
6.1.3 Blooper 59: Complicating searching
6.2 Web component, layout, and appearance bloopers
6.2.1 Blooper 60: Hidden links
6.2.2 Blooper 61: Links that don't provide enough information
6.2.3 Blooper 62: Buttons that provide no click feedback
6.2.4 Blooper 63: Displaying long lists as very long pages
Further reading
Introduction
7.1 Common responsiveness bloopers (Bloopers 64-75)
7.1.1 Examples of responsiveness bloopers
7.2 Reasons for poor responsiveness
7.2.1 Reason 1: The facts about responsiveness are not widely known
7.2.2 Reason 2: UI designers rarely consider responsiveness during design
7.2.3 Reason 3: Programmers equate responsiveness with performance
7.2.4 Reason 4: Programmers treat user input like machine input
7.2.5 Reason 5: Developers use simple, naive implementations
7.2.6 Reason 6: GUI software tools, components, and platforms are inadequate
7.2.7 Reason 7: Managers hire GUI programmers who lack the required skill
7.3 Avoiding responsiveness bloopers: Design principles
7.3.1 Responsiveness is not the same thing as performance
7.3.2 Processing resources are always limited
7.3.3 The user interface is a real-time interface
7.3.4 All delays are not equal; the software need not do everything immediately
7.3.5 The software need not do tasks in the order in which they were requested
7.3.6 The software need not do everything it was asked to do
7.3.7 Human users are not computer programs
7.4 Avoiding responsiveness bloopers: Techniques
7.4.1 Timely feedback
7.4.2 Parallel problem solution
7.4.3 Queue optimization
7.4.4 Dynamic time management
7.4.5 Summary of responsiveness techniques
7.4.6 Overcoming the obstacles to adoption of responsiveness techniques
Further reading
Introduction
8.1 Counterproductive attitude
8.1.1 Blooper 76: Misunderstanding what user interface professionals do
8.1.2 Blooper 77: Treating user interface as low priority
8.1.3 Blooper 78: Discounting the value of testing and iterative design
8.2 Counterproductive process
8.2.1 Blooper 79: Using poor tools and building blocks
8.2.2 Blooper 80: Anarchic development
8.2.3 Blooper 81: No task domain expertise on the design team
8.2.4 Blooper 82: Giving programmers the fastest computers
Further reading
Introduction
9.1 Eudora Pro 4.0 installation
9.1.1 The ordeal
9.1.2 Conclusions
9.2 Kodak Picture Disk 1.2
9.2.1 Executive summary
9.2.2 Organization
9.2.3 Limitations
9.2.4 General
9.2.5 Startup
9.2.6 Main window
9.2.7 Slideshow dialog box
9.2.8 Slideshow window
9.2.9 Edit Picture window
9.2.10 Print Preview window
9.2.11 Print Setup dialog box
9.2.12 Print Setup Options dialog box
9.2.13 Rotate Picture dialog box
9.2.14 Organize Pictures dialog box
9.2.15 Export dialog box
Introduction
10.1 A Fork in the Tale: Simplifying the controls of an interactive movie game
10.1.1 Background
10.1.2 The analysis
10.1.3 Redesign: Physical actions
10.1.4 Redesign: Speech and thought
10.1.5 Redesign: Evaluation and discussion
10.1.6 Other aspects of the user interface
10.1.7 Lessons and concluding thoughts
10.2 The Flintstones may be in your TV: Designing controls for a set-top box
10.2.1 Job 1: UI review that unexpectedly turned into a UI design
10.2.2 Job 2: UI review to check implementation of design
10.2.3 Job 3: Emergency redesign of a front panel
10.2.4 Job 4: Second UI design
10.2.5 Lessons learned
Appendix: How This Book Was Usability Tested
Bibliography
Index
About the Author
|