Ruby adoption statistics

Hello,

I work for a company that uses PHP. In my free time I write Ruby apps. My manager recently “discovered” Heroku (which I had been using for a while) which spawned a discussion about eventually switching languages to start doing Ruby development (which would be awesome for me). However, my co-worker mentioned that he thinks if we are switching, we should switch to Java because Ruby is a dying language.

I just about fell out of my seat. Dying language? Far from it! Every company I know is deploying Ruby applications!

However, I don’t have any stats to support this. I only have my experience and love of the language to base my opinions on. Do you know where I can find articles/statistics on Ruby adoption and how I can convince my co-worker(s) that Ruby is the way to go?

Thanks,

Andrew

Hi Andrew,

Do you know where I can find articles/statistics on Ruby adoption

It's going to be difficult to get good data. The biggest reason, IMHO, is that companies that do adopt RoR are going to be doing so for the productivity. If it works, they're not going to talk about it. That's what 'strategic advantages' are all about. Keep your mouth shut and hope your competitors don't figure it out.

If you're convinced that you need hard data then I'd recommend looking for secondary indicators: growth of hosting providers is one. How many are there today vs. 2 years ago. Do they say anything about customer base? What about financial condition? There are tertiary indicators as well. Of those hosting providers, how many moved into new digs this year? They moving up? Or scaling back? I doubt very seriously that the leg-work will pay off (see below for why) but it would be an interesting exercise. If you do undertake it, I'm sure you'll be able to find a publisher who'll pay you a small amount (way out of proportion if you do the per-hour calculation, so don't :wink: ) to publish it.

and how I can convince my co-worker(s) that Ruby is the way to go?

You probably can't 'convince' them. The choice isn't so much rational as it is personal preference. There are, IME, two ends to the programmer-preference spectrum: Java and Rails.

The spectrum is most easily characterized by the individual's tolerance for delay in the gratification / feedback loop. I liken the Java end to the guys who build the huge, elaborate domino knock-down displays. Please understand that I am not criticizing at all; simply making an observation on human nature. The domino guys get a big dose of gratification when the dominoes all fall. But it's not about the dominoes falling. It's about the validation that all the setup steps were done perfectly. It's the validation that counts. If the dominoes all fell because the ground shook, there'd be no joy.

So if I were you (embarked on organizational change) I'd ignore the developers who've already expressed a preference for Java. Focus on the ones that may be more attracted to a rapid-feedback model. Introduce them gently; perhaps via your local ruby brigade. Get them around some folks who are clearly having more fun than them. In any event, they'll get some free pizza :wink:

Good luck and best regards, Bill

Specifically to address Ruby being a dying language:

I find ohloh.net to be a great source of information on topics like this.

http://www.ohloh.net/p/ruby

Ruby:

Source tree:

http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/

  • Is approaching 1 million lines of code and growing.

  • Has had 46 developers commit code over the last year: “This is one of the largest open-source teams in the world, and is in the top 2% of all project teams on Ohloh.”

Anyway, this is just a quick scrape of some stats. There’s much more if you dig around there and other places.

Kevin Bedell

How about activities in github.com?

https://github.com/languages

Ruby is more than double compare to Java.

Regards, Yehezkiel

See popular languages on github:   https://github.com/languages See popular websites built by RoR:   http://rubyonrails.org/applications

JavaScript tops the list at https://github.com/languages – am wondering if it refers to standalone apps being built entirely in Javascript, or it includes libraries like jquery, dojo, etc which are used pretty much by every web application. Any idea how github identifies languages?

However, my co-worker mentioned that he thinks if we are switching, we should switch to Java because Ruby is a dying language.

Eeh, just show your co-worker the following chart: http://www.tiobe.com/index.php/paperinfo/tpci/Java.html

