Designing from Both Sides of the Screen: How Designers and Engineers Can Collaborate to Build Cooperative Technology
is a must-have book for anyone developing user interfaces (UI). The authors define a seemingly simple goal, the Cooperative Principle for Technology: "Those who are designing, building, or managing the development of technology should teach their products to follow the same basic rules of cooperation that people use with each other."
In the first section, they show lots of good and bad UI examples from different devices (PC, PDA, photocopier, even a dashboard). Bad examples include confusing pop-ups, crowded menus and hilarious error messages like this one from Yahoo! Messenger: "You are not currently connected. Please click on Login and then Login to login again."
The book gives succinct design principles like, "Treat Clicks as Sacred". A violation of this would be those dreaded "Do you really mean it" pop-ups. Using a butler as an analogy, they point out that hed soon be out of a job if he questioned, "Madam, are you sure you want me to answer the door?" A Design Guideline says, "If you have an Undo feature, there is no need to break the users flow to ask them whether they really want the program to do what they just asked it to do." Design Guidelines like this appear in the margins throughout the book for easy reference and are gathered in a handy appendix summary.
The second section goes into detail on the creation of the authors own project, Hubbub, a multi-device instant messaging application. Whenever a step in the process reflects the application of a design principle, theres a purple callout in the text. Thus the book itself is an example of a cooperative UI that helps readers keep ideas organised as they read along.
Even if youre not developing user interfaces, youll enjoy this book. There are many moments of recognition when you see just how flawed your favourite, or most hated, everyday application/operating system/Web site is, and how easily it could have been improved. And you may even find the principles of Cooperative Technology informing non-technological areas of your life. The authors make politeness and the anticipation of the needs of others seem logical, feasible and elegant. --Angelynn Grant
About the Author
Ellen Isaacs is a technology design leader at AT&T Labs. She has been designing user interfaces for over 12 years at such companies as Sun Microsystems, Excite@Home, and Electric Communities, where she worked on systems for Palm PDAs, the Web, Windows, and OpenWindows. Active in the human-computer interaction community, Ellen has designed and studied the use of innovative applications that help people communicate, collaborate, and manage their information. She has a Ph.D. in cognitive psychology from Stanford University. Ellen can be reached at firstname.lastname@example.org.
Alan Walendowski is a software engineer at AT&T Labs. He has been writing software for 15 years, working for companies such as Sun Microsystems, 3dfx, IBM, and ComputerVision. A "general purpose" programmer, he has developed device drivers, graphics engines, distributed systems, and user interfaces on various platforms, including PalmOS, Solaris, Linux, and Windows. Alan has a bachelor's degree in computer science from Boston University. He can be reached at email@example.com.
The authors have developed a Web site to continue the discussion started in this book. Please visit www.uidesigns.com to contribute your comments and questions.