[ Go back to normal view ]

BW2 :: the bitwise supplement :: http://www.bitwisemag.com/2

Ruby Rage
Why, I wonder, does Ruby provoke such high passion?

18 November 2008

by Huw Collingbourne

Some people get almost patriotically attached to their favourite programming languages. All I can say is: I don’t. My relative detachment sometimes causes offence - when, for example, I mention something I don’t like in a language or think is done better in some other language, some people seem to take it as a personal attack, akin to an act of sabotage or betrayal.



This is especially true of Ruby. Look, I like Ruby, I spend hours of most days programming in Ruby, heck! I run a company that develops a Ruby programming IDE called Ruby In Steel. Still not persuaded? OK, then, I’ve written Ruby programming columns in PC Pro magazine, I’ve published a free eBook on Ruby called The Little Book Of Ruby and I am now writing a much bigger eBook called The Book Of Ruby (260 plus pages and growing). I mean, you know, how can I put this - I am not an enemy of Ruby!

But, from time to time, I confess that I have mentioned that there are certain things about Ruby that I don’t much like or which, in my opinion, could be improved upon. Last year Bitwise also printed a critical discussion of Ruby by computer science academic, Matthew Huntbach, (who was given complete freedom to write whatever he wanted - pro or con) called ‘What’s Wrong With Ruby?’. If you have a few hours to spare, you may want to read the numerous comments down at the bottom of the article for a flavour of just how angry Ruby programmers can get! By way of balance, Matthew Huntbach also wrote another article, called ‘What’s Right With Ruby?’. But this did nothing to ameliorate his original crime of daring to consider that anything might be wrong with Ruby. It was around this time that Ruby developer, Austin Ziegler, wrote a scathing attack on me, Matthew Huntbach and Bitwise in general called (snappily, I thought), “What’s Wrong With Bitwise Magazine?”

According to Ziegler, I myself have expressed views on Ruby that are “bad enough” but Matthew Huntbach’s piece stands as “a shining example of ignorance masquerading as informed opinion”, was devoid of “well-informed comments” and, indeed, all the articles on Ruby that have appeared in Bitwise are “singularly devoid of informed content” (perhaps you detect a theme here?).

There have, over the years, been many other similar comments by critics who object to any criticism I have made of Ruby (some of the comments are appended to articles here on Bitwise, some appear on sites such as reddit) but I have linked to Austin Ziegler’s piece since that is a fairly long and eloquent exemplar of this type of criticism. I certainly have no gripe against Mr Ziegler: indeed, I absolutely support his right to express views on what I write and he has done so in far more measured terms than some other people to whom I am not linking - though I would like to think that the passing of time might eventually persuade him that I am not really such a bad guy as he may suppose.

The plain fact of the matter is that it has always been my habit to say (and write) what I really and truly think even when doing so may demonstrate a certain lack of diplomacy. And when some another writer (such as Matthew Huntbach) wishes to express their views, I neither dictate to them the views which I would like them to express nor do I edit their articles (short of minor alterations such as spelling corrections) since, in my view, all editing is inevitably a process of criticism: it changes the meaning of the original piece.

All Quiet on the C# Front

To put this in perspective, I wrote the Delphi programming column for PC Plus magazine in the UK every month for ten years. In that time, I frequently mentioned things I didn’t like about Delphi, including bugs. And yet, in all that time, I only remember once receiving a critical attack on my writing - and that from somebody who took strong objection to my failing to begin my class names with a capital ‘T’! Ah well, each to his own...

I have also written numerous programming columns on C#, Java and other languages for PC Pro, PC Plus, Computer Shopper, Bitwise and elsewhere. None of these has generated any volume of critical response from readers. But in the world of Ruby (and I believe the same may be true of some other languages such as Python), sensitivities run high. Why that is, I can only guess but all I can say is that the fear (or disapproval) of critical comment of a language or technology (or politician, writer, singer or breakfast cereal, come to that) does little to inspire confidence.

How do C# programmers react to negative comment of the C# language? Do they react at all? I am not, in all honesty, sure. I would think that most would either agree or disagree with any criticisms and then shrug their shoulders and move on to something else. That is because they have confidence in the language of their choice so they don’t need to approval of other people. Oh, how I long for the day when more Ruby programmers might demonstrate a similar confidence in their chosen language.

The last time I can recall programming language debates of such ferocity was back in the 1980s when some C++ programmers took it into their hearts to attack Modula-2 and all who programmed in her and, for their part, many Modula-2 programmers returned the compliment. That all seems about as relevant today as the debate between video formats (let me admit that I was programming Modula-2 at the time and had a Video2000 video recorder - OK, so I wasn’t good at picking the winners but I still think the technology was superior).

Incidentally, for the benefit of anyone who is prepared to believe that maybe, just maybe, my knowledge of Ruby may not be totally devoid of informed opinion ;-), you may like to know that I’ve just uploaded the latest PDF of The Book Of Ruby which now has 13 Chapters in more than 260 pages and includes 210 ready-to-run Ruby programs: http://www.sapphiresteel.com/The-Book-Of-Ruby.

As I said, it’s free. I hope you enjoy it.