Book Review 2.0 - The Ruby Way
I took this book out from the library and was instantly enamoured with it. So
much so that it went on my wish list before I had returned it. As with Rails
Recipes, this book is primarily for those who have a decent grasp of the
Ruby programming language, but do not yet know all of the tricks. If you have
memorized the language API, this probably is not the book for you.
As my Ruby experiences are measured in months rather than years at this
point in time, more information is always better than less. And I have always
been a sucker for a nice heavy book to keep beside the keyboard.
The Ruby Way.
Basically this book is a list of common and not so
common tasks and code snippets to show you how to handle them in Ruby. Another
way to look at it is this book is basically the logical reverse of the
language API. Rather than look up a method and find out what it does, you look
up a task and it tells you the method. This can be very, very handy.
Ruby is a concise language with many excellent one liners. In the core
classes, however, there are often a large number of methods. String is one
good example, there is something like 100 methods in the class and I have,
more than once, accidentally re-implemented one of them while trying to solve
a problem. This is mainly due to simple lack of experience with the language.
Now that I have a copy of this book, if I get the feeling that maybe Ruby has
something built in to solve problem A, I can look up problem A and find out if
there is a one liner rather than writing some custom method.
Even
in my relatively small projects, this book has already saved me a handful of
hours. Currently I am reading through the book, random chapters at a time. The
main goal I have now is to build an internal catalogue of problems that this
book solves so I can remember to reference it if those problems crop up.
Shortly after I use a method a couple of times, then it is part of the
repotoire and I won't need to look it up again.
So, in a
nutshell, if you need a good book to learn to make your Ruby more concise and
make better use of the language, go with this one.