Since this list has librarians, hard core programmers and hybrid librarian programmers on it, this is probably a good place to ask this sort of question.
I'm looking for some book recommendations. I've read a lot of technical books on how to work with specific kinds of technology, read a lot of online technical "how tos" and that has been good as far as it goes. But, technology changes too fast to be wed to one particular programming language, database technology, metadata standard, etc. I'm interested in finding books that speak to the issues of programming methodology, design principles, lessons learned, etc. that transcend any particular programming technology. Are there good books that distill the wisdom and experience of veteran developers and /or communicate best practices for things like design patterns, overall software architecture, learning from mistakes, the developer mindset and such things?
Could you recommend perhaps the top three or four books you've read in these areas?
University of Notre Dame