The New Most Important Ruby Book: O’Reilly’s “The Ruby Programming Language”
Originally planned as a second edition to Ruby classic, Ruby In A Nutshell, The Ruby Programming Language is a new book by David Flanagan and Yukihiro Matsumoto (a.k.a. Matz - creator of Ruby) and published by O'Reilly. The book covers Ruby 1.8 and 1.9 and with its esteemed authors and technical approach, is sure to become a new "Bible" for Ruby developers. In programming book style, I'm going to refer to it as the "Hummingbird" book in future, due to the woodcut pictures of hummingbirds on the front.
Only coming into stock two weeks ago, this book is fresh and up to date. Its style is very direct and matter-of-fact; well suited for existing Ruby developers and proficient developers coming from other languages. The examples are clear and logical and the explanations concise; this is a well edited and authoritative book.
The structure of the book is a delight with ten well-defined chapters (with titles such as Reflection and Metaprogramming, Statements and Control Structures, and Expressions and Operators) that each contain a tree of sections. Consider Chapter 4, Expressions and Operators. A sample dive down to section 126.96.36.199 takes us through 4.5, Assignments; 4.5.5, Parallel Assignment; and finally to 188.8.131.52, One lvalue, multiple rvalues. This is a breath of fresh air in a Ruby reference work.
.. but it's not exhaustive, and that's a good thing.
The only downside, in terms of the thousands who might be browsing Amazon looking for a single Ruby book to start off with, is that the Hummingbird is so well focused on documenting the core elements of the Ruby language, it doesn't work either as a tutorial / beginner's introduction to Ruby, or as an exhaustive reference work (as, on both fronts, the Pickaxe attempts to be.) This lack of dilution may be an ultimate strength, however, since anyone above the station of "beginner" will be able to learn Ruby thoroughly from this book, use it as a general reference, and then be able to use the exhaustive documentation that comes with Ruby itself to cover the standard library and built-in classes. That's a hard message to get across though, so I beseech you, recommend this book to the newcomers!
Get this, the Ruby Way, and use the Ruby documentation, and you're done.
In conclusion, the Hummingbird deserves to be on your bookshelf, whether you're a seasoned developer looking to learn Ruby, or an existing Ruby developer who just wants a great core-language reference. This, and The Ruby Way, are the top two Ruby books out there right now. Unless you really want a gigantic, overreaching, tutorial-cum-stagnant-reference all in one, forget Programming Ruby (the Pickaxe) and:
- get this book
- get The Ruby Way
- use the up-to-date reference materials from Ruby directly.
It's the perfect Ruby book-and-documentation trifecta and it'll last you for years.