In this book for designers, developers, and product managers, expert developer and user interface designer Lukas Mathis explains how to make usability the cornerstone of every point in your design process, walking you through the necessary steps to plan the design for an application or website, test it, and get usage data after the design is complete. He shows you how to focus your design process on the most important thing: helping people get things done, easily and efficiently. The author presents a collection of valuable tips - organized in four distinct parts, filled with clever illustrations, and supported by fascinating psychological research. He teaches techniques that help you plan and evaluate your user interface design, and inspires you to look at design in a whole new way. He tells you exactly what to look for, and what to avoid, in creating applications and websites that people will be excited to use. Contents......Page 6 Technique Chapters......Page 12 Idea Chapters......Page 13 How the Book Is Organized......Page 15 Just One More Thing......Page 16 Research......Page 17 User Research......Page 19 Job Shadowing and Contextual Interviews......Page 23 Job Shadowing......Page 24 Contextual Interviews......Page 25 Limitations of Contextual Interviews......Page 26 Personas......Page 30 Problems with Personas......Page 31 Creating Personas......Page 32 Working with Personas......Page 33 Personas Do Not Replace User Research......Page 34 Activity-Centered Design......Page 37 Time to Start Working on Documentation......Page 40 Blog Posts......Page 41 Press Releases......Page 42 Talk About Tasks......Page 43 Why Words Matter......Page 46 People Don't Want to Read......Page 47 Say Less......Page 48 No Fluff......Page 49 Sentences Should Have One Obvious Interpretation......Page 50 Talk Like a Human, Not Like a Company......Page 51 Illustrate Your Points......Page 52 Use Words People Understand......Page 53 Test Your Text......Page 54 Display Legible Text......Page 55 Hierarchies in User Interface Design......Page 58 Creating Hierarchical Structure Visually......Page 59 Card Sorting......Page 63 Designing Hierarchies......Page 64 Preparing for a Card Sort......Page 65 Participants......Page 66 Running a Card Sort......Page 67 Running a Remote Card Sort......Page 69 Evaluating the Results......Page 70 Guidelines for Creating Usable Hierarchies......Page 71 What People Think......Page 77 Hiding Implementation Details......Page 79 Leaky Abstractions......Page 82 Designing for Mental Models......Page 83 Design......Page 93 Sketching and Prototyping......Page 95 Flow Diagrams......Page 96 Sketching......Page 97 Mock-ups......Page 99 Tools......Page 101 Paper Prototype Testing......Page 104 Guerilla Paper Prototype Testing......Page 105 Running Full Usability Tests with Paper Prototypes......Page 107 Realism......Page 120 Symbols......Page 121 Virtual Versions of Real-World Objects......Page 123 Replicating Physical Constraints in Digital Products......Page 126 Natural User Interfaces......Page 130 Avoid Gesture Magic......Page 131 Recognizing Gestures......Page 132 Accidental Input......Page 134 Conventions......Page 135 Fitts's Law......Page 138 Screen Edges Have Infinite Size......Page 139 Radial Context Menus Decrease Average Distance......Page 140 Sometimes, Smaller Is Better......Page 143 Explaining State Changes......Page 145 Directing User Attention......Page 146 Help Users Form Suitable Mental Models......Page 148 Learning from Cartoons......Page 150 Identifying Archetypes......Page 155 Behavioral Consistency......Page 156 What to Make Discoverable......Page 159 When to Make Things Discoverable......Page 161 How to Make Things Discoverable......Page 162 Don't Interrupt......Page 165 Make Decisions for Your User......Page 166 Front Load Decisions......Page 167 Interrupt Users Only For Truly Urgent Decisions......Page 168 Instead of Interrupting, Offer Undo......Page 171 Let Users Undo Their Actions......Page 172 Temporary Undo......Page 173 Modes......Page 175 Nonobvious Modes......Page 176 Sticky Modes......Page 180 Quasimodes......Page 181 Have Opinions Instead of Preferences......Page 183 Why Preferences Are Bad......Page 185 How to Avoid Preferences......Page 186 If You Can't Avoid Preferences......Page 187 Hierarchies, Space, Time, and How We Think About the World......Page 189 Hierarchies......Page 190 Space......Page 191 Time......Page 193 A Better Hierarchical System......Page 194 Speed......Page 198 Progress Feedback......Page 199 Perceived Speed......Page 201 Slowing Down......Page 202 Avoiding Features......Page 205 The Five Whys......Page 206 Solve Several Problems with One Change......Page 208 Provide an API and a Plug-in Architecture......Page 209 Listen to Your Users......Page 210 But Don't Listen to Your Users Too Much......Page 211 Not All Users Need to Be Your Users......Page 212 Removing Features......Page 215 Do the Research......Page 216 Provide Alternatives......Page 217 It's Your Product......Page 218 What's Fun?......Page 220 Why Your Product Is Not Like a Game......Page 222 What We Can Learn from Games......Page 225 Fun vs. Usability......Page 231 Implementation......Page 233 Guerilla Usability Testing......Page 235 How Often to Test......Page 236 How Many Testers......Page 237 The Results......Page 238 Usability Testing......Page 240 Usability Tests Don't Have to Be Expensive......Page 241 How Often to Test......Page 242 How Many Testers......Page 243 Who Should Test Your Product?......Page 244 Different Types of Tests......Page 246 Preparing for the Test......Page 247 Running the Test......Page 248 Running the Test......Page 250 Remote Testing......Page 257 Moderated Remote Testing......Page 258 Unmoderated Remote Testing......Page 266 Don't Use Words That Appear in the User Interface......Page 268 Don't Influence the Tester......Page 269 Avoid Stressful Situations......Page 270 User Error Is Design Error......Page 272 Don't Blame Your Users in Your Error Messages......Page 273 No Error, No Blame......Page 275 A/B Testing......Page 279 What's Success?......Page 281 Running the Test......Page 282 Keep in Mind......Page 283 Measure Speed......Page 287 Exit Points......Page 288 User Behavior......Page 289 Unexpected Uses......Page 292 Bad Feedback......Page 293 You're Not Done......Page 295 Acknowledgments......Page 296 Bibliography......Page 299 B......Page 302 D......Page 303 F......Page 304 H......Page 305 L......Page 306 N......Page 307 P......Page 308 S......Page 309 T......Page 310 U......Page 311 W......Page 312 Z......Page 313 Contents 6 Before We Start, a Word 12 Technique Chapters 12 Idea Chapters 13 How the Book Is Organized 15 Just One More Thing 16 Research 17 User Research 19 Job Shadowing and Contextual Interviews 23 Observing Your Audience 24 Job Shadowing 24 Contextual Interviews 25 Remote Shadowing 26 Limitations of Contextual Interviews 26 Personas 30 Problems with Personas 31 Creating Personas 32 Working with Personas 33 Personas Do Not Replace User Research 34 Activity-Centered Design 37 Time to Start Working on Documentation 40 The Manual 41 Blog Posts 41 Screencasts 42 Press Releases 42 Talk About Tasks 43 Text Usability 46 Why Words Matter 46 People Don't Want to Read 47 Say Less 48 Make Text Scannable 49 No Fluff 49 Sentences Should Have One Obvious Interpretation 50 Talk Like a Human, Not Like a Company 51 Illustrate Your Points 52 Use Words People Understand 53 Test Your Text 54 Display Legible Text 55 Hierarchies in User Interface Design 58 Creating Hierarchical Structure Visually 59 Card Sorting 63 Designing Hierarchies 64 Preparing for a Card Sort 65 Participants 66 Running a Card Sort 67 Running a Remote Card Sort 69 Evaluating the Results 70 Guidelines for Creating Usable Hierarchies 71 The Mental Model 77 What People Think 77 Three Different Models 79 Hiding Implementation Details 79 Leaky Abstractions 82 Designing for Mental Models 83 Design 93 Sketching and Prototyping 95 Designing the Structure 96 Flow Diagrams 96 Storyboards 97 Sketching 97 Wireframes 99 Mock-ups 99 Tools 101 Paper Prototype Testing 104 Guerilla Paper Prototype Testing 105 Running Full Usability Tests with Paper Prototypes 107 Realism 120 Symbols 121 Virtual Versions of Real-World Objects 123 Replicating Physical Constraints in Digital Products 126 Natural User Interfaces 130 Avoid Gesture Magic 131 Recognizing Gestures 132 Accidental Input 134 Conventions 135 Fitts's Law 138 Screen Edges Have Infinite Size 139 Radial Context Menus Decrease Average Distance 140 Small Targets Need Margins 143 Sometimes, Smaller Is Better 143 Animations 145 Explaining State Changes 145 Directing User Attention 146 Avoid Unimportant Animations 148 Help Users Form Suitable Mental Models 148 Learning from Cartoons 150 Consistency 155 Identifying Archetypes 155 Behavioral Consistency 156 Discoverability 159 What to Make Discoverable 159 When to Make Things Discoverable 161 How to Make Things Discoverable 162 Don't Interrupt 165 Make Decisions for Your User 166 Front Load Decisions 167 Interrupt Users Only For Truly Urgent Decisions 168 Instead of Interrupting, Offer Undo 171 Let Users Undo Their Actions 172 Temporary Undo 173 Modes 175 Nonobvious Modes 176 Unexpected Modes 180 Sticky Modes 180 Modes Are Not Always Bad 181 Quasimodes 181 Have Opinions Instead of Preferences 183 Why Preferences Are Bad 185 How to Avoid Preferences 186 If You Can't Avoid Preferences 187 Hierarchies, Space, Time, and How We Think About the World 189 Hierarchies 190 Space 191 Time 193 A Better Hierarchical System 194 Speed 198 Responsiveness 199 Progress Feedback 199 Perceived Speed 201 Slowing Down 202 Avoiding Features 205 Remember the User's Goals 206 The Five Whys 206 Instead of Adding a New Feature, Make an Existing Feature More Usable 208 Solve Several Problems with One Change 208 Consider the Cost 209 Make It Invisible 209 Provide an API and a Plug-in Architecture 209 Listen to Your Users 210 But Don't Listen to Your Users Too Much 211 Not All Users Need to Be Your Users 212 Removing Features 215 Do the Research 216 Inform Your Users 217 Provide Alternatives 217 It's Your Product 218 Learning from Video Games 220 What's Fun? 220 Why Your Product Is Not Like a Game 222 What We Can Learn from Games 225 Fun vs. Usability 231 Implementation 233 Guerilla Usability Testing 235 How Often to Test 236 Preparing for the Test 237 How Do You Find Testers? 237 How Many Testers 237 Running the Test 238 The Results 238 Usability Testing 240 Usability Tests Don't Have to Be Expensive 241 How Often to Test 242 How Many Testers 243 Who Should Test Your Product? 244 How to Find Testers 246 Different Types of Tests 246 Preparing for the Test 247 Running the Test 248 Testing in Person 250 Running the Test 250 Remote Testing 257 Moderated Remote Testing 258 Unmoderated Remote Testing 266 How Not to Test: Common Mistakes 268 Don't Use Words That Appear in the User Interface 268 Don't Influence the Tester 269 Avoid Stressful Situations 270 User Error Is Design Error 272 Don't Blame Your Users in Your Error Messages 273 No Error, No Blame 275 A/B Testing 279 When to Do A/B Testing 281 What's Success? 281 Preparing for the Test 282 Running the Test 282 Interpreting the Results 283 Keep in Mind 283 Collecting Usage Data 287 Measure Speed 287 Exit Points 288 Measure Failure 289 User Behavior 289 Dealing with User Feedback 292 Unexpected Uses 292 Bad Feedback 293 You're Not Done 295 Acknowledgments 296 Bibliography 299 Index 302 Symbols 302 A 302 B 302 C 303 D 303 E 304 F 304 G 305 H 305 I 306 J 306 K 306 L 306 M 307 N 307 O 308 P 308 Q 309 R 309 S 309 T 310 U 311 V 312 W 312 X 313 Z 313 Have you ever been angry at your computer or cell phone? Do you sometimes wonder why it's so hard to set your watch to the correct time, or why getting your DVR to record your favorite shows is such a chore? Do you dream of making products that are free of these issues and that your customers can actually figure out how to use? This book shows you how to design applications and websites that people will not only use but will absolutely love. In this book for designers, developers, and product managers, expert developer and user interface designer Lukas Mathis explains how to make usability the cornerstone of every point in your design process, walking you through the necessary steps to plan the design for an application or website, test it, and get usage data after the design is complete. He shows you how to focus your design process on the most important helping people get things done, easily and efficiently. The author presents a collection of valuable tips - organized in four distinct parts, filled with clever illustrations, and supported by fascinating psychological research. He teaches techniques that help you plan and evaluate your user interface design, and inspires you to look at design in a whole new way. He tells you exactly what to look for, and what to avoid, in creating applications and websites that people will be excited to use. Provides information on the design process for user interfaces, covering such topics as job shadowing, text usability, sketching and prototyping, modes, speed, and testing