Ruby on Rails — CLUEHQ
Random Thoughts from a Computer Science Student…
Random header image... Refresh for more!

Ruby on Rails

I’ve been thinking about web applications recently and one thing is for certain: if you want to develop a web app, there is no shortage of opinions about the best way to do it.

I was turned to thinking of web apps by a Steve Yegge post concerning code bloat. The post isn’t specifically about web apps per se but touches on the programming language flavor of the month: Ruby and it’s signature preparation Ruby on Rails (RoR).

Flavor of the month is probably too strong a phrase. It appears that Ruby and RoR have been around for a little while now and are actually solving real problems for real people. That’s good news. Probably the best indicator that the RoR crowd is onto something is the effort to replicate their web app framework into other languages. They say that imitation is the best compliment.

So I’ve decided to investigate what the hubbub is all about. If the fanboys are right, then there might actually be something here worth learning. It’s often true that there are many ways to skin a cat, but all things being equal, the approach that achieves cat sans skin is what most people end up doing.

I’ve considered taking CSCI E-75 (Building Dynamic Websites) in the past but could never fit it into my schedule. That class focuses on using the traditional tried-and-true LAMP stack for developing applications. There’s nothing wrong with that. If anything, thats preferable to learning a single framework since the skills used in constructing a web application from discrete components is valuable for the insight you get into how things work under the hood in just about all frameworks.

Of course, the flip side to that is that no-one uses discrete components anymore unless they really need to. The whole point of a framework is to solve the common problems once and then do targeted customizations where needed. That’s why no sane individual writes blogging software anymore. You get a copy of Wordpress and move on to the writing part.

I think that’s where RoR is probably a winner. The complaints about RoR are mainly concerned with scalability and speed. Nobody seems too concerned with either of these problems to abandon their efforts yet. It’s kind of taken on faith that more attention to these problems will yield improvements once the pain level gets too high. That’s the way it is with all new technologies. The same criticisms were leveled at Java by C++ programmers (and still are) when it was new. Most of those problems have evaporated as implementations have improved.

I’ve installed the code on my machine and purchased a book to thumb through. With any luck, I’ll have an app up and running before too long. It’s all about the pain level though. If it’s harder to do the simple things, you’ll hear about it. I’m looking forward to making progress and getting things done.

That’s why computer science is cool. You end up getting to play with really cool stuff. And it’s always fresh.

2 comments

1 Ken Vedaa { 01.31.08 at 11:11 pm }

Richard,

How are things going with Ruby on Rails? I find that during school terms it is difficult to make the time to take on new projects on top of work and school work.

Ken

2 richard { 02.01.08 at 4:31 am }

I’ve only just started messing round with it. So far I’ve got MySQL and Locomotive installed on my machine. This weekend I’ll find a few minutes to put up some scaffolding and generally get the feel of what’s possible.

Leave a Comment