Just a few days ago Nettuts featured a speech by David Hansson, the creator of Ruby on Rails, where he outlines the more “philosophical” reasons why he believes Ruby, in general, is the right programming language to be using now and in the future (video here). As mind-numbingly happy he seemed to be, about using Ruby, I can’t get past all the issues I have with the points he suggests are the pros to the language.

I suggest you watch this video whatever your bias or preconceived feelings may be. It’s a good talk and David does note a great number of reasons why you should love Ruby as much as he does.

Freedom

One of the concepts that Ruby seems to be based on, and which is repeated through out David’s talk, is the idea of developer “freedom”. David goes into detail about how he believes that other languages have it wrong when they restrict developers freedoms and try hard to steer them to use best practices.

The idea behind this is that good practices will be implemented by a good developer once they understand why not to do something another way. Using the metaphor of marijuana usage was a good example yet brought up some good points to rebute this lack of policing for nay-sayers like myself.

People need structure. It’s a fact. This is true not just for the general populace at large but within the development community as well. Lack of structure and rules leads to a far greater chance for bad habits and inconsistant tendencies to fester. Ruby’s lack of structure means that the policing is left up to the individual developer. This is great for the experienced programmer but is terrible for a new comer who is left to their own devices and open to fall into bad habits.

Community

A secondary point noted is the amazing and “weird” community that is drawn to this language. I feel that the Ruby community, as unique as it is, seems to be, mostly, made up of a egotistical, narrow-minded bunch (a generalization and stereotype I know). Many of these developers have an unrelenting need to force the use of Ruby at absolutely every opportunity possible without consideration otherwise.

That said, server side languages, in general, are becoming less important as they reach a point of maturity with their feature sets and resources. Most well built applications and websites will have a means of passing and receiving data through a web service/API making the serve side language running said service irrelevant. To try and preach Ruby, or any other programming language, above all others is a complete waste of time.

Where’s the beef?

Not only have these few points struck a chord with me throughout David’s talk I also can’t seem to find the meat to his topic “Why Ruby?”. By that I mean I can’t find the solid points brought to light that definitively tout Ruby’s ruling stake over other programming languages. As I said before, it’s irrelevant to fight the issue but this talk is meant to state “Why Ruby” and not said language over others.

It seems to me David’s entire talk contains a lot of smoke and mirrors. Happy feelings and inside jokes. No hard facts. All of the comparisons and philosophies he notes can easily be applied to other languages in a similar over-zealous manor.

The fascination with this language astounds me. I find myself, almost daily, comparing the community more and more to an elitist / mac fanboy like society.

Quick hard fact

Looking at the stats Ruby not only ranks lower on overall usage compared to Java, Pearl, Python, and PHP but, in most cases, is doubled or tripled by said language’s usage margins.

Many people may say this is much like comparing Internet Explorer usage to other more modern browsers. Noting that just because people are using and have used a tool doesn’t mean it’s the best fit for the job now and in the future. I’d like to rebuttal that notion with the idea that Ruby, as we know it in English, has been around since 1999 and is still struggling to prove why it’s better then others. With the introduction of Ruby on Rails the commercial use of Ruby has increased since 2003 but is no different when compared to other frameworks like: Codeigniter, CakePHP and Django (for their respective languages).

Summary

Based on everything said, as an experienced/veteran programmer, Ruby, to this day, does not show me anything special that would sway my usage over other languages. Programming languages continue to evolve as I’m sure Ruby will but as of now it far and away does not stand as the leader in any facet, in my mind.

tags: / / / / /

7 comments

  • Banago

    Posted: Jan 22, 2011

    I went through most of the video, but could not make it to the end.

    Ruby (on Rails) to me seems quite alluring, but being a starting programmer, it is really hard to get started with it. With PHP on the other hand, all you need is a *AMPP stack for your OS.

    Liked your article though, well said.

  • Brian

    Posted: Jan 24, 2011

    I agree with you, though I will openly admit that I didn’t even attempt to watch the video. I’ve known a few guys that were avid Ruby/Rails fans and thought that it was just the greatest gift to the programming world. I was never able to get any adequate example of why it would be better than any other server side language from them. It’s nice, but I feel like saying it’s better than others is like saying green is a better color than blue.

  • darcyclarke

    Posted: Jan 24, 2011

    Thanks @Banago and @Brian. I have a bunch of friends that absolutely love Ruby so I don’t want to ever offend people with my own opinion but it’s good to hear there’s others who have looked at the pros / cons and weighed them pragmatically.

    I look to things like server side Javascript (node.js) as a more meaningful use of my time. Along with front end development which is absolutely killing it these days. Spending time learning all the new HTML5 APIs and all the cool CSS3 hackery you can get away with is way more fun then trying to fight the server side language wars. Which, as I said in the post, is futile.

    Appreciate the feedback!

  • zdennis

    Posted: Jan 25, 2011

    I started to write a comment about this, but it turned into a rant. http://www.continuousthinking.com/2011/1/25/why-ruby

  • Max Guernsey, III

    Posted: Jun 20, 2011

    I haven’t read zdennis’s post, yet, but I have to agree. The main problem I have with Ruby is not Ruby but that nobody is willing to provide an argument in its favor beyond “because,” “you just don’t get it,” or “nuh-uh; you’re an idiot.”

  • Max Guernsey, III

    Posted: Jun 20, 2011

    Okay. I went back and read zdennis’s post and it was the of the “because” variety. My quest for compelling evidence in favor of or against Ruby – or of even what differentiates it from its competitors – continues. Thanks for the concise and useful post.

  • codeshite

    Posted: Sep 24, 2011

    I tried, I really tried to get to the end of the video but I couldn’t.

    The question I just can’t answer is why does Ruby attract these kinds of people?

"w3fools.com - because friends don't let friends use w3schools" ~ dan heberden
themify
Learning JavaScript