4 Essential & 7 Optional Ruby on Rails Tutorials
Ruby on Rails really speeds up web development. It uses a concept of “Convention over Configuration”, basically meaning that, if you don’t fight the conventions, the framework does a lot of the work for you. For example: session management, database calls, creating the database itself, passing variables between the model and the controller, and many more. To give you an idea, you can have a site using full user authentication built less than a week after learning. There a wealth of plug-ins available that can be used to provide the basis for common functionality such as image uploads.
Here are list of tutorials to get you started on Ruby on Rails. They all assume you have a basic understanding of object orientation and experience with some other third level language.
Essentials
1. This is what really got me on the right track, for the essentials make sure you keep reading until you hit the AJAX tutorial, you build a simple library management system – http://www.tutorialspoint.com/ruby-on-rails/rails-framework.htm
2. Once you’ve got your head round migrations this is useful -http://dizzy.co.uk/ruby_on_rails/cheatsheets/rails-migrations
3. “Starting Ruby on Rails - what I wish I knew” – http://betterexplained.com/articles/starting-ruby-on-rails-what-i-wish-i-knew/
4. Similar to the previous, not really a ‘tutorial’ as such, just a list of those little idiosyncrasies that can take you ages to figure out on your own – http://www.slash7.com/articles/2005/01/24/really-getting-started-in-rails
Optional
1. Basic User Authentication (this is an excellent tutorial) - http://www.aidanf.net/rails_user_authentication_tutorial
2. Image upload plug in – http://www.kanthak.net/opensource/file_column/:
3. “21 Ruby Tricks You Should be Using In Your Own Code” – http://www.rubyinside.com/21-ruby-tricks-902.html
4. Best practices – http://wiki.rubyonrails.org/rails/pages/RailsBestPractices
5. Modelling many-to-many inheritance – http://andygoh.net/blog/index.php/2008/06/17/ruby-on-rails-many-to-many-relationship/
6. OO Inheritance (RoR supports Single Table Inheritance) – http://www.juixe.com/techknow/index.php/2006/06/03/rails-single-table-inheritance/
7. Tagging plug-in – http://agilewebdevelopment.com/plugins/acts_as_taggable_on_steroids
Update (22/08/08): Some extras
Powerful time commands - http://www.developer.com/open/article.php/3729206
Useful tricks to save you time and improve your coding style – http://www.rubyinside.com/19-rails-tricks-most-rails-coders-dont-know-131.html
More quick tricks - http://www.rubyinside.com/21-ruby-tricks-902.html
If you’re in need of a To Do List, check out this site I knocked up whilst I was picking up Rails basics:
www.reallygoodtodolist.com (it’s still in development, all feedback welcome)
Thanks All!

If your struggling with your MVC this is a great short piece on structuring your app.
http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model
JP said this on July 25, 2008 at 7:33 am |
file_column is from 2005. you probably want to look at paperclip http://www.thoughtbot.com/projects/paperclip if you’re uploading images.
Liam Morley said this on August 2, 2008 at 3:52 am |
@JP: That’s a great article, learning that kind of design pattern early can save you a lot of time as your applications get more complex
@Liam: Thanks for the heads up on paperclip – I’m currently building an application with heavy image upload activity so I’ll definitely check it out
bendtheblock said this on August 3, 2008 at 12:55 pm |