lesscode.org


Ruby On Rails Is Like Red Wine  

By Alex Bunardzic under Ruby on 08. January 2006

Fifteen, twenty years ago North America was a culinary wasteland, save for the rare pockets scattered along east, west and south coasts. A brief trip to places like New Orleans would shock and jolt the palate of the plain white crustless bread, stake-and-potatoes visitors. Of course, let’s not forget other fine culinary spots, such as Manhattan, San Francisco, and several other islands in the otherwise homogenous sea of mediocrity.

Things started to change rapidly in the nineties, reaching levels of unprecedented sophistication in dinning and wining. Today, we can enjoy the incredibly opulent selection offered to us through stores such as The Whole Paycheck (er, Whole Foods), but things were drastically different only fifteen years ago.

I remember how unpopular wine drinking was not that long ago. Especially in my neck of the woods (I live in Vancouver, British Columbia, where most locals still mentally inhabit the 19th century time zone). Up until very recently, this was a beer country. All normal, regular males were expected to drink beer. Wine was mostly available in those hideous 4 litre carton boxes, and tasted like pee that went bad. Anyone caught preferring or, god forbid, drinking wine was declared gay on the spot. It used to be very hard to smuggle a bottle of import wine into one’s apartment.

At social gatherings, wine drinking was reserved for the female population. Men were either expected to chug beer, or go with some hard booze.

Luckily, things started changing for the better, and now we have pretty decent selection of import wines from all around the world. Plus, straight men are not afraid that they’ll be labelled as ‘faggots’ if they are seen drinking wine in public.

What Does Wine Have to Do With Ruby on Rails?

Programming languages and development platforms are kind of similar to alcoholic beverages. Majority of software developers choose products that belong to the beer category. Sure, there’s plenty of variety there, but in the final analysis, it’s all beer after all. Thus programming languages such as Pascal, Perl, Java, C#, ColdFusion, PHP etc. are basically just different varieties of beer (like, dark beer, pale ale, lager, etc.) Languages such as Assembler and C are more like hard liqueurs (e.g. whiskey, tequila, vodka). Languages such as Smalltalk, Python, Lisp, are like white wine — sophisticated and enchanting.

Finally, languages like Ruby (with all its domain specific flavors, such as Rake and Ruby on Rails) are like red wine. Red wine is that special gamut of products that demand incredibly high level of devotion and finesse, thus creating its own breed of aficionados.

And like the friction that wine drinkers were having with the overruling beer crowd, Ruby and Ruby on Rails users are today experiencing similar friction coming from the ‘beer crowd’ of programming languages. Most of the dissent seems to be coming from the ‘plain vanilla’ lager crowd (the Java consumers). There’s also some dissent coming from the ‘white wine’ crowd, but in a much more civilized fashion.

I wonder if the same cultural evolution, that helped promote the spreading of the red wine culture throughout North America, will happen for the ‘red wine of software development’, that is, for Ruby on Rails? At this point, it doesn’t seem very likely, as anyone who’s using Rails seems to be labelled in a knee-jerk fashion as being ‘queer’. It is obvious that the mainstream crowd of software developers (i.e. the beer drinking crowd) is extremely uncomfortable with the uprising of the red wine drinking crowd (i.e. the Ruby on Rails). The beer drinking crowd confesses that they simply don’t get what could possibly be so enchanting about enjoying the red wine.

Hopefully, cooler heads will prevail, and the medical findings that red wine is actually beneficial for one’s health will pave the way toward adopting the red wine consumption on a larger scale.

