OdeToCode IC Logo

Inspirational Books In Software Development

Wednesday, October 7, 2009

A few weeks ago I was asking people if they’ve ever read an inspiring book about software development. There are many great books that are educational books. They show you how to build the latest whizz-bang application using the version 2.0 of the whizz-banger framework. An inspirational book, in my mind, transcends any specific technology and makes you think differently about how you approach your job.

Two books came up as answers time and time again.

Extreme Programming Explained: Embrace Change by Kent Beck

extreme programming

The original edition of this book was published in October of 1999 – one decade ago. Ten years! That’s like 100 years of software time. The book turned the rules of engagement for software development around. We don’t need big design up front. Software shouldn’t be hard to change – ever! Having an enterprise architect fly in to meet with the team 2 days of every week and draw arrows on the conference room whiteboard does more harm than good.

Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin

clean code

Clean Code is a great book. Many people told me the book has inspired them to be better developers. I personally didn’t find the book inspiring, but I did find it extremely thought provoking. So provoking I’ve read it twice and even put together a book club to meet and discuss the book with other people (we meet for lunch every other Thursday at the food court in the mall of Columbia, MD). Sometimes we agree with Uncle Bob, and sometimes not – but either way we have to think about we do every day from a different perspective.

What books would you add to the list?

Gravatar Jonathan Thursday, October 8, 2009
There's a reason they call it the "Blue Bible"--you've gotta have Domain-Driven Design on that list.
Gravatar Mike Thursday, October 8, 2009
The classics...
Code Complete by Steve McConnell
The Pragmatic Programmer by Andy Hunt and Dave Thomas

Those two were the "jumping points" for me to really care about the "craft" of software.
Gravatar Simon Segal Saturday, October 10, 2009
Not a book - but the Agile Manfesto rated for me.
Gravatar Scott Allen Monday, October 12, 2009
@Simon, @Mike, @Johnathon - all good suggestions!
Gravatar Ivan Korneliuk Monday, October 12, 2009
"Object-Oriented Software Construction" by Bertrand Meyer is one of my favorite books.

"Refactoring: Improving the Design of Existing Code" by Martin Fowler and others and the "Design Patterns" by the Gang of Four had a good influence on me.
Gravatar Raghvendra Tripathi Tuesday, October 27, 2009
I enjoyed Bruce Tate's "Bitter Java" in a way that I haven't enjoyed a computer book in years. The approach was unique, and the material was well presented.
Gravatar Rotem Wednesday, October 28, 2009
Have you looked at "Agile Principles, Patterns, and Practices in C#" by Robert C. Martin?

How does it compare with "Clean Code"?
Gravatar Scott Allen Wednesday, October 28, 2009
I have - and there is a *lot* of overlap. Both talk about refactoring and cohesion and SOLID, etc. etc. (In fact, there is a lot of overlap inside Clean Code itself).

Clean Code obviously has more details on exceptions, formatting, commenting, and little details about writing code and reading code.

APPPC# has more details on planning, processes, and human interaction.

B Friday, April 2, 2010
"The Design of Everyday Things" by Donald A. Norman. It's not a technical book, but it targets engineers/designers and certainly is thought provoking.
Comments are closed.