Steve Krug’s book Don’t Make Me Think, Revisited: A Common Sense Approach to Web (and Mobile) Usability takes an 80-20 approach to user experience design.
Though it does not serve as a textbook for UX design, I would recommend it to any developer who wanted to improve the usability of their products with relatively little effort.
In it, Krug goes over how to organize the material on a web page, how to display links to be most helpful to the user, and how to adjust one’s approach to usability for a mobile device. These are all fantastic things for programmers to understand. Many of the concepts seem obvious (and the author warns readers about this right from the get-go), but the book helps to clarify why we do those things the way we do them.
I want to emphasize three astute points from the book that I suspect could be easily missed. These points merit reiteration for a crowd of programmers: