The Real Contribution of Rails

Ruby on Rails has had an enormous impact on the web application development ecology. Like a hungry non-native species without a natural predator, it has gone from interesting niche player to seeming world-beater nearly overnight. There have been many pontifications, discussions and arguments about the relative technical merits of Rails (and, by extension, Ruby) and how they stack up against the reigning king of the hill, Java.

It seems to this observer that these discussions overlook the primary contribution of Rails to the technical ecology. See, the technology ecology is a lot like the savannah. There are roving herds of developers of all stripes wandering out here in the tall grasses. I won't go all Bruce Tate on you and start making similes about which developers are which animals; just keep the picture in your head. Tall grasses, wandering developers. The problem with this idyllic picture is that there are a lot of sick, diseased animals out there in the savannah, but they drag down the herd and continue to consume valuable resources because they can hide in the tall grasses. You just can't spot which ones need to be culled.

This is where Rails comes in. Like a hunting call ("dynamically typed! dynamically typed!"), Rails flushes the weak, the diseased, the misinformed, and makes them stick their heads up over the top of the tall grass. Where they can be easily picked off by the avid hunters. People like James McGovern and his ilk, whose biases are so strong, whose allegiances so deeply rooted, that mere fact cannot be used to persuade them to keep an open mind. It is here that Rails excels.

To be clear, I'm not talking about bad developers. There are lots of bad practicioners of any craft; Rails won't highlight them (though it will do the converse, as I mention below). I'm talking about the people who claim to be deep thinkers and thought leaders but can't tell innovation from insulation, evolution from convolution. Rails makes those people say silly things that make it obvious that they aren't thinking critically anymore. (And, no, I don't mean "Java sucks, Rails is hawesome, anybody who disagrees with me is a dope". I mean, anybody who says things like "Rails isn't a good platform because Ruby doesn't have public and private members" is just making stuff up so they can take your money.)

But it is even better than that. Rails represents a lighter, meaner way to develop a certain kind of application. It represents a focus, an eschewing of clutter, a purity of vision. It is the kind of tool that can easily demonstrate which members of a team are technical professionals, and which ones are frustrated rock stars trying to pass the time until RCA calls.

And I'd like to make it clear that Rails isn't the first, nor the only, tool to provide this kind of leverage. There are many others; but there have been few, if any, to have the perfect storm of technical viability and incredible hype which enables it to penetrate the deflector shields normally raised around the IT departments of America.

So Rails really lets two groups peek up above the tall grass; 1) the weak and diseased, who get picked off for the greater good, and 2) the hale and hearty, who get voted to be King/Queen of the Herd. This is Rails' greatest contribution, the one that will last longest, because eventually Rails itself will be usurped and something else will come along to pick at its sun-bleached carcass. But the ecosystem it will have left behind will be healthier because of its contributions.

UPDATE: added bullet numbers to last paragraph to make clear what two groups I was talking about.