on Aug 3rd, 2006Problems with Ruby on Rails

I’m a huge Ruby on Rails fanboy, and I’ve been using it to write web applications for a year and a half now. I think it’s superior to everything else I’ve used in the past 12 years. It does have problems though.

Migrations are not executed within a transaction

This one has bitten me on a number of occasions. Sometimes migrations can be pretty complex, and if an error happens in the middle of the migration, you’re screwed. To get around this you’re going to have to fix the bug that caused the error, and then comment out all the stuff in the migration class that happened before the error. It’s a real pain.

No Foreign Key support

There is no Rails way to add foreign keys to your database tables. There is a Foreign Key Schema Dumper Plugin that I’ve used on projects in the past with success, but I think this is something important enough that it should be a part of rails.

Deployment/Hosting

Let’s be honest, hosting and deploying a Ruby on Rails app is a pain in the ass. It’s just not stable yet. Apache + fastcgi is hard to setup and not very stable. Lighttpd is unstable and even harder to setup. Mongrel has a lot of promise, but it’s version number is “0.3″. It really has not been out for that long and I wouldn’t consider it stable, release quality software. I am currently using Apache and fastcgi. I wish I could use Apache 2.2 and Mongrel but unforunately cpanel doesn’t support Apache 2.2 yet! I do believe that this problem will eventually go away though, and there has been great strides in the past year.

Internationalization

Ruby on Rails has no built-in support for i18n. Ruby doesn’t even support unicode strings! There are plugins and workarounds for internationalizing your Rails app, but there’s really not a standard way to do it right now like there is with C#, Java, etc.

That’s pretty much all I can think of right now. Comments?

One Response to “Problems with Ruby on Rails”

  1. MrGammaon 12 Sep 2007 at 3:25 am

    I was really interested in this ruby on rails application. But now I have juts recently found a Ruby built application which was abandoned by the developer and I can see why…

    I write my stuff by hand and it can be alot slower in some cases… but after realizing how much time I will have to spend undoing the damage done by the Rails developer… It simply brings me back to the same conclusion… if your developmetn must be agile… then you had better find clients who know what they’re doing…

    Because Agile development is no excuse for poor planning and or bloated buggy frameworks… if you don’t know what your doing in the first place then you have no business wasting time under the guise of a programming methodology hype word…

    Agile… I say Asinine…

    Garbage in… Garbage out… Yay to the programmer… say goodbye to the developer… the Agency kid and the CEO can keep walking too…

Trackback URI | Comments RSS

Leave a Reply