In my previous post I wrote about having to learn Ruby on Rails and how I wanted to go about it. Three weeks into my internship, here’s what I learned about learning Ruby on Rails.

Note: I had more than three years of university programming experience in various different languages, but no back-end web developing before trying to learn Ruby and this is what worked for me.

Ruby

1. RubyKoans and Eloquent Ruby by Russ Olsen

I started out trying to read Learn Ruby the Hard Way, but it turned out not to be hard at all. I then dived right into the RubyKoans and looked up terminology in Eloquent Ruby and Google when I got stuck. I took notes about the things I learned to have a reference for myself.

2. Codecademy Ruby course

We were advised to work through this course at Zappi. It turned out to be quite informative and good to get more practice. I skipped the projects and the revision exercises.

Rails

Getting into to Rails turned out to be much harder. As I have worked with both the MEAN and MeteorJS stacks before, I thought that learning Rails would be simple, but my head ached for a bit on Rails. I still don’t really know what the best way would be to go about to learn it.

1. CodeSchool Rails for Zombies

We were once again advised at Zappi to work through this course. It gave a good overall understanding of important Rails principles and I have often returned to the cheat sheet provided in the course. I’ve started, but not yet completed the second Rails for Zombies course. I think that it would be a useful and more practical course than the first one.

2. CodeAcademy

I did the first few exercises of this course, but I didn’t have the patience to wait for the website to compile every exercise individually. It also gave some inexplicable (wrong) errors at times which could be fixed by starting the level over.

3. Start developing Rails application

As with learning Ruby, the fastest way to learn Rails turned out to be practicing and diving into a project.

4. Google, Google, Google

With the numerous different gems we used in our project and APIs that we had to use in our application at Zappi, Google and StackOverflow was our best friend.

5. Read Gems’ documentation and examples on Github

Sometimes an exception that I struggled with for hours turned out to be easily solvable if only I read the relevant documentation.

6. Crafting Rails 4 Applications by José Valim

I found this book to be a very good reference and good for getting a more in depth understanding of some Rails concepts.

Overall, I think that learning Ruby and especially Rails, requires a good balance between diving into development and reading and learning with courses and books. Sometimes you would save yourself a lot of trouble if only you had read up on the concepts, but other times you might forget most of what you’re reading in any case (at least I would!).