views:

663

answers:

9

I've found Ruby to be very attractive; I like the fact that everything is an object and its syntax is very appealing.

I was hoping that it would gain a lot of popularity this year, but I don't see lot of activity in Ruby.

For instance if we take the number of tags added in SO there are only about 700 questions tagged as "ruby." This may be because:

  1. Ruby is so easy, noone has any questions.
  2. This site attracts more from the.Net community and Ruby developers ignore its existence.
  3. There are not as many Ruby projects as there projects in other programming languages.

Other resources show Ruby is not as popular as other programming languages.

What reasons do you think are behind this?

Links:

TIOBE Programming Community Index for October 2008

StackOverflow tags

Ohloh

+3  A: 

Ruby had its moment in the sun in 2005 - 2006 when Rails was making its way through the community and Apple decided that it would package it with OS X. So to pick 2008 as the year for Ruby to gain a lot of popularity seems amiss to me.

The Ruby language itself is, as you stated, very attractive. Its syntax and OOP model are what make it a hit with developers. You get equivocally the same product as you would with another language, but with what feels like less time wasted on internals.

Rails is really what I think is holding Ruby in the mainstream right now, more or less because of its ease-of-use and database handling. Web developers love it for that.

If you really want to see sites that have a lot of Ruby(on Rails) chatter on them, you could check out http://refactormycode.com or http://pastie.org. Those websites are built on RoR and are used very frequently by Ruby(on Rails) users.

Josh Sandlin
+2  A: 

2 - Not many rubyist come here. I you look there is a TONNE of Ruby projects. Just not here so much.

Check out what is happening on Github, rubyforge etc. I mean, Rails for starters is massive.

madlep
I would expect this, because the most relevant references are from .net environment ( Joel and Jeff ), but how would it explain python popularity in this site? I mean, why are less Ruby developers than python developers, at least by the tags on SO?
OscarRyz
+2  A: 

There's a lot of activity with Ruby in web-based development. You just have to join the right communities and lists.

I don7t think it will ever be as popular as C/C++ (because of the existence of already deployed code and a developer base) or Java (because I imagine it isn't quite as easy to understand at first).

moogs
A: 

More than likely because it is younger than a lot of other languages and, on the web side of things, isn't as easy to implement as PHP and Python. Ruby has also gained notoriety as a web scripting language due to Rails which may be turning off some developers who are looking for client-based languages to work with.

Is Ruby not popular? I think it is but it hasn't really reached a critical mass yet to be widely accepted.

dragonmantank
Ruby's about the same age as PHP -- they both came out around 1995.Of course, Ruby wasn't used much outside of Japan until Rails came along.
mipadi
I didn't mean it is not popular, but less active. Perhaps, the most relevant Ruby usage is Rails and thus the number of activity is limited to that only framework. Who knows
OscarRyz
+2  A: 

Here's my theory:

  • Industry Adoption - Although ruby is used in the real world, other languages (e.g. Java, C++, C#, etc.) have been accepted as "safe languages". No one ever got fired for picking Java, or C#, but CIOs' eyebrows have been known to raise when ruby is mentioned.
  • Talent Pool - When selecting a language, you want to know that you can find a good pool of talent. The more popular the language, the larger the pool, and the greater number of experts (statistically) (statistics do lie 50% of the time ;) ).

My hopes:

  • I believe the ruby talent pool will grow over time and the productivity offered by ruby will present a huge incentive for its adoption.
  • More and more colleges will teach it.
Tim Stewart
But this would apply for Python also, however I think python is doing better. ( subjectively talking of course )
OscarRyz
"No one ever got fired for picking Java, or C#" -- what statistics are you using to make this claim? I seem to recall a time, not too long ago, when Java was not the safe language to choose.
David Medinets
+15  A: 

You're mistakenly attributing something to Ruby. RubyForge alone reports over 1,000 open-source projects, let alone all Ruby on Rails apps that exist, and the projects hosted on Github, Sourceforge, and elsewhere.

Unless you spend a lot of time on other sites (Reddit is a good example) you will be unaware of just how .NET/Oracle/SQL Server/etc.-centric Stack Overflow is. (I use a Greasemonkey plugin to hide a broad swathe of these Windows- and "Enterprise"-centric technologies, because they don't interest me.)

I actually had the complementary experience to you: I started spending time on Stack Overflow, and had something of a "woah" moment when I realized just how many people spend their days futzing with ASP.NET. That's not a world in which I'd spent any time, so I had underestimated its size.

Some parts of the internet (e.g., Reddit) are primarily concerned with free software and its associated languages: Perl, Python, Ruby, PHP.

Some parts (e.g., Lambda the Ultimate) are concerned with more esoteric languages: Haskell, Lisp, Joy, Coq.

Other parts (e.g., Stack Overflow) are more mainstream: Java, .NET.

You cannot draw any conclusions about the popularity of a language by sampling just one of these 'pools'.

Rich
I'm aware of that, and actually I put it as number 2 of my list. However, I don't see how your "explanation" is not valid for Python. Ohloh, has 1800 proj against 1200 on ruby. TIOBE index places Ruby below Python and PHP. I never say it is not popular but it haslower activity.Do you have an answer?
OscarRyz
It depends on what's being measured. For example: a few recent projects in my company have been done in Ruby. No word of these have leaked onto the web, so they aren't measured. That's true of other languages, too, but my point is that this kind of popularity contest is meaningless.
Rich
Well the intention is not to be a popularity contest but to speculate on the reason why it "seems" to have less projects. One good answer will be, "becuase it is used internally". That I think that's your point and seems a good reason to me.
OscarRyz
+1  A: 

Please don't take TIOBE too seriously. Checking search engines for instances of "language-name programming" as some sort of indicator of popularity isn't very meaningful.

Andy Lester
Do you think it is possible then that Ruby is more active than those languages it is below? Delphi or C# perhaps?
OscarRyz
+2  A: 

Regardless of any real numbers, one thing I do know: When I go to look for a Ruby library for something I'm working on, I find something satisfactory over 90% of the time. And for some of the remaining 10%, it isn't that hard to write something myself. I do believe that 90% figure will rise over the next few years, too.

If I get what I need, I don't really care whether PHP or Python or C# has sixty bajillion applications and libraries written for them. :)

Pistos
+1  A: 

I find Ruby very attractive in several ways, but it has some issues holding it back.

The biggest I think is that Python already covers much of the same ground, has a larger library of projects, and thusfar better performance.

The other main problem I've had is also the thing that keeps it so popular: Rails. I think there are a lot of people that don't even think of Ruby as a standalone language. While I appreciate that Rails is supposed to be pretty great, it is not anything I deal with, and thus I get annoyed at having to wade through so much discussion of Rails to find an answer to a question in Ruby as a standalone language.

One last thing that has made me skittish about it is the 'more than one way to do it' philosophy it shares with Perl. I was not a fan of that.

It is really a matter of their already being a few hammers around, and Ruby's main distinguishing feature that most people tout currently is Rails.

MattG