How to learn Ruby on Rails 3
I'm having a blast learning Ruby on Rails because it is actually kind of fun developing on it. Concepts are pretty easy to grasp and things are pretty "magical" as they would like to put it. The learning curve is steep at first but once you get used to the syntax and idioms, things get smoother.
Having gone through Agile Web Development With Ruby on Rails by Pragmatic Programmers, I felt my understanding still wasn't deep enough as some Ruby knowledge was still not described bluntly enough for someone new to programming.
Recommendation
Here is my recommendation of new steps to take to become a fledgling Ruby on Rails developer:
1. The best absolute resource to start Rails3 learning with has to be Ruby on Rails Tutorial by Michael Hartl.
Michael Hartl has written a tutorial that brings you from the installation process to creating a simple Twitter clone. This is an absolute treasure and has helped me understand the basics of Rails development thoroughly. Also, Test Driven Development is taught as the defacto method for development, though not easy for beginners to be well versed in so many aspects of development all at once while learning a new language, I guess it's about getting the basics right.
2. In the midst of learning, try out Rails for Zombies Tutorial.
This is an interactive tutorial where zombies could eat you alive if you fail...
I kid, I kid. You watch a video presentation on Rails development theories and practices, and then proceed on to the lab where you get practice on Rails coding without having to install Rails on your machine. There are currently 5 Labs and you have to complete and pass each lab before you proceed on to the next, which makes it a little like a game.
Fun while you gain confidence in your Rails knowledge. Very very cool.
3. Once you complete the Ruby on Rails Tutorial, study Opensource Apps.
After you complete Michael Hartl's tutorial, you should have a pretty good understanding of Rails development and it's a good time to study some open source code to internalize what you have learned in the tutorial. By looking at code from others over a few projects, you start getting a good understanding of what needs to be done for each kind of project.
Recommended projects to look at:
4. Try developing a simple Application.
Think of a simple application and knock yourself out. It's gonna be fun! I'm yet to reach this stage but I have an idea of what I wanna do.
So... here we go!