( Uuh and DON'T show him the Ruby Chart ;-((( )

Andrew wrote in post #1025635:

However, my co-worker mentioned that he thinks if we are switching, we should switch to Java because Ruby is a dying language.

I just about fell out of my seat. *Dying* language? Far from it! Every company I know is deploying Ruby applications!

So you should switch to Java because Ruby is a "dying language?" To a language invented by a company that is already dead, Sun Microsystems. And, who's creator abandoned the company when it was taken over by Oracle. This guy is recommending a switch to Oracle, who's main product is an old severely aging relational database that costs a small fortune to deploy and hasn't seen significant changes in decades. Do you really think that Java is in a great place right now in the hands of the likes of Oracle? A company who's primary interest is profit, attained by gouging large enterprises for everything they can possibly get a way with.

OH You should see the smiles on Java devs faces when they switch to Ruby.

Big name companies using Ruby can be more one argument: http://blog.obiefernandez.com/content/2008/03/big-name-compan.html http://www.workingwithrails.com/high-profile-organisations

Sure you didn't hear that backwards? That would make a lot more sense. :wink:

-Dave

Thanks everyone for the comments! The Tiobe Ruby chart is in fact the one that my co-worker was referring to since it shows Ruby on a downward slope. The Tiobe index doesn’t seem very useful or accurate if you ask me. You’ve definitely given me a lot of ammunition to defend Ruby!

Your coworker would be a fool if he makes decision based on the weighted number of search hits for XXX programming, which is what the tiobe index is. The github index gives you a good estimated of the popularity of languages in the open source community here: https://github.com/languages Looks much better :slight_smile: Of course this is as bogus as the tiobe index - but the results are more in favor of Ruby :slight_smile:

I have been a ruby developer for 4 years before ditching the language in 2010

The best way to figure out a skill and the amount of usage is websites like stackoverflow and the number of questions tagged ruby python java

Google trends gives you a fairly good idea too.

Now while ruby is far superior highly productive it needs extra smart programmers those that are a rare find and therefore most decision makers will be scared of it. As they are themselves in a comfortable shell where they want to be.

Add to it the human tendency of not liking radical changes.

I am a Java programmer now and I can tell you that most of the things being introduced into java7 and post 7 are already there in ruby and I have so far not learnt a single good pattern, practise that is not the result of my ruby on rails learnings.

All I am saying is there were'nt enough job options available where i live and I had to switch I really miss ruby and intend to open my own software product development company soon.

The language of choice will definately be Ruby as I know for sure I can do what it will take 10 java guys with 1 good ruby programmer.

There is absolutely no comparison when it comes to web development between the 2. Ruby + plugins beats anything Java anyday.

Surely there are thing slike OSGI and dynamic support through Groovy and similarscripting languages but they are all ruby or python inspired (which is shameful).

Still in this world the best does not always have to sit at top in raknings just like BMW sales will never be the same as Toyota but a Toyota now comes standard with what BMW cars were 5 years ago.

Rubys elegance will never be matched by Java.

I think the idea that rails needs extra smart programmers is a bit silly. It's a bit like a blog author who tells his audience they're in the top echelon simply by reading his or her blog.

Statements like those are a masturbatory fantasy that has no place in the evaluation of technology stacks imo.

I also question your claim that 1 rails developer can do the work of 10 java developers. An actualy order of magnitude productivity gain is very rare in our industry, and I would expect any such claims to come with reputable citations to back them up.

Don't get me wrong, Rails has it's merits, I'm head down in it every day, but lets not kid ourselves.

A while back, some programming blog (Coding Horror, maybe?) said that its audience was the cream of the programming crop... because they read *ANY* blogs, not necessarily that one. There are an awful lot of programmers out there who only treat it as a day-job, not bothering to keep their skills modern and sharp by reading blogs, listening to podcasts, participating in email lists (hey, looky what I'm doin'!), let alone writing their own blogs... and programming in their spare time is Right Out. And not only are there an awful lot of programmers like that, a lot of them are probably awful programmers! :wink:

-Dave (blog reader, podcast listener, email participator, AND blog writer, times two!)

Hi Andrew,

You can show your co-worker this movie http://www.youtube.com/watch?v=PQbuyKUaKFo

Regards,

Noven

I'm not sure I understand the claim that reading blogs keeps your skills "modern and sharp". I would think practicing your craft would have more of an effect on that then reading someone's opinion about something.

Personally, I consider this "programmer guy who ignores the outside world" a strawman. I've never met one, but I have met a lot of folks whose values and goals as developers differ. Some whose skills are incidental to what they do, some whose skills are better than others. But never a programmer who was so completely out of touch with the outside world that they had no idea about the major movements in our industry.

Agreed -- but practice + reading > practice alone. Especially in situations where practice does not generate feedback, as I've often found.

-Dave

Dave Aronson wrote in post #1026700:

Agreed -- but practice + reading > practice alone. Especially in situations where practice does not generate feedback, as I've often found.

+1

Practice alone in this profession isn't enough IMHO. Bad practice remains bad practice no matter how much you practice it. If you really want to grow as programmer then strive to join a team of programmers who are all better than yourself. However, don't be complacent once you're there. Aim to be the worst, then strive to be the best. Find the experts and take every opportunity to study their code, read their blogs, watch their screencasts, or whatever medium they choose to share their knowledge and experience. Chances are you'll find out that you really weren't as bad as you thought, and soon you'll find yourself to be one of the best programmers on the team. That's the moment when it's time to begin looking for a team where you'll again be the worst.