It’s been a long time since I last coded on the server-side. In fact, if you’ve read some of my tutorials, you may have noticed that I use ColdFusion as my application server. While ColdFusion still works great, it definitely doesn’t have the panache and coolness of newer server-side technologies like Ruby on Rails. Wanting to be a bit more modern, I’ve decided to jump on the Ruby on Rails train. Both Ruby and the Rails framework are proven technologies that are stable and widely embraced so I think it’s a great direction to head to in my server-side renaissance.
Picking it is the easy part. The hard part is actually learning how to properly use RoR and finding good resources learn from, the latter being the hardest part of it. With so many sites coming and going or not being maintained, it can be difficult to find information that’s relevant and useful.
Luckily for you, I’ve done a lot of homework recently and started to collect a list of current. up-to-date resources that have been recommended to me and look really promising.
Let me share these with you.
The Ruby Language
You’ve got to walk before you can run and learning the ins-and-outs of the Ruby language will help you get a leg up. I’m a firm believer that having a good understanding of a programming language will make leveraging complementary technologies (e.g.: Rails) much easier and allow you to build maintainable code from the get-go. I know it may seem obvious but I’ve seen plenty of cowboys out there that learn something half-assed in a weekend and throw up production code the following Monday.
The great thing about the web is the abundance of interactive tools available for learning. The slogan for Try Ruby is:
Got 15 minutes? Give Ruby a shot right now!
And they hit the mark by providing an interactive editor that takes you step by step through the learning process. You follow some simple exercises, enter your answers in the editor and get immediate feedback.
Like Try Ruby, RubyMonk takes an interactive approach but they’ve also broken down the learning into skill levels. Each tutorial is listed by which level the content applies to allowing you to scale your learning appropriately. The site even offers an in-progress tutorial on using Rails.
When you first hit this site, you may actually think you’ve landed in the wrong place or a hipster book club. Don’t be fooled. Go ahead and click on the book, then follow the pages. Initially, the imagery and cartoons may be confusing but as you get further along, you’ll see it’s just the author’s eccentric style of writing meant to make his presentation of Ruby topics more inviting. The books is actually very good from what I’ve seen and a good resource to have.
As you learn Ruby, you’ll see how rich the language can be. Being “rich” also means there’s a lot to learn and language APIs to get comfortable with. This is where Ruby documentation project comes in. It is absolutely invaluable and you will live in this as you start to ramp up in Ruby. Seriously, bookmark it now.
Affectionately called the “pick axe” book, this is the must-have reference guide for Ruby. It’s like the holy grail of the language and the one I found recommended all over the place. The key thing to keep in mind is that it’s a “reference” and meant to complement your learning efforts as opposed to actually walking you through the learning process.
The Rails Framework
Once you feel you have a good grasp of the Ruby language, next it’s time to jump into the Rails framework. Currently at version 4.0.x, it’s become a mainstay for most startups that want a robust framework to get them up and running quickly. From what I’ve seen, it’s very opinionated about how it does things, focusing on a lot of abstractions to make common tasks (e.g.: database access and interaction) easier.
In terms of learning Rails, this tutorial by Michael Hartl is one of the most complete I’ve seen and amazingly, he offers it up for free. He does offer some other niceties like screencasts and ebook versions for a cost but unless you want to place the book on your Kindle, reading it online should suffice.
What I love about this is that it covers every major aspect of the Rails framework and is updated with each major Rails version including v4.0.x. It’s the reason that I listed it as the first Rails tutorial to check out.
The tutorials in the Rails Guides will give you a solid foundation to work from. Looking through the Getting Started tutorial, it looks to cover the basics well but it does feel like Michael Hartl’s stuff is a bit more comprehensive. Nonetheless, it’s still a great option to learn by.
Obie Fernandez is a Rails guru and this book is recommended by everyone as the must-have Rails reading material. So I bowed to peer pressure and got it. Can’t say yet if it’s awesome but enough people I know who are good Rails developers said it’s good so I’ll go with that.
Online Courses
Sometimes having someone walk you step-by-step through the learning process works better. Thankfully, there are some free courses available that provide a nice walk-through of Ruby on Rails and help make piecing things together a bit easier.
RailsCasts was created by Ryan Bates and currently lists over 400 instructional videos. Most of them are short and cover very specific topics allowing you to zero in on what you’d like to learn about.
This is an oldie but goodie. I remember seeing this sometime ago and now that I’m getting into Rails will definitely be going through the course. The cool thing is that it’s free and still a great learning resource.
I’d be remiss if I didn’t mention Tuts+ as a great place to crank up my Ruby and Rails education. I also think Jeffrey Way would totally disown me as well!
Jose Mota’s course, The Fundamentals of Ruby is a great example of the high-quality courses available for aspiring Rails developers like me.
Lots of Goodness to Learn From
Well that’s my list. I think it’s a pretty solid one at that. I know there are a ton of other blog posts, newsletters, sites and resources that aren’t listed but that’s okay. This is a list to get things kickstarted and as with any new thing, it’s easy to get overwhelmed with too much information. I actually wrote about how hard it can be to stay on top of emerging technologies and finding time to learn new things in my op-ed, The Learning Conundrum.
I’m trying to keep things nice and tidy so I can focus and set realistic learning goals. I find this list to be short and sweet providing a good balance of reading material and interactive learning. But if you feel like I’m absolutely missing out on a good learning resource, mention it in the comments.
We may request cookies to be set on your device. We use cookies to let us know when you visit our websites, how you interact with us, to enrich your user experience, and to customize your relationship with our website.
Click on the different category headings to find out more. You can also change some of your preferences. Note that blocking some types of cookies may impact your experience on our websites and the services we are able to offer.
Essential Website Cookies
These cookies are strictly necessary to provide you with services available through our website and to use some of its features.
Because these cookies are strictly necessary to deliver the website, refusing them will have impact how our site functions. You always can block or delete cookies by changing your browser settings and force blocking all cookies on this website. But this will always prompt you to accept/refuse cookies when revisiting our site.
We fully respect if you want to refuse cookies but to avoid asking you again and again kindly allow us to store a cookie for that. You are free to opt out any time or opt in for other cookies to get a better experience. If you refuse cookies we will remove all set cookies in our domain.
We provide you with a list of stored cookies on your computer in our domain so you can check what we stored. Due to security reasons we are not able to show or modify cookies from other domains. You can check these in your browser security settings.
Google Analytics Cookies
These cookies collect information that is used either in aggregate form to help us understand how our website is being used or how effective our marketing campaigns are, or to help us customize our website and application for you in order to enhance your experience.
If you do not want that we track your visit to our site you can disable tracking in your browser here:
Other external services
We also use different external services like Google Webfonts, Google Maps, and external Video providers. Since these providers may collect personal data like your IP address we allow you to block them here. Please be aware that this might heavily reduce the functionality and appearance of our site. Changes will take effect once you reload the page.
Google Webfont Settings:
Google Map Settings:
Google reCaptcha Settings:
Vimeo and Youtube video embeds:
Other cookies
The following cookies are also needed - You can choose if you want to allow them:
Leave a Reply
Want to join the discussion?Feel free to contribute!