20 Ruby on Rails Tutorials to Rule Them All

20 Ruby on Rails Tuts to Rule Them All

Today, we’ll review twenty incredible Ruby on Rails tutorials that every developer should consider reading. Whether you’re a beginner who prefers video tutorials or an experienced dev, you’ll find an applicable tutorial here!

1. Try Ruby!

If you’re going to have to learn a brand new language, why not learn it interactively? The Try Ruby! hands on tutorial is a step-by-step guide that shows you the basics of the Ruby language in 15-minutes. While it’s not strictly a Rails tutorial, it’s best to know the basics of Ruby before you dive right into the Rails framework.

2. Getting Started with Rails

Ruby Tutorials

This is the definitive tutorial on Rails. Written by the Rails team themselves, the tutorial shows you how to make a simple blog application. Simple, well documented, and perfect for beginners.

3. Using Ruby on Rails for Web Development on Mac OS X

If you’re a Rails developer, a Mac is an excellent choice for development as Rails comes shipped with Leopard. In fact, installing Rails on a Mac is as simple as typing:

$ gem install rails

and you’re ready to start building apps.

Apple has a lengthy document on the benefits of using a Mac for Rails development, as well as code examples and best use cases. The tutorial is a tad dated, but the guts of the article are timeless with respect to technologies and methods used.

4. UC Berkeley One-Day Rails Course

If you’ve got a whole day set aside to learn Rails, the One-Day Rails course from UC Berkeley is fantastic. The learning course is broken down into 7 one-hour installments, and gives you the basics of Rails.

5. Why’s (Poignant) Guide to Ruby

Ruby Tutorials

Again, not a true Rails tutorial, Why’s (Poigant) Guide to Ruby is a fantastic and, ahem… odd way to learn Ruby. In fact, the free guide is so bizarre that I found it more useful than other learning resources because of its wit.

I’ll be straight with you. I want you to cry. To weep. To whimper sweetly. This book is a poignant guide to Ruby. That means code so beautiful that tears are shed. That means gallant tales and somber truths that have you waking up the next morning in the arms of this book. Hugging it tightly to you all the day long. If necessary, fashion a makeshift hip holster for Why’s (Poignant) Guide to Ruby, so you can always have this book’s tender companionship.

Odd? Yes. Effective? Absolutely.

6. Dominating Authlogic

Authlogic is one of Rails most popular authentication systems. Yet because Authlogic is so robust, it can quickly become complex if you’re trying to utilize all the features and add different authentication scenarios.

Railscasts has an excellent screencast on how to manage complex use cases of Authlogic. The screencast runs just over 14 minutes long.

7. Ruby on Rails on Oracle: A Simple Tutorial

Rails is an easy framework to work with, but like any technology it takes time to master.

Oracle has a hands-on tutorial on how to build a simple product catalog with Rails with an Oracle database.

8. Beta Invitations with Rails

Ruby Tutorials

If you’re building a web application that you want to marinate in “beta” status for a while, then you’ll probably want to construct some sort of beta invitation system. Railscasts has an excellent 22-minute tutorial on how to set up beta invitations. It’s easier than you might think.

9. Migrations

For Rails newbies, migrations might be difficult to wrap your head around.

Migrations are a convenient way for you to alter your database in a structured and organized manner.

The Rails team has crated a nifty tutorial on everything migrations, like how to create migrations from within your application, and how to use them to their full potential.

10. Rails Routing

Routing is another key aspect of Rails, and the ThinkFresh blog has a thorough tutorial on everything you need to make routes work from within your application. A great starter guide for Rails beginners.

11. Sexy Forms in Rails

Ruby Tutorials

If you’re not keen on making every single form by scratch, check out RubyPond’s Sexy Forms in Rails. The tutorial shows how to build forms without having to fill in labels or worrying about formatting.

The tutorial eventually led to FormBuilder, a custom builder for creating accessible forms in Rails.

12. Developing iPhone Apps Using Ruby on Rails

Ruby Tutorials

Developing iPhone Apps Using Ruby on Rails is a three-part series by IBM. It covers things like setting up your development environment (the authors use Eclipse with the Aptana plugin), serving mobile content and how to detect iPhone browsers.

