Title: User Interface Design for Programmers
Author: Joel Spolsky
Recommendation: A very simple introduction to UI design with amusing anecdotes.
Summary: An 18-chapter explanation of various UI design principles with examples.
Reactions: This is the first book review on this blog dealing with a computer science publication. I don't necessarily think this would be interesting for the general readership, but the blog is all about what I read, so I decided to include the technical reading.
It actually amazed me that this is the first computer-related book I have actually read from beginning to end in last year and half. There are two reasons for it. First is that I get bored half-way through many books and stop reading them and if applicable start using them as references instead. Second is that it's much faster to learn whatever you are trying to learn from Internet articles, code samples, and documentation than by reading a book from cover to cover.
I was only able to finish reading User Interface Design for Programmers because it's thin, has high picture to words ratio, and has plenty of amusing anecdotes. On the other hand, I am straining to think what I learned from the book that I didn't know about before and I am coming up short.
There is some useful information on UI design in the book, but it's very very basic. Rules such as "A user interface is well designed when the program behaves exactly how the user thought it would" and "When you try to use metaphors, try to make them behave in predictable ways like objects in the real world." are not exactly earth-shattering revelations. In many situations the rules are just difficult to implement for your current problem.
Overall, if you've read about any basics of UI design, you can probably pretty safely skip this book unless you are interested in Joel's anecdotes about how various Office UI features and mishaps came around. It might be almost worth reading the book just for that.