Ruby on Rails, I Choose You!

by Brian Koser

I don’t know about you, but the beginning of a programming project is one of my favorite times. And one of my favorite parts of the beginning is choosing the tools. The possibilities are limitless, and you can easily spend days (or weeks!) browsing Github repositories, reading blogs, trawling through Stack Overflow questions, etc.

I recently started a personal project, and, after the prerequisite soul‐searching, decided to use Ruby on Rails. Now, professionally, I’m a Windows stack guy. Intellisense. C#. Oh yeah. But for this project, I wanted to try something different. Leave the minivan in the garage, and take the convertible out for a spin, so to speak. So I went with the polar opposite of .NET WebForms: Ruby on Rails.

It also helped that Rails is FOSS. (Sublime Text isn’t free, but it’s worth it.) I’m not a drum‐beating, Stallmanesque, “Rah rah Open Source!” person, but neither am I a spendthrift. Since its just a personal project, I wanted to go with a low cost solution.

Also, Ruby on Rails seemed to be a good fit for this project. It’s basically going to be a CRUD app for now; maybe it will be more later, maybe not. But I don’t think I’ll be needing cool kid node.js and his new‐fangled ways. If I do end up adding more dynamic functionality (and what website doesn’t these days?) I’m planning to use Ember.

And, I’ll admit it, I chose Rails because Rails is cool. Maybe it’s not so cool here in 2013 as it was a few years ago; in fact I went through the Gartner hype cycle myself while I was researching options:

  1. Hey look, Ruby on Rails. Ruby is cool.
  2. No, it’s really cool. Rails is the One True Path!
  3. Wait, a guy on a blog says it’s not cool.
  4. Another guy would rather write PHP than Rails (this is the lowest point of the disillusionment trough). I don’t like Rails.
  5. Wait, Rails isn’t that bad. These people are throwing out the baby with the bathwater. (And really, who throws out their bathwater these days? Let it run down the drain, sure, but actually throw it out?)
  6. OK, Rails is pretty good. Not perfect, but good.

Anyway, a week or so after I settled for sure on Ruby/Rails/Ember, Discourse launched. And what do you know, Jeff Atwood et al. chose the same tech I had. That’s good enough confirmation for me. Yes, Ruby on Rails is not a panacea; in our lucid moments, I think we all know that nothing is. But it’s a solid framework, it will work for me, I’m going to learn a lot, and—most importantly—it’s going to be fun. ∎