[ Go back to normal view ]

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

The Book Of Ruby - A Heretical Text?
The book they don’t want you to read!

22 July 2011

by Huw Collingbourne

Ruby is a nice, friendly programming language that goes out of its way to let you program in whichever way suits you. The same cannot be said of The Ruby Community.



The ‘Ruby Community’ is a loose grouping of Ruby programmers, many of whom consider themselves to be initiates into the secrets of something known as the ‘Ruby Way’. In recent times, some of the guardians of the Ruby Way have decided to attack my newly published Ruby book, The Book Of Ruby. Their campaigns against the book have been organised on Ruby discussion sites and launched on blogs and on Amazon. I get the impression that few (if any?) of the negative reviews of my book have been written by people who’ve actually read it. At least one Amazon reviewer openly states that he has not.

Now, I don’t want to tar all Ruby programmers with the same brush. There are a lot of very honest and decent Ruby developers who would not, I am quite sure, consider reviewing a book they have not read. But they are not the people who are shouting the loudest. Since a lot of the shouting is being done in my direction, I thought it reasonable that I might shout back a bit (No, no, what am I saying? Shouting really isn’t my style) – let’s say, then, that I thought I might take the opportunity, quietly and calmly, to offer a measured response to my critics.

Here it is....

Now, I cannot say that the bile and vitriol which my Book has engendered come entirely as a surprise to me. On every occasion in the past when anyone here on Bitwise has expressed anything less than an unqualified adoration for every single aspect of Ruby, they have been subjected to sustained and, often very personal, attacks.

For example, back in 2007, Dr Matthew Huntbach (Lecturer in Computer Science at Queen Mary, University of London) wrote a couple off opinion pieces on Ruby, in which he discussed some views on what he found good, bad, interesting or not so interesting in the language. His articles were called What’s Right With Ruby? and What’s Wrong With Ruby?. Huntbach’s discussion was calmly and carefully put and I anticipated that people with differing views would express their opinions in an equally calm and careful manner. No such luck! Here are some examples to give you a flavour of the maturity and civility of the discussion:

“You are a moron! ... Where did you get your Phd? A cracker-jack box?”

“Matthew Huntbach is a total Clown..”

“you fascist! it’s pricks like you who deligitimize the field of programming and suck the joy out of everything!”

To be fair, not all commentators were so narrow in their views. Take this comment, for example...

“Never mind the article, the real problem with Ruby is the community. WTF is wrong with you people? Decent article with some debatable points and the fanboys are frothing at the mouth.”

Sadly, the name-calling is all too typical of the level of debate that occurs when any criticism is made of Ruby. The Ruby Community does not encourage dissent.

My book has no axe to grind for or against Ruby. My critics vent most of their spleen on my code formatting and styling preferences (amongst my more egregious sins, to which I openly admit, are my habit of using four-space indents instead of the ordained two and that I very rarely put underscores in method names). Less time has been spent commenting on what I have to say about the behaviour and use of the Ruby programming language. Not that I think that many self-proclaimed ‘Rubyists’ would have much positive to say on that either. Unlike in many other Ruby books, the words ‘cool’ and ‘neat’ do not feature largely in my book. I take an entirely dispassionate approach to Ruby. I describe it as it is, not as I think it should be. When things aren’t done well (Threads, for example), I say so. I am not in the business of trying to proselytise Ruby. As far as The Ruby Community is concerned I am not one of their number. I am a heretic, an outcast. Invincibly ignorant.

And that is why some Ruby programmers will adopt all the means at their disposal to persuade you not to read my book. So be it. I’m not in the business of persuasion and propaganda. I tell it like it is. And, frankly, I intend to carry on doing so.


- See also my comments HERE and HERE.