Here’s an open question that I’m hoping will get some interesting discussion going:
Why are there so few Ruby jobs out there?
Those of you who have been to RubyConf in recent years have been asked the question “How many people get paid to write Ruby?”, and you’d see that in the last year or two, the number of people who raise their hand has absolutely skyrocketed.
However, at Gotham Ruby Conference, someone asked “How many people are paid to write plain Ruby, no Rails”. I think like 3 hands went up, and I was one of them, out of 120 or so people. It’s possible that we just have a lot of Rails work in NYC, but I think the issue might be deeper than that.
I’ve seen so many of my friends say “Oh, I’d rather be writing pure Ruby, but at least working in Rails gets me close to that, and it’s better than working in <insert_language_here>”.
Is Ruby really only viable for database driven web applications? I doubt it. I think it can stand its ground anywhere Perl or Python could. So why is it that most job postings you see are for some sort of “Web Rockstar”, and not like, a sysadmin with scripting experience, or an internal applications developer?
I guess it could be a lot of things, any of the below or a combination might be to blame:
- Lack of good marketing for non-web oriented Ruby
- Assumption that Ruby is not general purpose as a side effect of the success of RoR’s marketing
- Technical issues that I can’t think of that make it an inferior choice to other languages
- Ruby adoption might be in nature slower than Rails adoption, but on it’s way
- MRI isn’t robust enough for the ‘enterprise’, so companies are waiting on JRuby
I don’t really know what it is. I understand when corporate politics get involved, all things go out the window, but I think that Ruby’s success as a commercially viable language outside of Rails is less than what it should be at this point. Do other people feel the same way?
UPDATE: Buried deep within the mixed replies to this post is a great writeup by Andy Peters which states more assertively what I was implying here…