About Face 3: The Essentials of Interaction Design
Deeply relevant and very influential: if you're a software developer, you owe it to your users to buy this book.
The book is organised into three distinct parts, each of which has a rather different tone. The first part is an introduction to "personas" and their goals. Much emphasis is placed on detailed research such as interviews with sample users, which is a fine luxury if you have the resources and time! However, even developers working in smaller teams will find the general principles useful.
The second part is concerned with the overall approach that an application should take. It discusses "posture": whether an application should be "full-screen" and sovereign or an infrequently used utility, and how this changes the top-level design.
This second part includes my favourite chapter, "Eliminating Excise", which is really pretty funny - it points out why we find prompts from Word annoying and why Motorola phones are just plain frustrating. However, the advice to fix these frustrations might be a bit over the top unless you have an infinite development budget: I too would love to have multi-level undos that are persistent across application sessions.
The final part covers specific advice on layouts and controls. It brings together more concrete suggestions based on the previous two parts.
It's quite possible that the ideas in this book influenced the design of applications such as Office 2007 and iTunes. Although few developers have the challenge of designing Web sites or applications for the mass market, the advice in this book is worth considering even for corporate applications. Just watch the budget!