Excellent Book - Not for Beginners
I'm fairly new to Rails, and for the past few months I've been working through a lot of "Intro to Rails" books, and others where you build a big project over the course of the book. The materials are all excellent, but they did leave me with a lack of understanding. Often, with Rails, I would do something, like create two models, create associations, etc., and it works for me...but I really didn't have any idea how it was working.
That's where this book helps tremendously. There are not large examples for development, but it tells you what Rails is doing under the hood, how it's doing it, and why. It's a wonderful book for those looking for a deeper understanding.
Of course, it's definitely not for complete beginners. You should already know how to do at least the basics with Rails (particularly the console), and it would help to have a base understanding of Ruby.
Good author, bad publisher
This is a good book that could have been better with a better publisher. I'm very disappointed with Addison Wesley here.
First, the production quality of this book is horrid. If I had picked it up physically in a book store, I would have never bought it. The paper is thick and heavy, yet cheap, like elementary school construction paper. I have books of equal page numbers that are a centimeter thinner. I literally took a razor blade to mine and split it in two so I could carry it around to read it (that's how committed I was to reading it, which says something for the content :-). For anyone interested, splitting it exactly at Chapter 12 works without it falling apart.
The editing was horrid too. Somewhere between the copy editor and the technical reviewers, someone should have caught the repetition. As an author myself, I know how hard it is to review your own work, especially when it comes to wordiness and repetition. So I don't blame the author, but the editing/reviewing process. The editors/reviewers should have also caught some of the continuity problems, starting with the very first chapter. When I started reading the book I had about a year of Rails experience and had read about 3 other Rails books. While I read the first chapter, I was thinking: "Wow... how lost are Rails noobs right now?"
Next, there are 30 pages of fluff at the beginning of the book. Again, not likely a decision of the author, but filler inserted by publishers. By comparison, The Ruby Programming Language (O'Reilly) has 5 pages before the first chapter. There is also over 100 pages of API reference, which were outdated the second the book hit the shelves. Again, I cannot imagine Obie actually suggesting this, and I know how pushy publishers are. Note to Addison Wesley: There's this really neat thing called the internet where we go for up-to-date API references now!
Finally, this is not a Rails 2.0 book. This is where I truly sympathize with any author of a technical book. Writing books takes a damn long time and is very hard. It's often the case that the technology changes by the time the book is finished. But that does not mean that a publisher should LIE on the front cover on the book. Of course, Rails 2.0 is mentioned in the book. But so many things from the migrations to the ActiveRecord discussion were not even Rails 1.2! Some of the soft information and suggestions were still worthwhile, but it still isn't Rails 2.0. So to put a big "Covers Rails 2.0" stamp on the front is borderline dishonest... at most, it "mentions 2.0 sometimes".
This is still a good book and a worthwhile read. Under almost any other publisher it is a 5 star book. The star lost is at the hands of Addison Wesley (I wanted to take two, but Obie doesn't deserve that). I hope a second edition comes out that covers all of these production quality issues, thus putting a better frame around a worthwhile piece of work.
Not a good way to start with Rails
This book does a poor job of connecting the dots. This book probably won't work for you if you are just starting out with Rails.
Best I've seen (which isn't to say it's great)
I picked this up purely on the basis of Zed Shaw's endorsement of Mr. Fernandez as one of the few non-stupid Rails proponents out there, and for the most part I'd agree with these sentiments. While it is completely unsuitable for anyone who is completely new to web development or the Ruby language, it is very suitable for anyone else who wants to skip all the evangelical sycophantry that plagues other Rails related titles and jump straight into the meat of the framework.
I still don't like a lot of things about Rails, and I don't like a lot of things about this book, but it is by far the least painful way to get acquainted with the project I've seen to date, allowing the reader to formulate their own educated opinion on these matters relatively quickly.
The Essential Guide
This is *the* rails book to get. Even if you're an experienced Rails developer, you'll find loads of great information and advice. The real-world examples are really helpful. Includes an excellent tour through the framework itself. This is one of the few Rails books that covers testing well. Obie is obviously a Jedi.