Review by Billy Barron, Delphi Consultants
"Software Craftsmanship: The New Imperative" by Pete McBreen (Addison-Wesley; ISBN 0-201-73386-2) has a tie to JavaMUG. One of our members, Dave Thomas, wrote the foreward. Any of you who know Dave know that he is a brilliant and a nice guy to boot. If you want another opinion of the book, please read his foreward.
This book takes the opposite view of the world that SEI/CMM does. Instead of focusing on the positive, the author focuses on how to develop and maintain top notch programmers. To do this, he talks the craft approach that has been used for centuries in field like blacksmithing.
Mr. McBreen has all kinds of recommendations that will give many IT managers heartburn. For example, he argues against specialization for division of labor reasons. He backs up his ideas with strong arguments that are worth of further thought.
Probably the most radicial idea in the whole book is that top notch developers should be paid more and junior developers be paid less. Basically, pay should be based strictly on productivity. This is something I strongly agree with.
One area however I think he totally missed the boat was on the topic of our user group. He is most or less against new languages. He says "If a language has survived for ten years, there is probably a healthy user community that will ensure its ongoing support or failing that an incentive for the creation of a viable migration path." The odd thing is that I think this applies much more to Java than say FORTRAN, Lisp, and Pascal at this point.
Then he turns around and says talking about how great Ruby is. Nothing wrong with that except it disagrees with the above reasoning. According to his previous statements, he should be recommending something like Perl, which has been around more than 10 years.
Many of the ideas in the latter parts of the book assumes more much job stability than we are likely to ever see in the industry. Without that, the ideas do not work that well.
This book is a valuable addition to literature of the software development industry. It contains many ideas that will hopefully shake up "the process matters not the developers" mentality that many IT managers have. I do not believe in that nor does Pete McBreen. His book is full of how to improve your developers.
Though I disagree with the ideas mentioned in this review, the bulk of the book I do agree with. I consider this book a MUST READ for all developers and managers involved in software development as the ideas have needed to be discussed in the industry for a long time.