32 Responses to “Ruby On Rails Is Like Red Wine”

  1. maetl:

    Excepting that those who get wasted on beer and red wine at the same time will still end up with a massive headache.

    comment at 08. January 2006

  2. The Badger:

    We’re only eight days into 2006, yet I can imagine even OSNews contributors needing the rest of the year to write an article as smug as this one. Still, “plain vanilla”, “red wine” and “white wine” make for some good under-the-radar slang, useful both in and out of that closet. :-)

    comment at 08. January 2006

  3. seth vidal:

    I wouldn’t call myself a beer-drinking programmer but I dislike ruby b/c I think the syntax is really horrible. I’ve been using python for a number of years now and I like leaving out all the bizarro line noise and focusing on programming what I want. Ruby as a concept doesn’t bug me but the implementation drives me bonkers.

    I think there is plenty of room for there to be people who do not like ruby but don’t object to its ‘philosophical’ intents.

    -sv

    comment at 08. January 2006

  4. James Britt:

    Smug indeed.

    So, will 2006 be the year of the Smug Ruby Weenie?

    comment at 08. January 2006

  5. Ken:

    James Britt:

    So, will 2006 be the year of the Smug Ruby Weenie?

    The year of the Smug, Homophobic Rubie Weenie, perhaps?

    comment at 08. January 2006

  6. Matt Good:

    Sure I like a good glass of wine, but the wine-snobs that won’t drink anything else are missing out on some great microbrews.

    The analogy is amusing, but it doesn’t really accomplish anything. Sure Ruby on Rails is having a major impact on web development, but acting like it has no competition is unwise. Part of the Rails’ influence has been to inspire other similar frameworks. It’s really pushed the Python web development community to step up and offer Django and TurboGears as alternatives. I think that having a diversity of web frameworks promotes more experimentation than when everyone is focused on the same way of doing things.

    Java and C# are a good example of the benefits of competition. The Java language became quite stagnant without a major competitor, then C# came along and offered a language quite similar to Java, but fixed many of the problems that Java had. Finally Java was forced to respond and added a bunch of these long-awaited features to Java 1.5 like generics, autoboxing, enhanced for loop, annotations; far more language features than had been developed in a long time.

    I think that dynamic languages are going to play a very important role in the next generation of web development, but if the Rails developers pretend like in it’s a league of its own, they’ll likely ignore innovations going on in other web development communities.

    comment at 08. January 2006

  7. Adam Jones:

    amusing.

    comment at 08. January 2006

  8. Mr Coffee:

    Oh. My. Gawd.

    Hey Alex, here are some more ideas for 2006.

    Comparing programming languages using the following analogies:

    Drugs (Watch Fear and Loathing in Las Vegas first though, stoned)
    Cars (Ruby on Wheels! Hahahahahahahahahaha)
    Animals (Java is a Hippo, Java is a Hippo, Ruby is a Amoeba)
    Colors (Ruby is so blue. It is the new black of 2006)
    Hamburgers (Harvey’s vs Burger King)
    Countries
    Sodas
    Mental Disorders (Can you say @_ = shift $1->Whuahahahahaha();)
    Rock bands

    Come oooooooooooooooooon, let’s do it. Write one of these every month! Enlighten us with your amazing insights.

    Mr Coffee

    comment at 08. January 2006

  9. Mr. Pink:

    You never state why all the other languages aren’t like wine. You just assert that Ruby is the ‘wine’ of programming languages, and somehow everyone else will magically know what you are talking about. This amounts to an emotional wink to all the Ruby programmers out there–”See how highbrow we are, fellow Rubyists?”. I love the Ruby language, but articles like this do it a discervice.

    If you are going to use metaphor or analogy, please explain HOW the metaphor/analogy applies. You know what–Ruby zealots are like hot air balloons, whereas Lisp programmers are like eagles.

    comment at 08. January 2006

  10. Mr Yawn:

    Jesus god, when is the RoR community going to stop whining about non-existant marginalisation and just use their shiny damn framework?

    The only criticism I regularly see levelled at RoRers is over arrogant shite like this.

    comment at 08. January 2006

  11. João Marcus:

    I agree with Mr Yawn. Rails is not killing Java. There is not a massive ammount of programmers migrating to Rails from Java. Let’s just face the facts: There have always been a great number of different webapp frameworks available. Each of them has their own community and people using it.

    comment at 08. January 2006

  12. Alex Bunardzic:

    Mr. Pink wrote:

    You never state why all the other languages aren’t like wine. You just assert that Ruby is the ‘wine’ of programming languages, and somehow everyone else will magically know what you are talking about. This amounts to an emotional wink to all the Ruby programmers out there–”See how highbrow we are, fellow Rubyists?”. I love the Ruby language, but articles like this do it a discervice.

    If you are going to use metaphor or analogy, please explain HOW the metaphor/analogy applies. You know what–Ruby zealots are like hot air balloons, whereas Lisp programmers are like eagles

    Ah, the perennial challenge of trying to explain the joke to a person who didn’t get it. You see, this joke is funny because… You know what, on second thought I don’t think I’m going to get into explaining this. Let’s just say that you’re right, the joke is not funny, you were correct not to get it, and there is nothing else to say about it.

    comment at 09. January 2006

  13. Anonymous:

    So what about people who have tried wine and beer, but like the beer’s taste better?

    comment at 09. January 2006

  14. Thijs van der Vossen:

    and the medical findings that red wine is actually beneficial for one’s health will pave the way toward adopting the red wine consumption on a larger scale.

    Actually, beer might even be better for your health than drinking red wine. ;-)

    comment at 09. January 2006

  15. florian:

    Isn’t it sad when a tiny and mostly ignored programming language suddenly gets driven by a Framework that desperatly begs to repeat the worst errors of Zope (I just say aquisition), to attract a bunch of programmers from Java and PHP?

    No, I think it’s even more sad that proponents of the fine point of such an analogy are incapable of using the analogy for what it’s worth, namely that habits of people are not that easely tied to stuff they consume, and that the stuff they consume mostly has a wider variety then what is presented in the article.

    No that’s not it either. I think the truely sad point all about it is the awfull reiteration of the stone-age old language-war statment “I pwn you suck because I use x and you use y”. Ohno, that’d been too simple right?

    comment at 09. January 2006

  16. Joakim Andersson | Ruby on Rails is like red wine:

    […] Over at lesscode.org we can read that Ruby On Rails Is Like Red Wine. Quite a funny analogy which leaves me wondering if it’s not just a little bit true… […]

    pingback at 09. January 2006

  17. Richard Dyce:

    Hmmm. Are we sure that wasn’t a bottle of Chateau Troll ‘06? I have to assume that it was…

    I think we ought to distinguish (as others have here) between paradigm and implementation. In terms of implementation, one could for example extend the analogy - it’s easy to find somewhere out there serving beer, but trying to get your local pub to serve decent wine can be a problem. And wine does come in very much smaller glasses. If (like me) your youth was spent as a quantity over quality man, then red wine wasn’t what you needed…

    And as an aside (oh, yes, why not, go on I’ll have another glass of Chateau Troll ‘06) seven-odd series of Frasier doesn’t mean that America isn’t still a culinary wasteland…

    comment at 09. January 2006

  18. Danno:

    Don’t drink and blog.

    comment at 09. January 2006

  19. Alex Bunardzic:

    Re: smugness.

    I’ve been accused of being smug with this post. You may find it hard to believe, but that wasn’t really my intention.

    I was merely reporting my findings from the field. Repeatedly, as I’m delivering Ruby on Rails presentations, or explaining to my colleagues in a less formalized environment the reasoning that is fuelling the RoR movement, I tend to get typical “I don’t get it” reactions. Most developers appear to be mystified as to what on earth could be the benefits of RoR.

    Now, maybe that’s due to my lousy demoing skills, but I nevertheless felt tempted to draw comparisons with my attempts to introduce my friends to the benefits/charms of red wine. Most of the people I’ve had a chance to discuss red wine with tend to shrug and confess that ‘beer is the ticket’.

    Things are better now than they were 15 years ago, but still beer wins hands down.

    Likewise, most developers can’t seem to notice anything worthwhile in RoR, compared to the way they develop using (replace _blank_ with your favorite language).

    On a personal note, I enjoy both good beer and good red wine. I have no preferences, except the ‘beer with sushi, red wine with salmon’ dictum.

    comment at 09. January 2006

  20. Eman:

    Alex, please read http://www.perl.com/pub/a/2000/12/advocacy.html

    comment at 10. January 2006

  21. TF » Django vs Ruby on Rails e altri framework:

    […] E’ superfluo notare che Ruby on Rails sta godendo di un hype pazzesco, in alcuni casi ai limiti del fanatismo. Spesso si leggono articoli, come quello di Alex Bunardzic, che sembrano scritti tanto per fare propaganda. Uno sviluppatore generalmente non passa non dovrebbe passare ad un nuovo linguaggio e/o framework just because it’s cool. Forse però poter dire l’ho realizzato con Rails migliora l’autostima […]

    pingback at 13. January 2006

  22. 18th century:

    gimme good smoke, a nice V.I. Blueberry for instance. and python for glue. anyday. and a Caesar.

    comment at 16. January 2006

  23. Barry Christianson:

    I would like to suggest another analogy…
    I would like to make python and ruby hard liquor and php/asp etc beer.
    Then lets call getting drunk “getting the job done”.
    This way, php and asp might taste good, and being a beer drinker I will always favour a beer over a glass of Johnny Walker! But, making Ruby on Rails and Django tequila?!
    See where I’m going? They might not necessarily be better tasting(or they might very well be) but they get the job done quicker :-)
    as would any good framework?

    comment at 17. January 2006

  24. Richard Dyce:

    I thinking of writing a paper “Defining a linguistic Young’s Modulus: The elastic limit for analogies”. Anyone care to contribute? ;-)

    comment at 18. January 2006

  25. Straw Dogs:

    To lump the majority of languages into the ‘beer’ category and a selection of fine scripting languages into the white wine category only to give Ruby an entire category of its own then claim it is the finest of them all. Arrogance of the highest order.

    I hope its all ‘tongue-in-cheek’ or I may glass you with a bottle of fine white.

    comment at 19. January 2006

  26. Alex Bunardzic:

    Straw Dogs wrote:

    To lump the majority of languages into the ‘beer’ category and a selection of fine scripting languages into the white wine category only to give Ruby an entire category of its own then claim it is the finest of them all. Arrogance of the highest order.

    I think there’s been a slight misunderstanding of my intentions. You see, I wasn’t trying to say that Ruby is the finest language, or the most sophisticated, or the most elite, or the most powerful etc. All I was pointing at is that when it comes to Ruby, most developers tend to treat it as if it was red wine. It is not that we, Rubyists, claim that it is like red wine. It is merely that non-Rubyists tend to view it the same way that many beer drinkers view red wine.

    It is not my fault that these people get mystified as to why would Ruby be so seductive. And it also is not an indication that I am arrogant.

    So, don’t kill the messenger:-)

    I hope its all ‘tongue-in-cheek’ or I may glass you with a bottle of fine white.

    Don’t glass the messenger with a bottle of fine white wine:-)

    comment at 19. January 2006

  27. Moss Collum:

    I have no preferences, except the ‘beer with sushi, red wine with salmon’ dictum.

    What about sake?
    (It’s two questions in one!)

    comment at 19. January 2006

  28. Harry Fuecks:

    Alright! I’ve got something good to say about this! Drum roll…

    Well at least it’s not a car analogy.

    comment at 26. January 2006

  29. Anonymous:

    “I think there’s been a slight misunderstanding of my intentions”

    This tends to happen frequently with your posts. Before you post something, maybe you should have a couple of friends read it and see if they grok it. It seems like when you write your articles, there’s a lot of context that you leave out and just assume that people will know. Let us in!

    comment at 28. January 2006

  30. Alex Bunardzic:

    This tends to happen frequently with your posts. Before you post something, maybe you should have a couple of friends read it and see if they grok it. It seems like when you write your articles, there’s a lot of context that you leave out and just assume that people will know. Let us in!

    Sorry, can’t do, people are always complaining that it’s too verbose then.

    Alex

    comment at 28. January 2006

  31. Max M:

    The funny thing here is that it must be written by someone who does not know much about neither beer nor red wine.

    It is really hard to guess if a red wine is good. You can know the grapes, the district, the vintage etc. But the only way to actually know if a red wine is good is by tasting it.

    Beer on the other hand has a far more predictable taste. And beer also has a far more diverse range of flavours. There are bigger taste differences between different beer types than between different wine types.

    The reason that people drink more red wine is usually due to snobbery and lack of knowledge of beer.

    If your judgment of beer comes from drinking Budweiser, its no wonder you think red wines are more nuanced. But try some really good beer and you will know that red wine has no advantage here.

    Btw. I enjoy red wine and beer equally.

    comment at 20. February 2006

  32. Bob Digital:

    Why do I have the sudden urge to go out and get wasted?

    comment at 10. October 2006