13. Monitoring Backgroundrb with God

God, (at least in Ruby terms), is a monitoring framework for Ruby applications. It monitors things like server processes and running tasks, to make sure that your application runs smoothly on your server.

Aside from server monitoring, you can use God to monitor other features of your Ruby apps as well. There’s a pretty heady tutorial on how to monitor the Ruby job processing daemon BackgrounDRb. You can build upon this tutorial to keep tabs on other aspects of your application as well.

14. Rails Security

Ruby on Rails is vulnerable to the same security problems that all other web apps can potentially have. The Rails team has put together a long guide on nearly all aspects of Rails security. Learn about popular injection methods, Rails-specific problems and how to effectively handle sessions.

15. Make Your Own IM Bot In Rails

Ruby Tutorials

As the web becomes more connected and in real-time, more applications are starting to utilize IM functionality. Rubypond has a tutorial on how to make an IM bot using Ruby, and then how to interface the bot with Rails.

The tutorial is definitely for those with at least an intermediate understanding of Ruby and Rails.

16. Using Java Libraries in Rails Applications

NetBeans, the popular Java IDE, has a tutorial on how to use the Java API in Rails applications. This is an advanced tutorial, and only for those very familiar with both Java and Rails.

17. Building a Social Networking Site in Rails

As sites become more and more social, the demand for those social features in Rails applications will also go up. Here’s a tutorial on how to build aspects of a social networking site using social networking plugins for Rails. You can pick and choose which features you’d like to add or leave in the tutorial.

18. How to Run a Stealth Rails Application

Aside from being a killer billing solution, Freshbooks is a Rails application that tries to seem like a PHP application. In fact, they say they can pull it off with a single line of code in the routes.rb file:

map.connect ':fake_filename.php', :controller => 'php', :action => 'dispatch'

Surprise!

19. Scaling Rails

Ruby Tutorials

With high-profile Rails sites like Twitter taking a toll on scalability last year, the public has consistently asked the question: Will Rails scale?

Scaling Rails is a video series on how to effectively scale your Rails app through 13 screencasts. You’ll learn multiple types of caching and database optimization techniques, as well as how to optimize database structures.

20. Dropping and Sorting with Ajax and Scriptaculous

The name of this tutorial says it all. Learn how to write draggables and sortables with Rails and Ajax. The article has coding examples and can easily be followed by a Rails beginner.


Add Comment

