Not Convinced by Ruby on Rails

by admin 17. June 2006 06:50

I spent half of yesterday participating as a last minute ring-in for a Rails Day 2006 team. Going in to the competition I had a grand total of about 3 hours experience with Ruby so I was only going to be of limited help for the first few hours, but once I got up and running I have to say Ruby on Rails didn't impress me much. Here's some of my thoughts here. Please note that these are based on about 12 hours experience so I'd love people to point me in the direction of some counter-arguments.

My first impressions were actually quite positive. I particularly liked features like migrations for deploying database upgrades and it looks very easy to get the model up and running. The generators make basic editing pages quick and easy but about there is where I hit the wall.

My main issue is with the level of abstraction supplied by the views. Ruby on Rails still essentially uses the same abstraction level as previous systems like ASP, PHP and JSP. This means you basically place tags inside html files which spit out text. There's some functions supplied like link_to which slightly abstract away bits and pieces, but they're still just spitting out text.

ASP.NET on the other hand supplies controls which fully encapsulate a portion of UI. This means you can just set a few properties and let the control handle itself. e.g. if I want a paginated, editable grid you just pop a datagrid in and attach it to a datasource. I saw nothing built into Ruby on Rails which provided that type of abstraction. I've tried to work out how it could be done and I think it can be, but there's no assistance provided by the framework, and I haven't been able to work out how you might be able to do templated controls at all.

After all the hype surrounding Ruby on Rails I was disappointed by how much effort it took to set up views and associated controllers and particularly disappointed in how I always seemed to be considering the nitty gritty of HTML when generating views instead of just what info I wanted in the view and having the HTML abstracted away for me.

Like I said, I'm keen to have my knowledge corrected and/or improved so drop me a comment and some links if you can show me how to answer some of my issues.

Comments are closed

About Us

RikWare is a software development company based in Brisbane, Australia. Led by director, Richard Mason, RikWare focusses on solving challenging business problems promptly and effectively.

RikWare is also the owner of Aussie Bushwalking, a free, wiki-like collaboration site for bushwalkers and the creator of RikMigrations, a migration framework for .NET.

Aussie Bushwalking

Want to discover some new bushwalking ideas? Share a few of your own? Aussie Bushwalking is like Wikipedia... but for bushwalkers. Head on over. Anybody can see the walks and it's free to sign up and share your own.

 

RikMigrations

RikMigrations is a database migration library for .NET based on the migrations facility provided by Ruby on Rails. It allows simple upgrading and downgrading of databases using .NET code (such as VB or C#) either from the command line or built into your application. Unlike many other migration frameworks, RikMigrations is a stand-alone library which does not rely on a large surrounding framework.