What can you do in Ruby on Rails?

I tried to learn Ruby on Rails once before (in Rails 3.0, just as 3.1 was first released) but gave up because I couldn’t gain any traction. A local Meetup group dedicated to Ruby on Rails beginners has just popped up, and I’m considering giving Ruby on Rails one more chance.

One of my biggest questions as I consider a second attempt is this: Besides creating online stores, what can Ruby on Rails do that Python and Drupal cannot do or cannot do as effectively? For example, my Doppler Value Investing project (dopplervalueinvesting.com) uses Drupal for the web site and Python scripts to process data and provide output results in the form of *.csv and *.html files. (While I’m sure that Ruby on Rails could have done the job just as well, I’m not about to tear down something that already works well.)

Part of the problem in my first attempt to learn Ruby on Rails was lacking a good project that would make use of it. I can’t be that engaged or be anything more than a mediocre developer merely by going through tutorials and exercises. I need a major project to motivate me to truly learn. In other words, I will go big or go home. Some projects I’ve thought of are:

  1. My Build-A-Distro web site (www.buildadistro.com): It’s a web site on how to start and run a Linux distro. It’s in Drupal at the moment, but I’m willing to tear down this web site because I haven’t gotten very
    far with it. Some things I’d like to add are a blog on the process of putting together my Linux distro Swift Linux, a wiki, and message boards.

  2. A location-based Android game: This would require a central server to store all of the information needed by the Android apps that the participants have. (I am in the process of learning to develop Android apps.)

  3. Other online games

Jason Hsu, Android developer wrote in post #1095605:

I tried to learn Ruby on Rails once before (in Rails 3.0, just as 3.1
was
first released) but gave up because I couldn't gain any traction. A
local
Meetup group dedicated to Ruby on Rails beginners has just popped up,
and
I'm considering giving Ruby on Rails one more chance.

Imagine you were given two kits for building computers. One kit contains
things like a motherboard, a hard disk drive, a standardized case, a
bunch of pre-manufacutred cable, etc. The other kit contains things like
a whole bunch of AND gates, OR gates, some shift registers, a stack of
sheet metal, and other fundamental building block that make up a
computer.

The first kit is pretty straight forward, you put the parts together and
you have yourself a working computer. The second one, however, you could
(theoretically) build ANY kind of computer you could possibly conceive.
Granted this is an extreme case I've used to put some perspective on the
difference between a general purpose software development kit and a
Content Management System (CMS) like Drupal.

Some programmer(s) put together, from a kit akin to the "bag of tiny
components", a kit more akin to the "box of pre-fabricated parts
designed to fit together" kit. Ruby on Rails is somewhat like the
former, Drupal is more like the latter.

In fact there are CMS systems built on top of Ruby on Rails...

All I'm saying is that when you're working with Drupal you are working
at a higher level of abstraction than when working with Ruby on Rails.
It's not that one is inherently better than the other, or harder to work
with. It's all a matter of need.

If working at the higher level of abstraction Drupal offers you solves
your problem, in a reasonably elegant way, then stick with it. However,
if you start running into serious road blocks because of working at such
a high level then Ruby on Rails might be just the ticket you need for
success.

Agreeing with all that, with one additional thought:

The more tools in your toolbox, the more you'll be able to choose the
right one for the given job.