Home

Reviews of Practical Development Environments

This page is a convenient place for links to a number of reviews of Practical Development Environments, and a rebuttal of one of the reviews.

Dr. Dobbs Journal, March 2006

"Luckily for all of us, Matt Doar has produced a practical guide to what should be in every team's toolbox, how competing entries stack up, and how they ought to be used. His new book, Practical Development Environments, covers everything from configuration management tools like CVS and Subversion, to build tools (make, GNU's Autotools, Ant, Jam, and SCons), various testing aids, bug tracking systems, documentation generators, and we're still only at the halfway mark. He names names, provides links, and treats free and commercial offerings on equal terms. My copy currently has 28 folded-down corners, which is 28 more than most books get; recommended." -- Greg Wilson

[Greg is the author of Data Crunching : Solve Everyday Problems Using Java, Python, and more, and also organized the Software Carpentry competition.]

Brad Appleton, via testdriven.com

[Brad is one of the authors of Software Configuration Management Patterns: Effective Teamwork, Practical Integration.]

Book Review: Practical Development Environments

"Matthew Doar's Practical Development Environments (PDE) looks to be a pretty AMAZING book. It really does cover the entire lifecycle of development environment tools for version control, build management, test tools, change/defect tracking, and more. My previous favorite work on this topic was the Pragmatic Programmer's Pragmatic Project Automation (PPA), but no more.

The PPA book is still a GREAT book! And it focuses a lot more on programming and automating tasks and good ways to go about doing it. It goes into some of the details of particular tools and setting them up, especially JUnit.

But the PDE book is far more comprehensive in the range of development environment practices and tools that it covers, including not just the automation aspects, but evaluating them, setup and administration, integrating them together (and issues and challenges encountered), and many more aspects of testing, building, project tracking, version controlling, and just generally helping the development team get work done with maximal support and minimal hindrance from the tools they use.

If you want to be a toolsmith, and learn more about scripting and automating tasks and some of the common tools that already exist, then I'd still recommend Mike Clark's Pragmatic Project Automation.

If you're focus is less on how/when/why to automate and more on evaluating, setting-up and maintaining a practical development environment for your team, then Matthew Doar's Practical Development Environments is definitely my top pick nowadays!"

Amazon

Two reviews with real content, and two mostly meaningless ones.

Techworld

This was a negative review. Briefly, I feel that the purpose of the book was misunderstood by the reviewer. He and I discussed the review, and my comments appear here for some balance. The quoted paragraphs are from the end of the review (the summary of the contents that preceeds them is accurate enough).

"Frankly, I really can't recommend this book to anyone. I never thought I'd say that about an O'Reilly book, but it's true. Fair enough, some of the concepts it covers are worthwhile, and it talks about some useful tools, but the coverage is just too surface- skimming for my liking."

The intent of the book is twofold - to introduce the concepts and some things to watch out for, and then to give an overview of some of the currently available tools. Greater depth would have been good, but unlikely in 300 pages. Think of it as a "guide", not "encyclopedia".

"Take the seven pages or so on the CVS SCM system, for instance - yes, the history is interesting and there are some useful bullet points, but at no point does it actually tell you how the hell you actually use CVS."

It isn't intended to, however it does tell you in several places where to go to learn to use CVS. Again, the book is not an encyclopedia of tools and the precise details of how to use them. It does answer questions such as "what tools do other people use for this job?" and "what are the classic mistakes to avoid", not "how do I configure my CVS server".

"The other problem is that by naming specific products, the author is opening himself up to criticism by the likes of me for missing the ones he hasn't included. The SourceGear SCM package, for instance, or my favourite CHM (Compiled HTML Module) structure for hyperlinked documentation."

The choice of tools was indeed hard to make, and is likely to change in any future edition as tools come and go. I feel that I am direct and open about why each tool was chosen, especially in the Recommendations section of Chapter 2. Wherever possible, I represented each of a class of tools, for example, the different kinds of bug trackers. Vault (SourceGear's product) is actually mentioned as a much better alternative to SourceSafe (p.74)

"And although we said at the beginning that this book isn't about IDEs, the latter should at least get a mention - and they don't. No Visual Studio, no Eclipse, nothing."

Yes, I'd like to have discussed IDEs in their own chapter, seeing them as platforms for using all the other kinds of tools in the book. I would not discuss editors, but things such as refactoring and fast compile-run cycles are interesting. I feel that all of the concepts in the book are necessary for understanding the pros and cons of IDEs.

"This book is, I'm sad to say, intensely disappointing. It might be useful to students of software engineering as an overview of the concepts, but as a professional software developer I really can't see a great deal of value for people like me."

I'm sorry that you were disappointed. As a professional software developer, I'm glad that you have already come across many of the ideas in the book. However, working as a developer and software toolsmith in Silicon Valley, I find a surprising number of colleagues who haven't. Don't forget that 40% of software products are developed without any real version control!

macCompanion

Reviewed by Jonathan Hoyle

... What is most refreshing about this book is that it is very frank and practical in nature, not coming from a programming ideology. Pragmatic decisions are encouraged, rather than strict adherence to some engineering creed or manifesto. When offering solutions to a particular aspect of software development, the author lists a number of possibilities, from freeware to commercial. The author is also frank about the pros and cons of the various tools, clearly showing his experience in the industry with them.

In conclusion, Practical Development Environments is a must read for any organization serious about developing software. It is not overly technical, approachable by QA and and documentation writers, yet detailed enough to cover all aspects of the product cycle. Highly recommended.

Reg developer

Reviewed by Pan Pantziarka

Verdict:Recommended for an end-to-end view of development environments.

Code Generation Network

Reviewed by Tope Omitola, 4 out of 5 stars

Planning and organization are the central problems of architecture. The same thing can be said of software creation. You have to plan ahead what you want to do, and organize the sequences to take you from where you are to where you want to be. A successful way to achieve these in the software engineering project context is what I have learned from this book. It will certainly be a valuable addition on my bookshelf, and I shall keep a copy of this book to hand for reference and to dip in from time to time.

Upcoming Reviews

Watch this space!