|
|||||||||||||||||||||||||||||||||||
|
33 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
23 of 23 people found the following review helpful:
5.0 out of 5 stars
Hire a Virtual Employee - buy this book!,
By
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
If you are doing any serious software development, then you have tasks that need to be automated. Your build process, unit tests, deployment, measurements of quality, and other metrics for project management can all be automated once, and then created over and over again, basically 'for free'. This is what computer do, right? So why not let them do it for software development?
Mike Clark does an excellent job describing both the 'high-level why' of project automation, as well as real-world 'low level' examples. He describes project automation with shell scripts, tools like Ant and CruiseControl, automation of routine tasks in CVS, and create automated 'status reports' with things like log4j and RSS feeds of data from your build report. The day after reading this book, I had modified our automated build to send an email to my cell phone if it failed - along with the names of everyone who had commited a change since the last successful build. While not every project needs this level of paranoia, this kind of 'project safety net' gives us great confidence in the quality of our code. It's hard to say what could be improved about this book - its biggest strength and its biggest weakness are its size... at 150 pages, I feel like there could have been so much more said on the subject... on the other hand, the books size makes it very approachable - you can pick it up, read it, learn something, and use it that same day. If the book were any larger, it would run the risk of trying to say too much, not saying it as clearly, and dating itself much more quickly. This book (actually all three of the prag prog 'starter kit' are on our team bookshelf, and are considered part of our project's documentation.
12 of 12 people found the following review helpful:
5.0 out of 5 stars
Make your computer do the work,
By Ernest Friedman-Hill "JavaRanch Sheriff" (Gaithersburg, MD United States) - See all my reviews (VINE VOICE) (REAL NAME)
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
This little book could double your productivity by showing you how to make computers actually help you do your job. Do you spend too much time chasing configuration bugs, following checklists, and performing repetitive tasks that take time away from your coding and design duties? Then "Pragmatic Project Automation" is for you.
This isn't the kind of "software process" book that tries to sell you on following a methodology. There's no preaching, and there are no outlandish claims of productivity increases. Instead of selling snake oil, Mike Clark just wants to explain, in a clear, effective way, how to use open-source tools to automate your builds, release process, and application monitoring. Java tools like Ant, CruiseControl, and JUnit are the centerpieces of this book, but shell scripts and batch files also make cameo appearances. There's even a section on assembling novel monitoring devices. Admit it -- wouldn't it be cool to have red and green Lava Lamps that light up according to the status of your project build? The beginning programmer might wonder what all the fuss is about, but anyone tasked with delivering software on a schedule will appreciate the many ways in which this book will help them.
7 of 7 people found the following review helpful:
5.0 out of 5 stars
A Pragmatic Gem,
By
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
Don't let its relatively small size (152 pages) fool you -- this book has more relevant content per page than I've seen in a technical book since, well, the last book I read from the Pragmatic Programmers ("Pragmatic Unit Testing", by Andy Hunt and Dave Thomas). In fact, I believe this book's compactness to be one of its greatest features.
Mike Clark has done a masterful job of distilling the essence of the topic of automation and presenting it in a well-thought-out, easy-to-follow progression. He finds a natural starting point -- the build -- and takes us from a simple on-demand build using Ant, to scheduled builds using CruiseControl. At each step he shows us how we can safely relinquish control to an automated tool, buying time and increasing reliability. Subsequent steps follow in natural progression -- from simple builds to automated, scheduled, and triggered builds. From building the software to assembling a release. Then on to deploying the release. And finally, monitoring the release once it's deployed. Don't be fooled into thinking this book is just for server-side Java developers. That audience is certainly a main focus, and the book doesn't have room to be encyclopedic by any means. Even so, Mike does a great job of pointing out alternatives where they exist -- if there's a .NET equivalent of a tool, you'll find at least a mention of it, along with a URL where you can go to learn more. There are shell scripts of various flavors sprinkled throughout the book. There's even an example written in Ruby! Mike has a gentle, relaxed writing style. He doesn't -- as too many other technical authors do these days -- try too hard to impress us with his knowledge; he just lays it out there. He doesn't bombard us with overly formal (or informal) language, hackneyed metaphors, or lame jokes. If you believe that time is money, then it follows naturally that saving time is saving money. This book will help you do both. I give it my highest recommendation.
7 of 7 people found the following review helpful:
5.0 out of 5 stars
New handbook for Java project automation,
By Jared Richardson (North Carolina) - See all my reviews
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
Mike's book should be a desktop reference for anyone working on Java projects.
He first gives you a high level overview of why a concept is needed on your project. Then he shows you which product to use, and gives you a practical working example. Whether you are learning how to use various build tools (like Ant or CruiseControl) or refining your existing project, this is a must have book. It's a "report from the trenches", not an academic analysis. You can read this book and boost your productivity the first day.
7 of 7 people found the following review helpful:
5.0 out of 5 stars
A valuable addition to your bookshelf,
By James Duncan Davidson (Portland, OR USA) - See all my reviews
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
I've always been a tool-builder. When a solvable problem presents itself, I like to fix it with the simplest possible solution. This book--fun and interesting to read--is a wonderful collection of tips and tricks that will help you take simple everyday tools and do amazing things with them. By the time you are done reading it, not only will your builds be repeatable, but you'll have industrial strength monitoring and troubleshooting tools in place as well. Mike stays one step ahead of you and builds a compelling case for each tool as well as how to combine them. And, in the end, you might even end up with a couple of lava lamps out of the deal.
6 of 6 people found the following review helpful:
4.0 out of 5 stars
Automating build and unit testing,
By
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
Aimed at Java programmers who are working on a project and who need to install a disciplined project framework on themselves. Clark assumes you're clued into the utility of having a version control system and of writing unit tests. Those were the subjects of his two earlier books in this series.
Now he shows plausible next steps in automating certain development steps. A lot of attention is focused on the build. Naturally. You can see how to use Ant and a lesser known open source program, CruiseControl, for automated building and running of unit tests. This is the most important part of the book and you should focus your attention here. Clark also discusses other topics, like deploying over the web. Useful, but subsidiary. There is very little jargon or acronym soup to navigate. Something to be thankful for.
5 of 5 people found the following review helpful:
5.0 out of 5 stars
A Lava Lamp in Every Office,
By Chris Bischoff "Chris Bischoff" (Englewood, CO USA) - See all my reviews
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
It was right there in front of me. Why should I have to come in the office every morning and manually check the status of the nightly build when a green Lava Lamp can indicate the status for me?
Mike, once again, shows his in depth knowledge of the subject matter and adds a sprinkling of humor, an active imagination and real life experience that make this book hard to put down. It's easy to forget, we have all this horsepower surrounding us, sitting idle, while we complain about needing more manpower. This book opened my eyes to how much work could be done while I slept. Anyone who plays an active role in any part of the software release cycle should grab some herbal tea, fire up the incense, sit down in a bean bag chair and start reading
5 of 5 people found the following review helpful:
5.0 out of 5 stars
Great book on software project automation,
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
This book is the third volume in the Pragmatic Starter kit, but is self-contained enough that it can be read on its own. The first chapter starts with a story about how built-in automation makes everyone's life better-especially the developer's. Thus this book is really about letting the computer do boring, repetitive things so that developers can concentrate on what is new and interesting. The rest of the first chapter answers some frequently asked questions including why and when developers should automate. This FAQ is useful in its own right, but also helps readers figure out whether the rest of the book is for them. The next two chapters show how to automate a Java build with Ant and then schedule that build. Clark points out that running tests is part of the build process. Chapters 4 and 5 describe how to generate and distribute releases of software. One of my favorite ideas from these chapters is writing a checklist script that clients can run on-site to check for "is it plugged in" errors. The last chapter is about monitoring all this automation. This chapter alone is worth the price of the book. Developers always want this information, but nobody enjoys being spammed by their own computers, and it's a pain to set up filters so that the right messages reach exactly the right people. Clark's solution is to use RSS notifications so that your build system creates a blog as it goes along. It's a great idea, and I've already started implementing it locally.
This book is short, but it's chock full of ideas and advice that can be put to use immediately. I found Clark's writing style clear, easy to read, and often entertaining. As a bonus, the book's concepts are language independent even though Clark uses Java and Java-based tools.
7 of 8 people found the following review helpful:
5.0 out of 5 stars
Quality information in a small package...,
By Thomas Duff "Duffbert" (Portland, OR United States) - See all my reviews (VINE VOICE) (TOP 500 REVIEWER) (HALL OF FAME REVIEWER) (REAL NAME)
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
I just finished reading a very useful book... Pragmatic Project Automation by Mike Clark (Pragmatic Bookshelf). If you've ever wondered how to make your life easier as a Java developer, this will answer some of your questions.
Chapter list: Introduction; One-Step Builds; Scheduled Builds; Push-Button Releases; Installation and Deployment; Monitoring; Resources; Pragmatic Project Automation: Summary The basic premise here is that most development teams spend far too much time managing the compile/build/deployment process because it's a manual one. And with manual processes comes the real possibility of errors and neglect. You should be spending more time coding business solutions and less time baby-sitting the infrastructure. Clark takes you through some of the freely available open source tools that can help you make the build process repeatable and automated. By doing this on a regular, consistent basis, you'll have higher quality software and faster response times to errors because you can narrow down to a matter of hours (or even minutes) when an error was introduced into a code stream. Along with the "why" of doing this, you'll learn enough about the components to get you started. Ant will help you automate the compile and build process. cron scheduling can set up your builds to happen on a regular basis without your intervention. CruiseControl can take cron and Ant to a higher level and also send out notifications on the results of the builds. CVS is covered as a repository that should be where your code is stored and versioned. And NSIS is covered as a way to create an automated installation package for your most current release. While none of these technologies are covered in an all-inclusive way, there's enough here to get you started and to whet your appetite to pursue the matter further. This isn't a big book... 161 pages. But there's a lot of practical advice and wisdom packed in there. Definitely a "must have" book if you're spending too much time as the "buildmaster guru" on your projects...
12 of 15 people found the following review helpful:
4.0 out of 5 stars
An Excellent Entry Level Book,
By
This review is from: Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps (Paperback)
"Pragmatic Project Automation" is all about how to automate the tasks
associated with building, testing, and deploying your application. The assumption is that your project is a Java project, and all the tools are based around that. Most of the automation is done with Ant, an automation tool written in Java and primarily used for building Java projects. Since I do most of my work in java and ant, this is right down my alley. "Pragmatic Project Automation" is one of the "Pragmatic Starter Kit" series of books. The words "Starter Kit" should be taken seriously. If you are acting as build master for your first project, this is a great book. It will have you up and running your one-step builds in no time. It provides numerous "best practices" for running automatic builds, unit tests, and deployment. Unlike the original "Pragmatic Programmer," which was a collection of generally good ideas and practices to follow, the Pragmatic Starter Kits are specific recipes to follow for good results. The book assumes that you are using Java; the ideas behind the practices are universal and can be applied to any kind of project, but the specific advice is for Java only. The specific tools recommended by the book are Ant for scripting, CVS for version control, and Cruise Control for scheduling. Obviously, other tools can be used instead, but the recipes in the book will no longer work. The ideas remain valid, however. I wish this book had been around 5 years ago when I first started building Java projects. As it is, I had to learn much of this by trial and error. Most of it is just simple, good sense, like having all your source in version control and having a script to check out your code and build the finished application. But like all good sense, it is not as obvious and wide spread as it should be. Every project I've been on could have used a good dose of pragmatic project automation. Though most of the book was already familiar to me, I did learn several things. One of the great ideas was to make build failures publically obvious through the use of lava lamps! If the build, or build tests, failed, the suggestion is to turn on a red lava lamp which is in a publically visible location. Ant does not actually have a lava lamp task, so they cleverly provide instructions on automating the lava lamp with the use of an X10 lamp module. When the build succeeds again, turn off the red lamp and turn on a green one. I haven't yet implemented this, but I'd like to. Using ant for builds and CVS for version control is pretty standard, nowadays. I think most projects do this or something equivalent (though the statistics on this show that statement to be hopelessly optimistic). This book does move on to a more advanced, and less standard tool. They recommend performing builds automatically whenever code is checked in, and their tool of choice is Cruise Control. They provide nice recipes for setting up and running Cruise Control. In my job, inspired by the book, we decided to try it and found it quite simple to set up and use. It requires a little more infrastructure than, say, CVS in that it runs inside a java container like Tomcat, but if you are a Java shop you probably already know how to manage Tomcat. If you don't, maybe it is time to learn. If you are a new build master on a Java project, read this book immediately. Even if you've been doing it for a while, you probably won't be wasting your time if you read it. The book is well written and accurate. It has a nice style that moves along nicely. At 176 pages it is not a very long read, a welcome change in computer books. The author tells you what he has to say, then shuts up--there's no padding here. All in all, a good book. I'm glad I read it. I wish I'd read it 5 years ago. Michael Hirsch |
|
Most Helpful First | Newest First
|
|
Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps by Mike Clark (Paperback - Aug. 2004)
$29.95 $19.67
In Stock | ||