Ruby on Rails 3 isn't an easy topic and I can't imagine a book for the 100% beginner. You need to have a reasonable grasp of Ruby and you need to understand how dynamic website work.
As indicated in its title, this is a tutorial-based introduction to Ruby on Rails 3 and you need to be willing not only to follow the examples but also to set everything up as specified before you even get started including using specific versions of the downloads even if they are not be the latest or the ones you already have. The book uses of test driven development throughout the book - something which makes it both realistic and demanding.
Awarding it a rating of 4.5, Ian concludes:
Overall the book is well written and nicely paced - but remember the earlier warning that the author doesn't try to make the job seem simple by stripping it down to its bare essentials and there are lots of potentially new ideas to master. As long as you like the "learn by doing" method and are prepared to actually do then this comes highly recommended.
There is also a "Livelessons" edition of the book which bundles a DVD with 18+ hours of video instruction and will be a welcome alternative approach for some readers.
Nikos Vaggalis feels that Rails 3 In Action lives up to its "In Action" title which can be a little overwhelming. He considers that a good approach would be to read the early chapters, apply what you’ve learned, get experience and after that go back and read the more advanced stuff. His rating of 4.5 is given on the grounds of being a: thorough guide which covers everything from setting up to deploying an industrial strength real world applications which is easy to follow and very accessible.
For a .NET developer, Ruby and Rails should be revelations in just how easy things can be - as long as you want to do more or less what the framework wants you to.
He concludes that this book, rated 4.5, is a good introduction to Rails, and to a lesser extent to Ruby itself.
Rails AntiPatterns has the subtitle "Best Practice Ruby on Rails Refactoring" and addresses some very high level concerns. Mike James warns, "you need to be a good Rails programmer to get anything much from the book" and that it is unsuitable if you are looking for a practical cookbook as it is is "about deep thinking and principles".
Giving it a rating of 4.5 he concludes:
I would say it is ideal for any Ruby on Rails programmer who has read the introductory books and is capable of building a Rails system. You need to be fairly sophisticated and know something about the ideas of good object-oriented design and having a some knowledge of patterns makes the book feel more like familiar territory. If you fit the profile then this is very well worth reading.
You might have expected this "pick of the shelf" article to start with titles that were awarded the top rating. Instead I've left them till them last as they are not obvious choices for reasons that will become apparent. Something they have in common is that they are both considered to be "a bit too enthusiastic" in places.
Metaprogramming Ruby is a book that will help you understand why Ruby programmers often claim that Ruby is special. It adopts an idiosyncratic tutorial format in which a master programmer called Bill guides his increasingly skilled assistant, i.e. you. The task is to build some software for a remarkably knowledgeable boss figure and in doing so you will go from being a Ruby novice to an expert, especially if you have migrated to Ruby from another language and are still using it as if it was another language.
Recommending it to all Ruby programmers other than complete beginners, Ian Elliot writes:
Even if you don't want to go too deeply into metaprogramming and don't want to actually make use of these "dangerous" techniques, the book will impart enough deep understanding of they way Ruby works and its philosophy for you to be a better Ruby programmer after reading it.
Mike James awards 5 stars to Eloquent Ruby on the grounds that it is a "great guide to good style" and writes:
Even if you don't use Ruby it is a book well worth reading. It does major on the way that you should use Ruby and how to write Ruby in a way that is true to the language, but it has so much to say about programming in general that it is worth reading for non-Ruby programmers.
Read either of these two last books and you will understand why Ruby is a language that generates so much enthusiasm, and why the most common fault in a book on Ruby is that the author tends to oversell a good product.