Aaron Worsham

Ruby only hangs with kids cooler than you

In Uncategorized on June 13, 2010 at 8:29 pm

I created this blog to share my thoughts on where I thought the Ruby Market was, where I thought it was going and where I believed it was going astray.  It fascinates me that a language as old as Perl can have so little regard for its own place in the programming world, as though looking too deep into its own soul would break the shared illusion that Ruby has over its community.  One of the places that I’ve been especially befuddled by is in its schizophrenic condemnation of and then sly come-hither advances towards people within Enterprise organizations.  

You don’t need to attend as many conferences as I do or talk to as many Rubyists as I have, to begin to see a thin undercurrent of disdain for the idea of the Ruby language as an Enterprise language alternative to Java and dotNet.  As though the very notion that the Ruby language is above such lowly and unimaginative applications as ETL and batch processing were enough to keep its place secure at the cool kids table.  Rather, it is believed, we should focus Ruby’s extra-web activities towards applications that are hip and cutting edge like mobile, to the exclusion of old guard uses.  Its not that you can’t use Ruby for Back-end work more suited to Java, they will tell you.  They will say ‘By all means, good luck with that endeavor, Im sure it will all work fine.  Be sure to release a gem of it when you’re done’.  But the collective look shared between Rubyists after you leave will be one of pity, pity for your poor soul that you could not convince your Luddite CIO to replace that backend legacy code with a RESTful web app running Sinatra.

There are a couple problems with this myopic ‘New approaches always trump old standards’ mindframe:

First it criminally undervalues Ruby’s potential to a one trick ‘web’ pony. When Rails was starting out there was a small army of critics slinging sharp arrows at the idea of using it for business applications.  The Rails Can’t Scale crowd got organized, passed out flyers and made the Ruby community really look hard at its best practices to shut down the hate.  Now Rails 3 is full on Enterprise Ready on the web, it just took some ridiculously smart people some cycles to make it happen.  So how is it we still get owned by corporate knowitalls who say that their backend accounting application needs to be Java because its compiled and internationalized and the math class is trusted with money; its like its a fight we don’t feel is worth having so we hand them our sword, meanwhile that Java accounting app is employing 150 Java programmers and we can only seem to get 2 people allocated to our web app on Rails.

Second, as I mentioned at the end there, it blocks the flow of cash into the Ruby space down to a dangerously narrow set of entry points.  If your solution to every potential business idea you have ever had or heard or stole begins with a web server and ends with a sql database, maybe you should be looking deeper at expanding your own skillsets.  If Ruby is to continue to grow in the US, we as a market need to find ways for Rubyists to be paid for using our playground.  There are only so many fundable web applications to go around.

Personally, I think the Web is getting more difficult for consulting companies who don’t have their own cash to create paying web apps to stand out enough to find clients.  But Ruby in the Enterprise is the undiscovered country.  I’m predicting the first Ruby consulting company (after ThoughtWorks) that realizes that jRuby is doing all the hard work for them will stand in an open field surrounded by people in suits holding bags of money.

Leave a comment