Top Ruby on Rails Tutorials

A former student asked me a few days ago how I learned Ruby on Rails. The answer was that I simply read a lot of great tutorials. So in the spirit of sharing, here is the tutorial I found most useful:

Intro to Ruby on Rails – Scott Chow offers his excellent introduction to Ruby on Rails. This is the article that got me really excited about RoR.

Hey, Ruby on Rails Fans!

Want more up-to-date tutorials on Ruby programming? OK, we heard you. Expect more Rails content in the near future!

Happy Rails developing and if you have any other tutorials that you’d like to share, please leave them in the comments!

Ruby Programming Tutorial


Ruby on Rails continues to be very popular, and for someone getting started a good Ruby programming tutorial might be the difference between spinning one’s wheels and understanding Ruby quickly. Digital Media Minute did a well-received post on Ruby on Rails Tutorials a while ago, and as RoR has evolved to become quite complex over the last five years I thought it would be helpful to create another list of tutorials. Some of these tutorials focus on Ruby the programming language or the Rails web application framework, but this list includes excellent examples of both, in the interest of being complete. Also, while these lean more toward beginners, look for more advanced Ruby programming tutorials from Digital Media Minute in the future. This list is maintained: I update it when I find a good Ruby on Rails tutorial, and suggestions are much appreciated.

Getting Started

    1. Here’s an oustanding guide by Patrick Lenz at Sitepoint, on the basics of Ruby. Lenz starts by providing some context (scripting vs compiled languages, OOP concepts) then gets down to his introduction in a clear, conversational tone.
    2. Not surprisingly, Smashing Magazine has an excellent intro guide by Jan Varwig to RoR that is pretty recent. Some web development familiarity is assumed, and the author’s aim is to help you decide if Ruby on Rails is for you, without having to go through an entire tutorial.

  1. Take a look at something really excellent, by Kalid Azad over at BetterExplained.com. He has a  guide that is part cheat sheet, part Ruby programming tutorial focusing specifically on the concepts that he found confusing as he learned Ruby on Rails. (His whole site, applying this philosophy mostly to math and programming, is well-conceived.)
  2. 5. Why’s (Poignant) Guide to Ruby is outrageously imaginative, a completely original way of teaching a programming language, at least in my experience. A tutorial with multi-tangential storylines. Think Alice in Wonderland meets–hmm–William Gibson? Not everyone’s cup of tea maybe, but really awesome creativity here. I couldn’t find the author’s name, he/she seems to be a world-class creative type who just happens to be a programmer. Give this to your smart 12-year-old who is a bit put off by technology and see what happens. Update 6/21/09: The same mysterious author has created a site for beginners that invites you to type ruby commands directly into your browser while being led along by a tutorial. For someone who might benefit from being led along from the very basics, this tutorial has a lot of utility, as well as being very cool & easy to use.
  3. Another Ruby tutorial with plenty of imagination is the Humble Little Ruby Book. Don’t be fooled by the title-I found enough attitude here to keep me smiling as I looked it over. Not everyone needs personality their introduction to a programming language, but it has to make the material feel more accessible and I give high marks to the authors for making the additional effort. Downloadable as a free 147-page ebook!
  4. Rubyonrails.org has a guide covering Rails Installation, creating an application, and connecting the application to a database– the general layout of a Rails application. Starts with basic principles of MVC and RESTful design and gets you familiar with the initial components of a Rails application. Note that this tutorial focuses on the Rails framework as opposed to the Ruby language–it assumes some familiarity with Ruby.
  5. For a comprehensive, maybe even definitive guide to Ruby, with a tutorial as well as additional resources, you should check out Rubycentral’s offering. After the tutorial, there’s a section on Ruby’s integration into it’s environment: running Ruby, programming Ruby with the Web, creating GUI applications using Tk, using Ruby in a Windows environment, native API calls, COM integration, Windows automation, extending Ruby and embedding Ruby within code of your own. The third and fourth parts are an advanced section and a library reference with over 800 methods and 40+ built-in classes and modules. Sheer excellence. Deserves a bookmark if you are serious about Ruby.
  6. Here’s a 35 minute screencast of a pair programming session between David Heinemeier Hansson and Miles K. Forrest. Hansson is the creator of the Rails framework and Forrest is a beginning web application programmer. More than a tutorial, I found it a fascinating exchange.
  7. Digital Media Minute also did a lengthy, detailed how-to guide on Installing Ruby on Rails with Lighttpd and MySQL on Fedora Core 4 that remains quite popular.
  8. We’re a bit biased, but we think this short article containing a list of seven tutorials for installing ruby on rails on a windows machine is worth a look.
  9. This one-day course from UC Berkeley is broken into seven one-hour videos, and gives you access to the lecture slides too. Assumes familiarity with basic Java programming concepts and that you’re ‘reasonably experienced’ in 1-2 languages.
  10. Meshplex.org has a collection of over 30 modules aimed at helping beginners to learn Ruby on Rails. Plenty of sample code and examples.
  11. Web Developer’s Virtual Library has a small but growing list of Ruby tutorials, most of which address very specific areas of Ruby related topics, like views, REST and ror models.
  12. Rails In A Nutshell is under development (Nov. 2009), but is being presented on the O’Reilly Labs as an “Open Feedback Publishing System” project, that lets readers add comments to almost every paragraph. Excellent example of collaborative publishing, but the book itself looks to be an excellent, concise intro to Rails, with plenty of examples. Well, you expect excellence from O’Reilly.
  13. Over at railstutorial.org, Michael Hartl (of RailsSpace) is producing a Ruby on Rails tutorial that looks to be of extremely high quality, with a gorgeous, easy to read layout. It should be completed by June 2010 but the first several chapters are already available. Items covered so far (Dec. 2009): version control, basic deployment, controllers and helpers, building Ruby classes, integrating layouts, and building a signup system. There will eventually be a screencast series too.
  14. If you are a .NET developer who is interested in using Ruby on Rails, take a look at this well-done introduction to Ruby from the standpoint of a .NET developer, by Michael Ceranski at codecapers. As it outlines the steps to building a simple RoR application on a windows machine it will teach you how to use Ruby on Rails with SQL Server, as well as help you see similarities between the features in ASP.NET stack and Ruby on Rails framework, where they exist.
  15. A whole lot more than a ruby programming tutorial is Ruby Best Practices by Gregory Brown, available as of March 2010 as a free eight-chapter pdf.
  16. RubyKoans.com is a self-paced learning resource for developers looking to learn ruby or sharpen their existing toolsets. The library works on Mac OS X, Windows and *nix systems running almost every flavor of Ruby under the sun. Great name by the way, and who says that a website whose aim is to teach you ruby can’t be absolutely gorgeous, as RubyKoans is?

Context:

    1. >>This list would be incomplete without a link to

Rubyonrails.org

    1. . There is documentation, screencasts, a blog with upcoming workshops, podcasts, a job board, etc. etc. Another good place to have bookmarked if you are serious about

Ruby on Rails

    1. .

>>Here is an interview with the creator of Ruby, Yukihiro Matsumoto or ‘Matz’, and here’s another talk with Matz from 2003.
>>Reading David Heinemeier Hansson’s blog would be a good way to keep up with the evolving story of Rails. It’s updated infrequently, but the archives provide an interesting meta-view of the framework.