Updated to include our first review of Java Tools for eXtreme Programming. These books are all about agile software development, even those written before the term existed. They're all worth having and reading, more than once. Dig in!

In this review:


Java Tools for eXtreme Programming

Richard Hightower and Nicholas Lesiecki agile

review by Mike Clark, of Clarkware.com

A toolbox brimming with trusty tools can help teams deliver projects faster, and any budget can afford good-quality open source tools. This book effectively demonstrates how to use Ant, JUnit, Cactus, HttpUnit, and JUnitPerf to make the XP practices of automated testing and continuous integration possible. Each of these tools is dutifully put to work automating the build and test cycle of a sample J2EE application. Don't let the extreme title or the fluorescent cover frighten you - it's the price of admission for a ride on the XP bandwagon. This book should appeal to XPers and non-XPers alike who recognize that automated testing and continuous integration are good things for any project. To be fair, the book recycles a lot of good information already available online, but packages it into a cohesive, albeit gravity challenged, format. And although it includes simple examples for using every tool, those unfamiliar with J2EE will likely find the lengthy case study a bit heavy-handed and seek other references. The book is a good introduction for the uninitiated and a valuable reference for those plying their trade with these tools. Don't miss an opportunity to easily automate your Java project and spend more time delivering business value!

Agile Software Development

Alistair CockburnAlistair is software development's archaeologist, or maybe I mean ethnographer. Whichever I mean, Alistair visits real projects and interviews them. He recommends methods based on two criteria: did the project ship, and would the team use the same method again. That, folks, is about as close as you get to facts in our business. Agile Software Development addresses a wide range of issues in agile development, both philosophical and practical. It includes the first book-published description of Alistair's Crystal methodology, as far as I know. Be aware that some people think there's not enough meat in this book. If you want rules, XP books have more rules. There is depth to this material in my opinion. I found it thought-provoking. Maybe you have to be nearing Level Three to get it.

Agile Development with Scrum

Ken Schwaber and Mike BeedleScrum is a team approach to software development that relies on the "people in a room" approach to things. Scrum projects work in bursts of time, typically one month, delivering whatever they can in that period. The process description doesn't go to the programming level as XP does: it assumes that the team knows some way to develop software and that they'll do so. Scrum projects manage a "backlog" of desired features. There is a Product Owner, analogous to XP's Customer, and there is a Scrum Master, who may be analogous to the XP Coach. The Scrum Master seems to have more power than a Coach. Scrum has been used successfully on a number of projects. The Scrum guys are in some ways more contentious than even I am. I like it when someone makes me look reasonable.

The Pragmatic Programmer

Andy Hunt and Dave Thomas programmingOutstanding book! Andy and Dave are excellent programmers and excellent teachers, with one eye each on simplicity, skill, craftsmanship, learning, and quality. Where they get all those eyes, I'll never know. This is a book on how an individual programmer can increase skills, and how to work effectively, alone or on a team. As with any such book, much of the advice is something you already know. Much of it is also something you have forgotten to focus on lately. Very very good stuff. I wish I could have written this book.


Tom DeMarcoIf Tom DeMarco writes it, read it, that's my advice. This one, billed as a "Handbook for Managers, Entrepreneurs, and CEOs", is about "Getting past burnout, busywork, and the myth of total efficiency." The basic premise is that when organizations run too "lean and mean", they lose capacity for change and innovation. We've all see it happen: DeMarco documents and explains the effect and what to do about it. Tom reminds us that we all have responsibility to lead our companies out of the darkness. He feels that when we look at Dilbert, we need to ask ourselves, as Dilberts all, what we should do instead of the counter-productive responses that Dilbert too often shows. I think Tom is a little hard on Dilbert, who does try sometimes. Maybe Dilbert is just beaten down. We're not beaten down yet: let's change the world, one more time.


Dynamics of Software Development

Jim McCarthy

I’m embarrassed to report that Jim wrote to me recently and asked me why I hadn’t reviewed this book. I was embarrassed because it is one of my favorites but somehow got left out of the review stack. Sorry, Jim!

The book is a collection of “rules” for “delivering great software on time”. Many of them have entered the lexicon of programmers everywhere: “Don’t Flip the Bozo Bit”, and “Don’t Go Dark” are two of my favorites. I agree with most everything in here. Jim was Extreme before Extreme was cool! If you haven’t read this book, you should.