Wicked Cool Ruby Scripts by Steve Pugh
Wicked Cool Ruby Scripts (or Amazon.com link - currently $19.77) is a new Ruby book by Steve Pugh that has just one goal: to share a bunch of "wicked, cool" Ruby scripts in various categories with readers. The publisher is No Starch and they offered to send me a copy for review.
First, No Starch Press is an independent technical book publisher (a rare entity nowadays) and if this book is any indicator, they have a real passion for producing books that are delightful to own. It's so rare that you get nice paper in a book - here it's thick and textured (and certified by the Sustainable Forestry Initiative). The binding is something called "RepKover" which makes it more flexible and easier to lie flat without the pages rebounding. The overall presentation is excellent - a well designed covered, nice typography, and great paper. The quality of the finished item almost makes me want to come up with a new book idea just so I can work with them.
The Content: The Good
Enough about the paper and the typography.. what about the content!? Well, it's a bit hit and miss to me. I'll start off with the good.
I like Steve's style. The foreword and introduction are succinct and to the point. His style and tone are very accessible and the book is informative throughout. The structure of the book itself is mostly strong. There are nine chapters covering general scripting areas such as "Website Scripting", "Linux System Administration", "Picture Utilities", and "Games and Learning Tools" - followed by a single chapter dedicated entirely to writing a module for Metasploit 3.1..
The presentation of the individual scripts is also good. A task is outlined - such as "Check for Changed Files" - and then it's straight into the code. The code is sprinkled with numbers that are then referenced in an explanatory section that delves into how the code operates. On a pedagogical level, it's a smart move and I had no problems understanding what Steve was trying to demonstrate. If you want to see it for yourself, you can download a PDF of Chapter 1 "General Purpose Utilities."
The Content: The Bad
Other than the awkwardly placed tenth chapter that covers writing a module for Metasploit 10, the scripts chosen are very hit and miss. It feels like a bran tub experience where only 58 scripts could be chosen out of a whole universe of scripts and those 58 are rather quirkily random. The general purpose scripts, for example, are made up of 7 file handling scripts, a mortgage calculator, and a Windows process viewer.
The book feels a bit short (under 200 pages) and random overall. It's like a far shorter, more casual version of the 900 page Ruby Cookbook. Being so short, it fails to cover a lot of ground and instead rapidly dives from place to place.
So Who's This For..?
This book would make a good gift for almost any Rubyist - just because of the quality of the book's presentation, if not its content. That said, the content, despite the randomness, is great for a novice to intermediate developer and Wicked Cool Ruby Scripts would be a good book to pick up if you've just learned the language and want to see some practical examples in print-form.
The problems with the book feel like editorial problems to me. Steve's writing is good and No Starch's production quality (in terms of the actual product) are strong. I just don't feel that someone (and this would usually be the editor) demanded a reason for the book's existence. The market for it is vague. Steve's style will shine through and win over many readers, but I find it hard to know who'd enjoy this book if recommended it, and who would find it a waste of time. If you have $20 spare in your book budget though, I'd suggest you buy a copy and find out - you can always pass it on!
At the very least, I've been won over by No Starch's approach to book making and I'd certainly suggest you have a look at their catalog. They have books covering subjects from Java and Python through to GIMP, SCSI, and even a Manga Guide to Calculus (forthcoming)!