Recommended: Sing it, brah! 5 fabulous songs for developers
JW's Top 5
This is not a title I convey lightly, but Michael Nygard's Release It! deserves
the honor. It's the first book I've ever seen that addresses the issues of building
software that's Production-friendly and sysadmin-approachable. He describes a series
of antipatterns describing a variety of software failures, and offers up a series
of solutions (patterns, if you will) to building software systems designed to combat
said failures.
From the back cover:
Every website project is really an enterprise integration project: the stakes are
high and the projects complex. In this world where good marketing can be fatal to
yor website, where networks are unreliable, and where astronomically unlikely coincidences
happen daily, you need all the help you can get....
You're a whiz at development. But 80% of typical project lifecyle cost can occur in
production--not in development.
Although Michael's personal experience stems mostly from the Java space, the lessons
and stories he offers up are equally relevant to Java, .NET, C++, Ruby, PHP, and any
other language or platform you can imagine. Michael Nygard not only knows the Ten
Fallacies of Enterprise Development, he breathes them.
Go. Now. Buy. Read. Don't write another line of code until you do.