Can Rubinius bring Ruby back?

Rubinius, the Ruby virtual machine Engine Yard has been promising, is finally ready. It passed the milestone of running Ruby on Rails a week ago.

Engine Yard logo
Can a Ruby virtual machine written in Ruby bring back excitement to the open source scripting language?

Rubinius, the Ruby virtual machine Engine Yard has been promising, is finally ready, said project lead Evan Phoenix. It passed the milestone of running Ruby on Rails a week ago, and Phoenix is now in marketing mode.

"Because so much of our core is in Ruby we have to get performance up. This means we'll increase the performance of all Ruby code. It can be applied to Rails, and all kinds of code."

This also means Phoenix is ready to push back on claims that Ruby can't scale, spread by failures and downtime at Twitter, which have drawn heavy publicity.

"For something like Twitter they haven't had problems with the parts they have in Ruby, which for the most part is the front end. They've had problems in the back end, some of which is Ruby, but that's not where the scaling is."

Phoenix points to Twitter's architecture as the likely source of its problems.  "It's never the language that scales, it's the overall architecture. Having proper techniques for building a web architecture so it can scale is better."

Engine Yard's next step is to integrate Rubinius fully into the Apache Web server, Phoenix adds. He calls it the equal to PHP and Python in terms of productivity and scalability, and that Rubinius will even help Ruby in comparisons with Java.

"Java has gotten people used to the idea of lots of virtual functions, and sending with methods and dispatch and that kind of thing. Things Ruby does. Once you give people a good description of the features in terms people understand it doesn't take them long."

What he's urging is that you give Ruby and Rubinius a chance, which is the best way to learn the language anyway. "Just do a patch or write a Twitter Bot. You learn a lot from that."

It's not too late to fall in love with Ruby.