Matt is the Group Leader of Research Application Development in the Research Informatics Division of Information Sciences at St. Jude Children's Research Hospital in Memphis, Tennessee. Matt has been developing and supporting enterprise Java applications in support of life sciences research for St. Jude since 2001. Matt is a committer to multiple open source projects and is the founding member of the Memphis/Mid-South Java User Group. Matt is also a regular speaker on the No Fluff Just Stuff symposium series tour (as well as other major conferences), and his articles have appeared in GroovyMag and NFJS the Magazine. His current areas of interest include lean/agile software development, modularity and OSGi, mobile application development (iPhone/iPad/Android), web development (HTML5, etc.), and Groovy/Grails. Matt has posted 44 posts at DZone. You can read more from them at their website. View Full User Profile

Book Review - Grails: A Quick Start Guide

08.05.2009
| 9627 views |
  • submit to reddit
Published by: The Pragmatic Bookshelf
ISBN: 1934356468

Reviewer Ratings

Relevance:
5

Readability:
5

Overall:
5

Buy it now

One Minute Bottom Line

This book absolutely delivers value. Whether you’re an experienced web developer or just getting started and you want to give Grails a try, I heartily recommend Grails: A Quick Start Guide. It is quite possibly the best introductory book I’ve ever read about any framework, not just Grails.

Review

I have to admit that, when Dave Klein approached me about taking a look at Grails: A Quick Start Guide (known in Twitter circles as GQuick), the first thought that entered my mind was “Oh man, another Groovy/Grails book?” You see, I own and have read most of the Groovy and Grails books available on the market today (I can currently count eight on my combined physical and virtual shelves), as I’ve been steadily working with both technologies now since the summer of 2007. I honestly couldn’t imagine yet another book delivering much value. However, always willing to give another community leader a hand, I asked him to send a beta copy my way.

Dave’s target audience is the experienced web developer looking for a reprieve from the complexity of web development along with a dose of enhanced productivity. They are the “Grails newbies” looking for a mentor to help them get from zero to sixty in record time, and Dave nailed them!  The book reads like a printed and bound twelve-part web tutorial that takes you from requirements to production by way of a whirlwind tour of the Grails landscape. This is NOT a Grails reference book. You most definitely will not find an exhaustive GORM reference or the “definitive guide” to Grails tag libraries. That said, even the Grails veteran might find a few gold nuggets buried in the pages of GQuick – I sure did!

The book is built around an example application called “TekDays,” which is a web application designed to enable technical conference organizers, volunteers, and sponsors to collaborate effectively. What makes GQuick stand out from previous Grails books is Dave’s agile, iterative approach. Rather than taking a deep dive through Grails domain classes, controllers, views, etc. and then giving a practical example of applying each area in the context of an example project, Dave takes you feature-by-feature through building the TekDays application and gives you just-in-time exposure to each feature of Grails that you need to build a given feature. While there’s still a general upward flow from the data model to the views, it doesn’t feel nearly as segmented as in other books.

The result is an extremely readable book that flows incredibly well. You literally feel like you’re pair programming with Dave from start to finish. Upon finishing the book not only do you have a very compelling application with which to play, but you also have more than enough Grails expertise to develop your own applications or peddle “the Grails kool-aid” in your own organization. Not only that, but one can learn a thing or two about agile development while working with “Dave the customer.”

Another standout feature of GQuick is Appendix A, carrying the completely inadequate chapter title of “Resources.” This appendix is a veritable treasure chest of “G3” (Groovy/Grails/Griffon) gems, including pointers to project websites, reference documentation, mailing lists, blog/twitter aggregators, no less than thirty-two G3 community leader blogs, books, magazines, podcasts, screencasts, training, and IDE support. This “chapter” (it honestly deserves full billing as a chapter – appendix doesn’t do it justice) alone is almost worth the full purchase price. I honestly believe that if it’s out there and worth referencing, Dave nabbed it in Appendix A.

To say anything negative about this book I’ll have to be extremely “nitpicky.” While Dave does touch on unit and integration tests throughout the book, I think he missed an opportunity to provide an introduction to some of the fantastic testing features added in Grails 1.1, namely mock objects and the specialized ControllerUnitTestCase and TagLibUnitTestCase. As of now the only book that I know of that gives a thorough treatment to these topics is Grails In Action – a book that I consider to be one of the finest reference books available for Grails. In my opinion, a “gentler” introduction to these topics would have been a nice addition. To back this up with a personal example, I happen to have a colleague that would have loved to be walked through these topics on her last Grails project. That said, I honestly don’t think you could significantly improve on this book given what Dave set out to accomplish (although, for the purposes of full disclosure, I have to admit to being a bit of a Pragmatic Bookshelf fan boy!).   
    
In closing, let me relate the story of a colleague of mine that happens to be a database administrator at his day job. John recently approached me looking for a good introduction to Grails. He’s been trying to add some web development skills to his technical portfolio and has had a hard time finding good resources that don’t assume a great deal of previous programming and/or web development experience while introducing a given technology. I recommended that he buy into the GQuick beta program and I think his recent quote on the errata site says it all:

I want to commend you on the job you are doing, explaining Grails/Groovy to a newbie like me. You have helped me to understand where other authors assume my understanding of Java and related concepts… Good luck on the final release! Keep up the good work.
Published at DZone with permission of its author, Matt Stine.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Adam Horky replied on Wed, 2009/08/05 - 8:37am

Man you made me want to buy the book. But when I clicked on the Amazon link, it failed. I have been wanting to try out Grails ever since I took a look at the Getting Started with Grails refcard here on DZone.

Dave Klein replied on Wed, 2009/08/05 - 9:02am

Don't know why the DZone link isn't working, but you can pre-order the book on Amazon with this link: http://tinyurl.com/ld9zb5 or you can get the beta ebook (with updates and the final version) from http://pragprog.com/titles/dkgrails The beta is complete except for the copy-editing and final layout (so some images may not be in the best position). Thanks, Dave

Lyndsey Clevesy replied on Wed, 2009/08/05 - 9:08am in response to: Adam Horky

Just fixed it. The link should work now. Sorry about that.

Adam Horky replied on Wed, 2009/08/05 - 2:37pm in response to: Lyndsey Clevesy

Awesome! Thanks.

Manuel Jordan replied on Mon, 2009/08/10 - 2:45pm

Very interesting in learn from the scratch Grails, I would buy this book

thanks for the review! 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.