2006-01-15
Agile Web Development with Rails
Authors: Dave Thomas and David Heinemeier Hansson
This is the main print book covering the hot web development framework that it seems everyone is talking about, Rails. With input from the main developer it is as definitive as possible for such a fast-moving target. The book contains introductory, tutorial, and in-depth sections, and wisely leaves out much of the item-by-item reference material some books use to fill space. That you can get online.
The tutorial is very good overall. I could wish for a subject more interesting than yet another web store, but at least the authors acknowledge how trite it is and use it for their demo because the subject is so well understood. I would have liked to see the tutorial be a little longer with integrated testing and security material. As it is, testing and security each get their own chapters, and the testing chapter starts with an acknowledgement that tests should have been written all along. This appears to be an artifact of the testing chapter being contributed by a different author. (The book has four other contributors credited on the cover, each having written one chapter while the main authors wrote the rest.)
Part III contains chapters going in depth on the components that make up the Rails system. The coverage appears to be complete, and no immediately obvious questions were left unanswered. Again, the authors go into detail while leaving the extreme detail to the included documentation.
My gripes are minor. The chapter on "The Web, v2.0" seems to assume that the reader knows what that is (it's an empty catchphrase coined by Tim O'Reilly to attract people to a conference) and that they care. The examples are good, but not great. The book avoids going into detail on HTML and CSS throughout, but a significant understanding of those topics is needed to really make use of the features presented in this chapter. Also, compatibility with users disabling JavaScript or with non-compatible browsers is given a very short treatment.
The Action Mailer chapter shows how to send plain-text and HTML emails, but not a proper mixed-format email. The security chapter hits some high points, but doesn't really seem long enough. The deployment chapter basically admits that there is no good way to deploy Rails in a production environment, but that's not really a problem with the book because it's true!
Before that leads me to a review of the Rails software itself, I'll finish reviewing the book by finding it well worth the list price (mine was a gift) and time spent reading. Multiple Rails tutorials are available online and I first learned from them, but the presentation herein stands above them all. More importantly, the tour of Active Record and Action Pack is unlike anything found online, informative but complimentary to the API documentation, not trying to replace it. Agile Web Development with Rails was a worthwhile read that I expect to repay me quickly in the next few months.
This is the main print book covering the hot web development framework that it seems everyone is talking about, Rails. With input from the main developer it is as definitive as possible for such a fast-moving target. The book contains introductory, tutorial, and in-depth sections, and wisely leaves out much of the item-by-item reference material some books use to fill space. That you can get online.
The tutorial is very good overall. I could wish for a subject more interesting than yet another web store, but at least the authors acknowledge how trite it is and use it for their demo because the subject is so well understood. I would have liked to see the tutorial be a little longer with integrated testing and security material. As it is, testing and security each get their own chapters, and the testing chapter starts with an acknowledgement that tests should have been written all along. This appears to be an artifact of the testing chapter being contributed by a different author. (The book has four other contributors credited on the cover, each having written one chapter while the main authors wrote the rest.)
Part III contains chapters going in depth on the components that make up the Rails system. The coverage appears to be complete, and no immediately obvious questions were left unanswered. Again, the authors go into detail while leaving the extreme detail to the included documentation.
My gripes are minor. The chapter on "The Web, v2.0" seems to assume that the reader knows what that is (it's an empty catchphrase coined by Tim O'Reilly to attract people to a conference) and that they care. The examples are good, but not great. The book avoids going into detail on HTML and CSS throughout, but a significant understanding of those topics is needed to really make use of the features presented in this chapter. Also, compatibility with users disabling JavaScript or with non-compatible browsers is given a very short treatment.
The Action Mailer chapter shows how to send plain-text and HTML emails, but not a proper mixed-format email. The security chapter hits some high points, but doesn't really seem long enough. The deployment chapter basically admits that there is no good way to deploy Rails in a production environment, but that's not really a problem with the book because it's true!
Before that leads me to a review of the Rails software itself, I'll finish reviewing the book by finding it well worth the list price (mine was a gift) and time spent reading. Multiple Rails tutorials are available online and I first learned from them, but the presentation herein stands above them all. More importantly, the tour of Active Record and Action Pack is unlike anything found online, informative but complimentary to the API documentation, not trying to replace it. Agile Web Development with Rails was a worthwhile read that I expect to repay me quickly in the next few months.