Everyday Scripting with Ruby: For Teams, Testers, and You

Brian Marick (2007)
Review date: august, 2011
Summary

In terms of organization, this book is slightly different from many books. 24 chapters in 240 pages should say it all. The overall structure is a little ad hoc (which is not bad), but in general we can say that the first half is pure scripting without object orientation, while the second half has OO. There are four bigger examples serving as the skeleton for the text.

Every chapter ends with a couple of exercises.

Opinion

This book claims to target testers in particular. I do not agree. There's nothing in it that makes it particularly suited for testers. This is a beginner book in Ruby written in a very reader-friendly fashion. A traditional programming book uses fifty pages to discuss variables, another fifty to describe control structures, maybe a hundred to describe classes and object-orientation and so on. You get the picture.

The style of this book is rather to pick some interesting topic, drill down into it, deep enough, but not too deep, highlight some funny or interesting detail, and then move on. This means that it gives the reader some tools rather quickly, instead of forcing him to read 300 on syntax and programming basics. Well, for this reason it might be better suited for non-developer readers... Or you could view this as a different style of writing. I found it very nice and refreshing.

Time after time the author comes back to the fact that the book is about scripting, so classes, for example, are introduced towards the end. Under normal circumstances you could live an entire lifetime writing scripts that don't require the use of classes, so again, I think it's a good choice.

I'm no Ruby expert, so I can't say how well the language is covered, but I think it's covered well enough. If you know of everything that's in this book, you're a fair Ruby developer. Definitively not an expert, but you'll get by.

There are four larger examples in this book in total, and they are good. Not trivial, for sure, but once the happy paths have been ironed-out, the text moves on. They come from four rather different domains: string manipulation, subversion integration, web page scraping, and use of frameworks.

The book also has three chapters written a very special style - a short tabular form with no additional unnecessary extra text. So, for example, the chapter on arrays is only four pages with only a long table showing examples and explanations of what you can do with arrays. This wouldn't work in every book and not for every programming language, but it works in this book and it works for Ruby.

The remaining chapters don't seem to follow any particular organization, but at the end of the book, the reader has seen a couple of unit tests, some libraries and tools, like Watir and rake, and some Ruby tricks. Enough to get you started.

Despite its shallowness in some areas, I think this is a very good beginner book. It will definitively get the beginner started without discouraging with details that aren't very relevant when just starting out. Phrased differently: this book is as far from a language bible as can be, but it's full of teasers that are not only in the core of the language.

Frankly, I'm disappointed in only one thing. I associate the author, Brian Marick, with testing, so I was very curious about how a tester would approach the topic of script development; I was hoping for the tester mindset. However, I got none. There's nothing about the style of this book that reveals that it's written by a testing expert. Well, maybe I was naive to think that there would be any noticeable differences. Of course there are some minor nuances in the way development and the language are described, but if you're not tuned in, you may not notice.

Anyway, this is a good book that gives you a good foundation and makes you start writing your scripts early without bogging you down with details. If you're just beginning to learn Ruby, this is a good investment.

Who should read this book

Ruby novices who want to start producing code early without reading 500 pages on language fundamentals are going to love this book.




News

  • 2015-09-29

    It's been almost one and a half year since I reviwed a book! I've been too absorbed by Writing my own. Anyway, I'm back with Jeff Patton's relatively...
  • 2014-01-04

    New category! Performance! Reviewed The Every Computer Performance Book. Check it out!
  • 2013-09-10

    Reviewed a book that' slightly less technical, but much more fun to read. It's I.T. Confidential.
  • 2013-08-13

    Reviewed yet another book on Visual Studio 2012 and TFS. I also created a "Microsoft" category and moved the other TFS book there from the "Tools"...
  • 2013-08-05

    Updated the FAQ. Included information about getting a book reviewed.