General Question

stevenelliottjr's avatar

More Rails Devs/jobs than Django?

Asked by stevenelliottjr (295points) February 16th, 2010 from iPhone

So I’ve recently been evaluating web frameworks and while scraping the web you find everything from flame wars to job statistics. It seems like everyone, their mother, and second-cousin are using Rails and there are like 6000 jobs on for rails as compared to 300 (just in US).

Does anyone have any idea why this is? Is it because Rails is “cool” or because it’s easy to get started? Do people just love Ruby as compared to Python? I mean I’m no Ruby expert or even a Python expert for that matter but Python was what we used for CS140 and a few other introductory classes. I think it’s pretty good, just don’t find Ruby all that revolutionary. Rails seems really nice but Django appeals to me more. I just wonder why there are so many more Rails jobs than Django jobs. And more rails devs than django devs.

Observing members: 0 Composing members: 0

4 Answers

phoenyx's avatar

Rails was opensourced about a year before Django and it had good marketing. There were all kinds of videos of “create a blog in under X minutes,” DHH was preaching the gospel of Ruby, etc.

Ruby vs. Python, Rails vs. Django comes down to your own programming style and preferences.

noyesa's avatar

Rails is pretty fashionable right now. Most web-only shops are hiring in Rails developers. However, if you look at many other companies whose sole focus is not necessarily web development, you’ll see them using the language that their IT/software team is used to.

Much the same reason that PHP MVC frameworks have become wildly popular since Rails became popular, by sheer popularity the other non-Ruby frameworks are going to surge. Where I work, as far as I know, nobody is a Ruby guru, but we do our fair share of Python hacking.

Teams like this aren’t learning Ruby just for Rails because it’s the most fashionable thing out there, so they’ll use Django. Switching languages is a bigger deal that I think most people make out of it. You can learn syntax in a very short period of time, however mastering a language and understanding its idioms takes years, and there’s no reason to trade that Python experience for whatever convenience Rails offers.

Rails, however, is very popular, and was the first such web development framework that gained any traction. There are Rails shops out there that just specialize in Rails apps—in fact, that’s their selling point. It’s the kind of thing that appeal to the managerial types who have some vague idea about Rails and decide they need it for their website.

All that aside, though, Rails is a solid framework, has a great body of documentation. The frightening towers of Java books at my local library are slowly getting replaced with Rails books. On top of that, Rails seems to have a lot more visibility in the industry than any of the others. 5 years ago, “web development” and “Java” were synonyms to the uninformed. Nowadays, anyone who works in IT knows that Rails is the route to go for developing a web application.

stevenelliottjr's avatar

@noyesa – so do you think that one day Rails will become the new Java? It seems like a cyclical thing to me. Java was the standard, now Rails seems to be the new Standard in web 2.0 development. I have nothing against Rails at all, but I just don’t like the Ruby language very much; it seems like Perl with a nicer syntax; that being said if I had to learn it to get a job I would.

noyesa's avatar

@stevenelliottjr No, I don’t think so. Rails is becoming very popular and for some reason, it seems like every Rails developer I meet is a former Java developer…

Ruby is a wonderful language, but it’s pigeonholed as a web scripting language. The primary reason Ruby is so fashionable is Rails. It’s kind of a one-off language. I have quite a bit of experience with Ruby and I happen to think it’s a very useful language to know.

I use it for a lot of the smaller scale stuff I do at work. It’s very good for working with files, parsing text, and a lot of the work one would normally do with a scripting language. Ruby is also completely object-oriented, which makes it very well suited for application development. Combine Ruby with a GUI framework like Qt or GTK on Windows or Linux for a crude interface, or even use Cocoa for a completely native interface in Mac OS X right from Ruby, and you’ve got a pretty darn neat software development language. Much slower than Java, Objective-C, or C++, but very convenient and you might not miss the horsepower for many apps anyway.

However, that’s a niche use of the language. Virtually zero application development in any professional environment is happening in scripting languages, and if they are it’s not Ruby. Python is probably the most common one, at least in my experience. However, most applications are being written in either a compiled language like C, C++, or Objective-C (depending on the platform) or a bytecode compiled virtual machine language like C# (and the .NET friends) and Java. Java developers are much, much, much more common and Java is a far more applicable skill than Ruby.

Also consider that many Rails developers rarely deal with Ruby on a basic level, so many Rails developers have little or no experience using the language with anything but the comfortable abstraction offered by Rails. A good Rails developers is not necessarily a great Ruby developer, so few companies are seeing a reason to learn Rails, since there is little to no alternative application of honed Ruby hacking skills to anything other than web development.

Answer this question




to answer.

This question is in the General Section. Responses must be helpful and on-topic.

Your answer will be saved while you login or join.

Have a question? Ask Fluther!

What do you know more about?
Knowledge Networking @ Fluther