Title: The Ruby Way
Authors: Hal Fulton
Publisher: Addison-Wesley Professional
Publication date: November 4, 2006
Edition: 2nd Edition
Ruby is best described as an object-oriented language, and is very similar to Smalltalk. Overall, the book is well written and contains useful examples throughout.
However, I feel the first point worth stating is that if you're new to Ruby then this book is not for you. Whilst it does cover Ruby in depth, it is aimed at the developer who has already mastered the basics of the Ruby language. Although readers who are familiar with Object orientated development may be able to grasp the concepts described in the first chapter, there are a number of alternative books that better suit the beginner.
That said, this is a highly comprehensive book. Each section is broken down into logical sections with detailed explanation and code examples, allowing the reader to develop code while they make their way through the book. Each chapter breaks down the core libraries into manageable sections starting with strings, regular expressions, time functions and progressing on to other, more complex areas such as threads, socket programming and distribution of code.
The book seems to lack depth in the basic areas of Ruby development, my main complaint being that structure and syntax are not covered sufficiently for the beginner. Some readers may be able to "read around" this subject, using tutorials or another beginner's guide, however, this defeats the point of buying a book that suggests it is suitable for beginners.
Section 1.5 (training your intuition) is, without a doubt, the section most readers will find beneficial. Providing an easy layout covering syntax issues, case conditions and a useful section relating to "rubyisms", such as differences between subclasses / inheritance and the "singleton" classes and iteration within Ruby. This section includes a vast amount of code examples allowing the user to flick straight to it in order to get real world examples.