January 11, 2005

Ruby Rant

So I've been hearing about this nifty thing called Rails. A couple of very cool web apps--Basecamp and 43Things--were built on Rails. Rails, for those who haven't heard of it, is a web application framework for the Ruby programming language.

I've been messing around with a little project--written just for my own enjoyment so far. The app is in python, but I'm realizing that it won't scale in its current incarnation, and I made some architectural mistakes that it'd be a pain to back out of. So, I'm looking longingly at this Rails thing. I think to myself, why not port my little app to Ruby and Rails? It'd be fun! I'd get to play with a language I haven't had a chance to use, and perhaps create something that might have some actual use.

So, I set out to set up a development environment on my very humble old Windows XP box (the Apple mini is looking better and better all the time). How hard should this be? After spending a few hours over a few days, I'm pretty well frustrated. Installing Ruby was a snap. Installing Rails was easy. I already had MySQL on my machine, but I zapped the old version and downloaded the latest and greatest. Apache has been running on this machine for years. But when it came time to put it all together and make it run, things fell apart. I spent way to much time figuring out if I needed an extra library to connect Ruby and MySQL (I'm still not sure if this comes with Rails or not). The one I did find wouldn't install. So, I figured I'd check out SQLite and it's Ruby Interface. SQLite works, but I couldn't figure out how to get Ruby to see it. Bah! Next I figure I'll just forge ahead with the Rails setup, just to see if that part works. But, I hit a snag there because there is a space in my pathname when doing the install.

Now, I'm sure there is a perfectly decent solution to every one of my glitches. But, I've done my due dilegence on this one. I've docs on a number of sites. Google searches. Mailing list archives. Still looking.

But, I'm a reasonably smart guy. More computer savvy than 99% of the population (okay, that really isn't saying much). I'll admit that there are plenty of areas that I'm not that strong in. I came from a web development background, not the usual C/C++ or even Java route. I do feel more comfortable in a unix shell than the Windows command line. I'm not a system administrator, nor do I want to be one. But c'mon, it really shouldn't be this hard!!

So, I have a couple of options.
a) Give up. My time is, quite frankly, too valuable to spend fighting with computers when I'm not being paid for it. This isn't productive work, I'm not enjoying it. I want to program, not screw with balky installers.
b) Pay for an already set up environment on TextDrive. This is probably a good option, but jeez, I just want to kick the tires on this Rails thing, and I was hoping not to have to pay to do it...
c) Keep fighting. Yet, see time comment in a).

Well, it's late, and my head is fuzzy (no doubt the source of some issues). So I'll put this one to bed.

Update: I went with b). Haven't had a chance to play with it yet. Hopefully, I'll be able to change my Ruby Rant to a Ruby Rave soon...