I have received questions about good books, so I thought I would share some titles with you. First, my absolute favorites, should be mandatory reading for everybody (so go ahead and read them right away):
- “Growing Object-Oriented Programs Guided by Tests” by Steve Freeman and Nat Pryce (Amazon). My bible. :) A fantastic book about test-driven development. I touched upon it in my post Test-Driven Development Done Right.
- “Implementing Lean Software Development: From Concept to Cash” by Mary and Tom Poppendieck (Amazon). An amazing book on continuous improvement and customer focus in your software development organization. See also my post Lean Software Development.
- “Code Complete, 2nd edition” by Steve McConnell (Amazon). A great and practical book on how to write good code.
Really good books (read them when you finish the above :):
- “The Fifth Discipline: The Art & Practice of the Learning Organization” by Peter Senge (Amazon). A fantastic book on how to make people work together so that your organization becomes greater than the sum of the individuals. Not really a software development book, that’s the only reason why it didn’t make it to the “mandatory reading” list. :)
- “Design Patterns: Elements of Reusable Object Oriented Software” by Erich Gamma et. al. (Amazon). The Book on design patterns. A must-have.
- “Peopleware: Productive Projects and Teams” by Tom DeMarco and Timothy Lister (Amazon). A book on what is required to create an productive software development organization. Pretty interesting facts in there.
- “How to Win Friends and Influence People” by Dale Carnegie (Amazon). A classic about how to build good relationships and how to handle people.
- “One Minute Manager” by Kenneth Blanchard and Spencer Johnson (Amazon). A classic about how to manage people in order to get them as happy and productive as possible.