I went with Python because, at the time, it appeared to better serve the needs at hand. I also appreciated Python’s desire to be clean, readable, and maintainable, something Perl seems to take pride is not being. Or rather I should say, I don’t need to live every day in these languages, as I only use them every so often to solve some need. When working in Perl it was very slow because I had to constantly refer to a reference manual in order to understand and remember things. I reckon if I worked in Perl every day, I too would take greater joy in obfuscation. And I must admit… one thing that kept me away from Ruby was reading so much about how it borrowed from Perl. I wanted “anti-Perl” so Ruby didn’t seem like the way to go.
I don’t regret the Python choice at all. It served me very well for my needs, especially when I had to work with embedded scripting support (e.g. Boost.Python).
But like all things in the computing world, change comes. Just a few years ago if you had said we’d all be embracing these little hand-held computing devices to do everything, we would have laughed. But now the iPhone is taking over. And with all this mobile computing, there still needs to be a lot of non-mobile computing to support it. Thus things like “the cloud” are growing in popularity. And what tends to power a lot of that back end?
Or more specifically, Ruby on Rails.
I’m starting to read up on this, starting with the Ruby language itself, and once I feel alright with that, working on Rails. I suspect it’ll come in very handy in the future.
Thing is, Mac OS X 10.7 comes with Ruby 1.8.x, and I want to use the latest 1.9. I found this guide on how to install. Unfortunately it didn’t work because I lack “autoreconf” on my system. But with a little more Googling around, I found the “thoughtbot/laptop script” which seems pretty awesome. It looks to install just about anything and everything you could want and need for this sort of dev work. It’s running right now as I type this up. So far, so good. Oh wait… spoke too soon. Looks like it failed due to some permissions errors. Hrm. I shall investigate.