There are a lotof questions about what programming books should be on the programmer's bookshelf. How about non-programming related books that can help you become a better programmer or developer? It would also be interesting to know why they would help.

My first choice would be Sun Tzu's "Art of War" (however cliché), because it made it obvious that the success of any project depends on the strength of its weakest link (and warfare is a big project).

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
If this question can be reworded to fit the rules in the help center, please edit the question.

If you haven't read this, put it on your list. It's still breathtaking over 30 years later. While I am a Strange Loop contains a more complete and convincing argument about where consciousness comes from, GEB explores the realms of symmetry, intelligence and logic systems through the music of Bach, the mathematics of Gödel and the art of Escher. It's as infuriating and entertaining as it sounds.

You don't acquire programming skills directly by this book, but indirectly I'll argue that you do. If you're not very good at dealing with people this will help you with socializing with people that may influence you and your programming skills.

The title of the book may sound a little superficial but it´s not. You learn what others do naturally, and Dale Carnegie encourage you not to be superficial.

This is a book whose title gives entirely the wrong impression. It sounds like it's about how to manipulate people. In fact, it's about how to get along with people and inspire people by being a good, decent person.
–
KyralessaOct 14 '10 at 2:54

This is a great book, and the follow up, "Lila" is just as good. He sets out to create a new "metaphysics", and I think he failed to do that, but by the end of the book he succeeds at specifying an algorithm that codifies western values: given any two things, you can use his "metaphysics of quality" to figure out which one western society values more. I think that's quite the accomplishment, though I'm not sure that's how he sees it.
–
Scott WhitlockOct 30 '10 at 0:20

I'm going to recommend a triplet of books that are about being a programmer (rather than programming), or a leader of programmers. While all are over 30 years since their original publication all are (especially with updates, commentary in their anniversary editions):

It will teach you how to see that wildly disparate things can have underlying patterns in common that can be applied in an entirely different context. The aspect of a CEO's office that makes it a great office can be present in an undergrad's residence room, or missing from your million dollar mansion. Once you get this concept, you can apply it to software, as the Gang of Four did, and you will understand Design Patterns so much more completely. You will also have nicer living and working spaces for the rest of your life.

I'm surprised nobody has suggested any fiction. I would have though reading some fiction every now and then would improve your thinking skills. Anyway, here's my 2c.

The Hitchhiker's Guide to the Galaxy
is a wholly remarkable book. Perhaps
the most remarkable, certainly the
most successful book ever to come out
of the great publishing corporations
of Ursa Minor - of which no Earthman
had ever heard of. More popular than
the Celestial Home Care Omnibus,
better selling than Fifty-Three More
Things to do in Zero Gravity, and more
controversial than Oolon Colluphid's
trilogy of philosophical blockbusters
Where God Went Wrong, Some More of
God's Greatest Mistakes and Who is
this God Person Anyway? It's already
supplanted the Encyclopedia Galactica
as the standard repository of all
knowledge and wisdom, for two
important reasons. First, it's
slightly cheaper; and secondly it has
the words DON'T PANIC printed in
large friendly letters on its cover.

I have to say that the BBC Radiophonic Workshop version of Hitchhikers is absolutely awesome - lots of amazing sound effects, so you are completely engrossed and feel like you are there with Ford, Zaphod, Arthur and Trillian, et al.
–
JBRWilkinsonOct 10 '10 at 19:23

1

Lots of jokes in ICT refer to this book, especially jokes found in old source code.
–
SjoerdJan 10 '11 at 23:08

Though the targeted audience is programmers, non-programmers can read it as well. It just uses some programming metaphors. But the book is really about how the brain functions, and how we can optimize how we use it.

While Strategy of the Dolphin is geared more towards adjusting one's mindset to solving problems arising from dealing with others, applying the adaptive skills in dealing with the absolute world of developer tools will help intuit new ways of addressing problems.

It can help you think logically about your writing. It gives concrete advise about the structure of what you say. It's not a book about grammar mistakes or rules, nor a bunch of platitudes-- which distinguishes itself from most other writing books. [At least that I've seen, and I've read "the classics" too.]

Better writing can help you compose better emails, write write clearer comments, and help you realize what you think it important or not.

Stephen Kings - On Writing, No I'm serious so stick with me! :) I realized that the coding process actually have a lot in coming with the authoring process. First you need to get things down on paper/code, then you need to edit/refactor it. You need to let the book/code "rest" a little sometimes before coming back to it with new realizations etc etc

An excellent reference on 10 patterns for the process of designing homes. Instead of being a catalog of patterns for elements of a home (such as living room, alcove, patio, etc.), it's a catalog of principles that should shape the design of homes; a guide to the factors that are critical to making a home livable for its habitants.

I've translated the 10 design process patterns they catalog to the design of software and it's remarkable how effective they are in helping you focus on the details relevant to big-picture thinking before you get bogged down on the specifics of designing and coding classes.