Favorite Developer Books
Updated 29 Dec 2009
I've written a few posts recently about various books, and recently while interviewing a candidate for Nimble Software Professionals it occurred to me that for an experienced developer (e.g. not a new grad out of college), asking what their favorite (or most recently read) programming book is could tell a lot about them as a developer. If their favorite book is something like Expert Programming in 21 Hours (not a real title) that paints a very different picture than if their favorite book is Design Patterns or a similarly respected title.
Of course, flipping the question around, I started to think about what I would list among my own favorites, and naturally that seemed like a reasonable blog post, so here goes. Anyone interested in a wider poll of favorites should check out this StackOverflow thread (and this one).
Steve's Top 4 For Developers
Agile Principles, Patterns, and Practices in C# is a must-read for any C# developer. Some of the concepts are repeated in Clean Code, below, but it's certainly worth reading both books. This book essentially defines how modern software development should be performed.
Clean Code replaces Code Complete (below) as my required book on the micro- aspects of writing good code. Code Complete remains in my top 4 as an excellent book in its own right, but Clean Code is shorter and focuses more on the pieces that I find to be most important.
|
|
This book is also required reading for all of NimblePros' developers. I really wish I had read it about four years ago when it was first published (and sooner than that if he'd written it sooner) as it fundamentally changed my approach to developing flexible and maintainable software. I've reviewed it elsewhere more completely, but it's good. The title stinks, though - don't let that throw you.
|
|
A classic. Should be a companion text in intro to programming courses around the country, I think. This book will help you to write better code at the method level and below. It's low level but extremely practical and while you may not agree with or adopt 100% of the practices it recommends, you'll be a better programmer for having read McConnel's analysis and then made an informed choice about how you do things.
Note that I don't really care what language you're writing in - these books are just fantastic for any software developer.
Steve's Top 2 For Project Managers
|
|
I've written a few blog posts based on this book recently, and I have a few more notes that will turn into future blog posts. I think this book has given me more blog fodder than any other I've read recently. I still need to write a full review, but it's definitely worth a read if you're interested in improving the overall productivity of your development team.
|
|
Another classic title, this one is great for technical managers of all sorts who want to have productive teams. If your organization is one in which people say (or believe) they like working early in the morning / late at night / on weekends because "it's the only time they can get real work done" then you really should read (and act on) this book.
Also Good
|
|
Working Effectively with Legacy Code (Robert C. Martin Series)
Code Complete: A Practical Handbook of Software Construction
Lean Software Development: An Agile Toolkit (Agile Software Development Series)
Peopleware: Productive Projects and Teams (Second Edition)
Domain-Driven Design: Tackling Complexity in the Heart of Software
4 Comments
Andrei Rinea said
I bought three of them (the first two and the last one) and all of them are quite amazing.
So far The Pragmatic Programmer was the one I liked most... Still reading Code Complete.
Developer links said
Software Engineering RadioPodcasts on current professional programming practices and technologies. Steve Smith's favorite developer booksRecommendations for developers. CodeBetter.com...
Developer links said
Steve Smith's favorite developer booksRecommendations for developers. CodeBetter.com...
Speaking at Kent State University ACM Chapter said
I’m giving a talk this week at Kent State University on ASP.NET MVC and SOLID principles .  It will be at 3:45pm on Wednesday, April 8th, in room 228 of the Match and Comp Sci building. It’s sort of a dry run for a session I’ll be giving at TechEd