5 Reasons why I really hate Ruby on Rails

The story of a suffering idealist.

Early in 2006, I realized my office needed a job tracking system. We’re a mac/pc office, so I wanted something that would work for both.

I decided to use a web based system. So we could eventually publish our job system to clients so they could see where they were up to.
After looking around for quite some time, I bought in to the hype around Ruby on Rails. After a few weeks stuffing around with config files, mysql databases and servers I managed to get a nice little scaffold up and running. I thought this was great, so much better than creating the system from scratch in php!!
And yes, Ruby on Rails is probably easier than php. But …

  1. It’s easier to start a new project, but as it grows, it gets exponentially harder. That right, like grains of sand on a chess board, item 7 of my project was twice as hard as item 6, which was twice as hard as 5.
  2. No real debugging. I’m a VB man. I’m used to the debugger in Access and VB. It’s a nice, warm forgiving debugger, so simple. I tried all sorts of Ruby on Rails setups, from Ruby in Steel, Eclipse and everything else that had an IDE on Rails. And they all sucked. Yes that’s right, they stank.
  3. Documentation? Forget it. Figure it out yourself, or ask on the forums. I bought 3 Ruby Rails books, and downloaded some more. Since my project was different to the ones in the books, I found their lessons very hard to apply to my situation.
  4. Enjoy being poor? Learn Ruby on Rails. Walk with me here … Ruby on Rails is free, that’s why I chose it. But because there’s little money behind it, there’s poor doco, bad support and only a few sites using it. ( compared to apache/php or iis/asp ). If you want money, go to a client who’s willing to spend money. Chances are they’ve already spent money. On microsoft systems!! So, learn Ruby on Rails and work for people who don’t want to spend money, or learn asp.net and work for people who have and will spend money!
  5. Certification? Forget it!! Another reason big companies won’t take on RoR is because, with no certification, they have no way of knowing if potential employers are any good. Period.

So, I gave up on RoR, grabbed a copy of Iron Speed developer for IIS, which is what RoR would like to be in about 10 years, and had a draft system up and running that was working better than what my RoR system was after 6 months. I’d like to use only open source software, and support it, and eventually write my own open source, but I’ve got deadlines, requirements and a limited attention span!
So, call me stupid, but Iron Speed rocks, and Ruby on Rails sucks!

But I Steel haven't found …

I’ve been using Ruby on Rails the last few months, I’m enjoying it. It’s easier than .Net and simpler than php. But there’s one problem, no really good debugger or development environment. Until I found Ruby in Steel.

Ruby in Steel sits in MS Visual Studio, and with a little tweeking, works much like a VB project. There’s even intellisense on the way.

How much does this cost? Well, at the moment, there’s a personal edition that’s free, and later on there will be a developer edition.

I’ll also add that the creators of this product keep their website up to date and answer emails promptly. Something that I’d never expect from microsoft.

So, check out Ruby in Steel

Update:

I have given up on Ruby on Rails. In fact, I’d go close to say I hate Ruby on Rails. But that’s hardly fair. How can you hate something so small and useless.
I spent months getting to terms with it. I found a logorithmic relationship between ease of creation and site complexity. RoR could quicky set up a small site, with getters and setters nicely. And some plug ins could get some other cool stuff running, but anything more than that was hair pulling time.

I gave up, grabbed Ironspeed’s designer for asp.net, and had a running app in a week. Pitty about the 9 months I wasted with RoR. I can use the RoR books to squash flies, cause they weren’t any help squashing any other bug.

Final verdict: Ruby on Rails, no matter how great the IDE is, it’s a new language, with poor documentation, strange setup, and very few turn key features. And ‘A’ for effort, but a ‘F’ for effectiveness.