Discussion 53 Comments

  1. Luis Craik says:

    I’m the first one! :o Yeah! Great tut! I like it, keep it up Tutsplus! ;D

  2. This looks like something I can do over the weekend :D

  3. sven says:

    looking good

  4. Alex Wind says:

    Nice list, I’ve heard of most of them but I never Freshbooks runs on Rails lol

  5. Scott says:

    Considering that the Freshbooks thing was posted on April 1, I think that was actually a coy rip on RoR. Seems like you got punked!

  6. Jermaine Hercules says:

    I like the hands on tutorial

  7. cbmeeks says:

    @mike
    1998 called and said they want their internet back. lol

    w00t!!

    Nice list, btw.

  8. curtismchale says:

    Check out RailsBridge and Railstutor as well for a new set of sites coming up with Ruby on Rails teaching.

  9. CSS Ninjalito says:

    I think #18 was a joke from another list.

  10. ragingfx says:

    To rails or to django..
    Gonna try rails this day because of this useful post. thanks!

  11. Michael says:

    Nice! I don’t know too much about Ruby on Rails, but have a good friend that does use it quite a bit. I guess this will help me get started. Thanks!

  12. Thanks!!

    twitter.com/sonergonul
    friendfeed.com/sonergonul

  13. Sunir Shah says:

    Can you guess which one of the list is an April Fool’s Joke! ;)

  14. Paul says:

    Every time somebody believes in #18, God kills a kitten.

  15. Aayush says:

    Nice list….I’m a PHP person, but i really wanna learn rails….this one’s gonna really help….

  16. What I’m really wondering is why do you find so many tutorials for certain frameworks, such as jQuery, CodeIgniter, RoR, Django, etc while the “vanilla” language is much more important. I’d love to see an tutorial about vanilla Ruby since I’m quite interested in learning it :)

    • Chris says:

      I’d agree, except Ruby (to my understanding) within context of building web apps is always “on Rails”. Not like PHP where you can use it minus a framework.

      • Actually, as far as web applications are concerned, Rails is not the only way. You can build Ruby web apps without a framework, or using one of quite a few other frameworks–Sinatra, Merb, Camping, and Padrino(brand new) to name the most visible examples.

        As you said, Ruby doesn’t match PHP in its wide availability through any web host, and ease that comes with writing a single PHP file and off you go. So one might think it’s not worth it to focus a lot of attention on plain Ruby if you “need Rails.” Strong familiarity with the Ruby language in general, object-oriented programming, RESTful principles, and HTTP are vital to being successful with Ruby on Rails. Plus, learning Ruby is just a lot of fun. :)

    • Dan Harper says:

      ^ As above, Ruby isn’t a general-purpose language, and not a web-specific one like PHP is.

  17. Michael Rice says:

    I’ve always been telling myself that I’ll learn some RoR.

    I never get around to it. Either way, I’ll bookmark this!

  18. Shane says:

    Ooh, ooh. Another tip: Google Search.

  19. Ian says:

    I see some people commenting on how 18 is fake… but what exactly do they mean? Are they suggesting the files just show up with a .php extension? If so can’t you already do that with a .htaccess file…

    • Sunir Shah says:

      April Fools! (check the post date)

      • Ian says:

        Yes, I realize it was an april fools joke… I’m just saying if their joke was that you can make RoR apps look like they’re PHP then it’s really not that funny since you can do that with an .htaccess file.

  20. Harro says:

    I tried Ruby, but I keep running into things I dislike or find odd.. Django is the framework for me.

  21. keidi says:

    great tuts. Thank you.

  22. DemoGeek says:

    I would have loved to see some of the deployment related tuts also mentioned. Disappointed to see there is nothing listed for deployment and that’s the dreaded part of Rails that kept me away from taking it seriously. Would certainly love to see a tut on how to have a Rails app version controlled and deployed to a web host.

    • wtp says:

      you’re right, I tried Ror a while ago, and deploying is a real nightmare!!
      and there are loads of beginner tuts, but when you get to an intermediate level, it becomes difficult to find good tuts. Also things go so fast that when a book comes out, it already outdated

  23. Ryan Donahue says:

    Excellent list! Can’t wait to check these out over the weekend. Any way we could get the same type of list for PHP at some point?

  24. Glenn Gillen says:

    Hey, thanks for the links to my rubypond site :)

  25. Cody says:

    Cool, thanks for the list. I’ve been meaning to try out some Ruby on Rails, just haven’t got into it yet. With this list, it will be easy to find somewhere to start.

  26. #19 is awesome. some of the videos are specific to rails some are more general all about scaling.

  27. Thaninrat says:

    I’m make sure. I’m read this. XD

  28. Code.My says:

    Great list of Rails Tuts, any recommend book that can SPEED UP learning phase? or skill?

  29. xain says:

    Thank you.
    BTW, I had collected a list of all books on rails, and I hope it is useful to anybody.

  30. Milin Paul says:

    Can anybody help me by providing tutorials on how to built video streaming application (like youtube) on Ruby On Rails

  31. mdsoren says:

    The 1st tut is no longer avaialbe… at least the page comes up “cannot be found”, nor does the root domain resolve, guess I will move on down the list!

  32. sunny says:

    @Milin

    If you need to allow users to upload videos you’re going to need some kind of attachment library. You can either write your own, or use Paperclip.

    Once you got that you’re going to need a way to play the videos with some kind of flv player. There are plenty of open source ones. I use http://www.longtailvideo.com/players/jw-flv-player

    Hopefully this helps you get at least started.

  33. Vincent says:

    Exactly what I needed. Thanks a lot!

Add a Comment

To add a code snippet to your comment, please wrap your code like so: <pre name="code" class="html">YOUR CODE</pre>. You can replace the class name with "js," "css," "sql," or "php." If there are any "<" or ">" within your code, please search and replace them with: &lt; and &gt; respectively.