my learning resources

Feb 18, 2010
There is no */ one right /* way about learning. I’ve looked around the net and found these along the way:

Ruby

Books

Free e-books available online:

Unfortunately, all of these are somewhat outdated. So I chose the recently published book called “The Well Grounded Rubyist” by David A. Black. I’m not too far into it yet, but it was highly recommended and so far it’s been very helpful. It covers Ruby 1.9.1.

Let’s not forget Prag Prog’s PickAxe, “Programming Ruby 1.9” which also covers Ruby 1.9.1. This is the complete reference, so it’s nice to have by your side if you need to look up a class or two.

Gregory T. Brown is slowly releasing his book, “Ruby Best Practices” in digital form chapter by chapter for free. He already released four chapters and you can grab them here. If you like what you see so far, I highly suggest picking up the dead tree version available at O’Reilly, Amazon, or your local bookstore.

Online Courses

There is a free online Ruby course from RubyLearning which I highly recommend. Although, I have not yet completed the course, the latest course covers Ruby 1.9.1, and there are a lot of mentors willing to help in the course forum.

This is not really an online course, but a self-teaching set of tests called Ruby Koans. Follow the instructions and it will guide you to the path of enlightenment.

Online Resources

Rails

Books

Rails changes rapidly, so spending money on a dead-tree version of a book is probably not the best way to go. In any case, Prag Prog’s “Agile Web Development with Rails, Third Edition” is the latest book on Rails. Unfortunately it does not contain Rails 3.0, but this ongoing wiki page contains information about the beta and about Rails Fourth Edition.

O’Reilly recently announced the Live Edition of Learning Rails which will include Rails 3.x content.

There’s also a Rails 3 Upgrade Handbook by Jeremy McAnally coming out soon. Sign up here to be notified when it’s available. Update: it’s out now

Online Courses

I started using Learning Rails, a free online Ruby on Rails course. Although, it’s based on an older version of Rails, the overall information about Rails is there, especially about Model-View-Controller, scaffold, migrations, rake commands, etc.

Online Resources

Mentorship

Probably the best move I’ve made is finding a Ruby on Rails mentor at Rails Mentors. Los Angeles-based Rails developer, @kris, accepted my mentorship. We spoke this past weekend via Skype and will start on a project that will create custom feeds for RSS-less websites. It’s a private github repo as of now and we may open it up in the future, but for now, I will blog about the project here. I’m pretty excited to start this project and will hopefully learn a lot from it.

Metaprogramming

Books

Prag Prog’s Metaprogramming Ruby book by Paolo Perotta just released this month. I have this book on my wishlist and plan to pick it up when I learn about the advanced DSL concepts.

Online Courses

RubyLearning is offering an online course on Ruby Metaprogramming on March 6th. For a small fee of $5-9, you will learn about Ruby’s advanced features and start “thinking in Ruby”. Best part of all, Paolo Perotta will be answering some of the questions in the course forum. How cool is that? You can learn more about the course here.

Online Resources

Software Craftsmanship

Books

I still have much to learn in this area. To start off, however, I recommend starting from the beginning and pick up, “Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman” by Dave Hoover and Adewale Oshineye. Then there is “The Pragmatic Programmer” by Andrew Hunt and Dave Thomas (Prag Dave) and the well known “Software Craftsmanship” by Pete McBreen.

Online Resources

Active Apprenticeship Programs