I'm often asked about where to go and what to read to learn about Rails. In fact just the other day, so I'm going to outline some details here so to not repeat myself in the future or even forget! This is not a definitive guide but rather some links to things you should read and think about.
Sure you can go on right ahead and start with Rails and start building a web application but if you're unfamilar with Ruby then please take the time to learn the basics, it will help considerably.
There are quite a few places you could learn about Ruby, books being one of them, here are some of my favourites.
- why's (poignant) Guide to Ruby This is a different kind of programming book, it's distributed under Creative Commons and has some interestig cartoon graphics to go through Ruby.
- Ruby Koans Created by Jim Weirich and Joe O'Brien this is a hands on way to learn more about Ruby it's a test driven approach for you to learn Ruby's internals. I myself still use these tests to remind me or even learn about things I didn't know about.
Most guides on the web don't include tests. And what I mean about tests is using rspec, test unit, cucumber to progamatically test your application. Not having someone click through the site or pages. The importance of testing isn't directly required to learning about ruby or rails BUT will help you in understanding what's going on (like the Ruby Koans) and get you into a good practise when developing your application.
To learn about the rails framework and it's make up check out these sources, there are some great screencasts you can now watch.
- Peepcode - Is paid but worth it. Even watching some of the play by play is a good watch to see how others work.
- Railscasts - Very good free and now has pro content on how to do common things in rails. Has good screencasts on commonly used gems that enhances rails.
- Rails Guides - is a good source of information too on the rails framework.
News and updates
I found it helpful to follow some sources for updates on what gems are out there or new gems that do something clever. Here are some that I followed for this and still do.
- RubyFlow - a good source for new information on Ruby/Rails
- Ruby5 Podcast - I used to listen to listen to podcasts quite a bit when I had time, but have stopped now. Give it a go, sometimes it quite good to hear discussion on implementation decisions and justificiation on gem use.
- Pivotal Blabs - This is a blog ran by Pivotal Labs where they share great little tips from their standups.