I haven't done anything more with Ruby since my first look, but it is something I do want to investigate more deeply. I was therefore pleased to see this book arrive.
When playing with new languages, the question always is whether you want an introduction or a reference. Some books try to be both, but that rarely works (though the Perl Camel Book comes close). The author here states flat out that "The Ruby Way" is more of a reference, though it isn't really quite that either. He describes it as an "inverted reference" - in other words, more of a "cook book" style book.
However, Chapter 1 does begin with a long explanation of OOP programming in general and then flows into some introductory material. That's often my first (small) gripe about books like this: if you want to try to write something that would be like the "Camel" book for Ruby, then have at it. But if you know you aren't going to do that, then leave the introductory stuff to someone else and get right to what you want to do. In other words, if you can't fit it all in, don't try. Those who already know the basics will be bored; those who know nothing probably will be confused.
In this case, the author recognizes that and invites us to skip ahead if we find things too basic, or to seek other sources if we are confused. We are all different, and are at different levels of understanding. More importantly, perhaps, is that we all come with different baggage, different conceptions of how we expect things to work. Any language will have surprises for those more accustomed to something else, and Ruby is no exception. The author tries hard to anticipate our confusion and to help us avoid falling into the more common mistakes - for this alone, Chapter 1 is probably worth reading even if you think you could safely skip it.
After that, we move to cookbook mode, starting with a chapter on strings. Short sections present examples of manipulating, searching, changing and so on. I found the examples intelligently presented and sufficiently concise to be understandable without wasting my time.
Other chapters continue with date and time, numeric functions, working with data storage and so on. As the author says in the introduction, this isn't something most of us would read cover to cover, but it does seem to include everything we'd want to find if we did that.
I don't know how much I'll ever do with Ruby. It's certainly attractive and interesting, but I lack any compelling reason to get into it very deeply. If I ever do have reason, I'm sure this book will be well pawed.
Order (or just read more about) The Ruby Way (Second Edition) from Amazon.com
Got something to add? Send me email.
More Articles by Anthony Lawrence © 2011-04-30 Anthony Lawrence
I always knew that one day Smalltalk would replace Java. I just didn't know it would be called Ruby. (Kent Beck)