<pre>Author/s : David Thomas, Andrew Hunt Publisher : The Pragmatic Programmers, LLC Category :Project management, Process and Best Practices Review by : Dirk Schreckmann Rating : 10 horseshoes</pre> Authors, David Thomas and Andrew Hunt, smashed a home run with their book, "Pragmatic Version Control Using CVS" - the first volume in the three part "The Pragmatic Starter Kit" series. Using easy to read explanations, examples and stories, this book clearly explains what version control is, how it works, why folks are using it, how CVS works, and what commands developers are using during the life of their projects. "Pragmatic Version Control Using CVS" provides the semantics and idioms behind the syntax found in the CVS Manual. Before reading this book, I was a timid CVS user, willing to do little more than check code out. Now, after reading the book, I check code out and in, branch, merge and resolve conflicts with confidence. I'd recommend this book to any developer using a version control system that wouldn't already describe themselves as Zen masters in the craft, and to any developer not already using a version control system.
"Pragmatic UnitTesting - In Java with JUnit" - the second volume in the three part "The Pragmatic Starter Kit" series" - from authors, Andrew Hunt and David Thomas, is an excellent introduction to the practice of unit testing - proving that a piece of code does what the developer intended it to do. If you're a new developer, hopefully you've asked yourself and others questions about how to establish that your code really works, how to feel confident that it keeps working after scores of changes have been made, what types of common problems and bugs should you be looking for, where are these problems likely to be, and what makes a good test. While answering those questions, this book also introduces the practice of testing with Mock Objects, how to organize the test code in a project, how to better design code for testability, and how to make use of JUnit for running all these tests. I'd recommend this book as a strong introduction to any developer new to or uncertain about the art of unit testing.
The third and final volume of "The Pragmatic Starter Kit" series, "Pragmatic Project Automation" by Mike Clark, is an excellent guide on automating repetitive tasks that increase the quality of a software project, and the productivity and confidence of the team creating it. (Who wouldn't feel good around a glowing green lava lamp?) If you don't currently employ a system that automatically checks out your project from a version control system, compiles it, tests it, and reports back to the team the status of the build, after reading the first three chapters of this book, you'll have all the information you need and no excuses left not to create such a system. The remaining three chapters of the book are dedicated to teaching creating push-button releases - facilitating the practice of releasing early and often, to automating installation and deployment, and to introducing a potpourri of tools and recipes for monitoring and reporting the health of a running system. I'd recommend this book to any software developer.
These three volumes that comprise "The Pragmatic Starter Kit" are well-written gems that now hold prominent positions on my bookshelf. The version control, unit testing, and automation practices these books describe are being done by many developers world-wide for a good reason: they are good things to do. By reading these books, you'll save yourself the cost of learning invaluable lessons the hard way through years of experience, and learn them from those that have already traveled the web of software development roads.
Andy Hunt: Instead of that very neat and orderly procession, which doesn't happen even in the real world with buildings, software is much more like gardening. You do plan. You plan that you're going to make a plot this big. You're going to prepare the soil. You bring in a landscape person who says to put the big plants in the back and short ones in the front. You've got a great plan, a whole design.
Hi all, just wanted to let you know that pragmatic author Mike Clark ("Pragmatic Project Automation") is over in the Ant, Maven and other Build Tools forum this week to answer your questions and otherwise entertain you.