Tuesday, January 16, 2007

Rails and the Starship Enterprise

A little back there was a big ridiculous blog war about whether or not Rails was ready for the enterprise. Things got a little out of hand and David Heinemeier Hansson ended up saying that the enterprise wasn't ready for Rails. I'm paraphrasing here, but honestly, the whole thing was silly in my view. It all got started by a real bottom-feeder of a consultant, who was obviously trolling for blog hits and willing to say any random bullshit that happened to cross his mind, and it's really an embarassment to the Rails community that anybody ever responded to him at all.

There's a funny irony to the whole thing, though.

At the time, DHH said:

James McGovern's ill-conceived rant made a strong attempt at rendering the word 'enterprise' equal to, pardon my french, bullshit

The effect of this on the Rails culture was unfortunately quite one-sided. It's now become utterly commonplace among Rails developers for the word "enterprise" to be considered entirely synonymous with the word "bullshit." In other words, the general Rails community interpreted this very broadly, operating under the assumption that McGovern's attempt had succeeded, and the word "enterprise" therefore had successfully been rendered equal to "bullshit."

Here's where the funny irony comes in.

Probably the single best idea in the whole of Rails -- and it's a framework filled with great ideas -- is the clean, elegant implementation of ActiveRecord. I say implementation because ActiveRecord the software is based on Active Record, a pattern identified by Martin Fowler in his book Patterns of Enterprise Application Architecture.

See the irony? The whole idea of ActiveRecord comes from enterprise software development; yet many, many passionate Rails advocates dismiss anything connected with enterprise software development as bullshit because it's connected to enterprise software development.

If DHH had been operating from such a closed-minded, foolish vantage point, he never would have written ActiveRecord in the first place.

Anyway, why do I bring this up? Because Rails still has an enterprise community, and notwithstanding the stigma they've been given, this community is beginning to conclude -- and prove -- that Rails is absolutely enterprise-ready.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.