Take the notion of software patterns and use it to describe patterns arising in software development, including the software developers and the software projects. Give each a snappy, memorable name, throw in confirming anecdotes based on years of consulting experience, and you have the recipe for this book.
Template zombies work on projects where form trumps content in documents, and filling in each of the required sections in design document templates, rather than useful content, is the measure of success. Adrenaline junkies thrive on stress and deadlines, confusing urgent activity for effective performance. Their teams are always working nights and weekends, and focus on reacting rather than planning.
There are 86 of these patterns; each pattern is covered in one to four pages, and can be read in less than five minutes. They can be read all at once, or several at a time. They can be read in any order, as they are organized only by the authors’ preferences.
Some of them are relatively new, such as “Offshore Follies,” which describes how using offshore development can go wrong. Some have been around as long as humans have been working together, such as “Babel,” which notes the problems of shared understanding of meanings, even when speaking the same language.
Some patterns duplicate or overlap others. “My Cousin Vinnie” notes how vigorous argument can improve ideas. This is just the reverse of “Miss Manners,” which notes the weakness of organizations where any kind of criticism is considered personal and taboo.
Some are positive, representing things a project should strive for to help it succeed. Others are negative, signifying projects headed for failure. Many are immediately recognizable, resulting in grimaces and painful recollections. All have a germ of truth. None of them are truly specific to software projects, but are universal patterns of behavior cast into an information technology (IT) environment. Not all of them will apply to any given project, but some of them surely will.
This is a quick and entertaining read, with the underlying purpose of improving projects. Anyone who has worked or will work on just about any kind of project will find it useful and insightful. If you can’t always emulate the good patterns and avoid the bad, at least you can see if you are in good--or bad--company.