Rails Books

This page is devoted to recommended books for the reader who wishes to learn how to program in Ruby on Rails (the framework). You can click here if you are looking for the best books on Ruby (the language) on its own.

If you don’t have a Ruby foundation you may want to grab a couple of books off the Ruby page, since approaching Rails without Ruby skills is not a wise idea. Rails is a web framework that’s written in Ruby for writing web applications in Ruby. Without knowing the language it’s hard to get the most out of the framework. If you can, at least consider reading both a Ruby and a Rails book at the same time (if you’re in a rush to learn Rails).

Rails has been attracting a lot of attention amongst developers and because of this you’ll find plenty of new titles on Amazon’s virtual shelf. Here I recommend what I consider to be the best Rails books out there today.

A word about Rails versions

Ruby on Rails 3.1 was released recently. While lot of great Ruby on Rails books out there target Rails 2, do not make the mistake of buying a Rails 2 book if you intend to develop with version 3 of the framework. Rails 3.1 features a substantial rewrite of the framework, so there is not much point in learning an obsolete version. The more conceptual Rails 2 books may still be somewhat worthwhile, but on this page I’ve ONLY included Rails books that target Rails 3.1 (so as to help make your learning experience easier).

Recommended Ruby on Rails tutorial/reference books ordered by difficulty level

Title: Ruby on Rails 3 Tutorial
Level: Beginner programmer | No experience with Rails
Type: Tutorial

Ruby on Rails 3 Tutorial

This book is probably the clearest, nicest introduction to Rails ever written. It assumes that you have zero knowledge of Rails, however it is still a great read for those who have some experience as well (or who are trying to upgrade from their existing Rails skillset). Proceeding step-by-step, the Rails 3 Tutorial will give you a wealth of confidence and teach you the best way to take advantage of Rails when it comes to building web applications. Not only does it cover Rails 3, but also delves into the kinds of tools that are typical of the Rails ecosystem (such as Git or deployment on Heroku). I’ve read plenty of Rails books and trust me when I tell you that you want this one to help you go from zero Rails knowledge to building your apps in Rails in a month. The PDF version is particularly useful if you want to follow along and copy over snippets of code. The book also comes with a series of screencasts, which are complementary to the tutorial (given that they show the creation of a complex app over the course of 19 hours of video). The book gives you the theory and practice, while the videos focus on showing you “in person” how it’s done. Highly recommended combo.

Ebook + 19h of videos | Printed version

Title: Rails Best Practices
Level: Beginner programmer | Some experience with Rails
Type: Cookbook

Rails Best Practices

This is a truly great training program that will expose you to the best practices when working with Rails. It’s a must have for beginner to intermediate developers who are serious about Rails. You can read my full Rails Best Practices review if you wish.

Title: Agile Web Development with Rails (4th Edition)
Level: Intermediate programmer | Some experience with Rails
Type: Tutorial

Agile Web Development with Rails Book

This is the fourth edition of the first book that was available on the subject of Ruby on Rails. It’s an excellent tutorial for intermediate and experienced developers. Most Rails programmers have used this award winning book in order to help them learn the framework. It’s a broad, far-reaching tutorial that has been refactored with the evolution of web development over the course of the past few years and the new Rails 3.1 features and best practices in mind.

Title: The Rails 3 Way (2nd Edition)
Level: Intermediate programmer | Some experience with Rails
Type: Reference

The Rails 3 Way Book

Those of you who already have a basic understanding of how Rails works – which you may have acquired by reading tutorials, writing some sample apps, or studying one of the books listed above – might want to bring your knowledge on the subject up to a pro level by reading Obie Fernandez’s “The Rails 3 Way“. Obie is one of the top Rails programmers in the world, as well as an excellent teacher who placed a wealth of information in this great book, so that advanced programmers could get the most out of the Rails framework. It’s an excellent, extensive reference that will be particularly useful to developers who are already confident about their Rails skills. Covering Rails 3, this brand new book is the most up to date reference out there. A must have for any serious Rails developer.

Title: Rails Antipatterns
Level: Intermediate programmer | Some experience with Rails
Type: Cookbook

Rails Antipatterns Book

Antipatterns are common patterns that should (ideally) never be used because they end up being counterproductive to your application. This book teaches how to avoid common Rails pitfalls and how to take advantage of the framework’s best practices so as to develop robust, clean, maintainable Rails web applications. Despite the relatively advanced nature of the topic, this book remains surprisingly readable and accessible. A fun, useful title once you’ve got the basics down pat.

Title: Crafting Rails Applications: Expert Practices for Everyday Rails Development
Level: Intermediate programmer | Experienced with Rails
Type: Cookbook

Crafting Rails Applications Book

This book is a gem for the experienced Rails programmer. Within it you’ll find advanced techniques for accomplishing complex tasks such as building your own template management system, publishing and subscribing to your application events, internationalizing your applications, and much more. It’s highly recommended.

Which Rails book should I buy?

Unless you’re already an experienced Rails programmer, start with the Rails Tutorial followed by Rails Best Practices. After you’ve completed the tutorial (and preferably the optional but highly recommended screencasts) and Rails Best Practices, you may want to further refine your style and further learn best practices with Rails Antipatterns and/or go more in depth with an advanced tutorial such as Agile Web Development with Rails (4th Edition). This will place your Rails-specific theoretical knowledge ahead of that of many Rails programmers. Regarding the practice, it all comes down to writing code and doing so on your own projects. This way you’ll be able to gain practical experience with Rails that will be backed up by a solid foundation of theory. You can always buy the Rails 3 Way as a reference that you can use to go more in-depth as needed.

Go to the Recommended Ruby Books

Updated: October 2011