Friday, February 13, 2009

Want Fries With That?

Twitter's buzzing with the latest Rails meme: RMM, the Rails Maturity Model. The responses range from furious outrage to incredulous disbelief. Most people assume it's a joke at first. There are a few sad notes of acceptance but most of the community is just mind-boggled.

Technically my boss got Obie started, so in theory I should be afraid to say that this idea is a silly load of bullshit, but the great thing about my company is that I can get away with it (probably). So: this idea is a silly load of bullshit. Yay free speech.

Twitter is too full of comments like "are you fucking idiots fucking kidding me?" for this to be a shocking statement. The original thread is too full of well-reasoned counter-arguments for it to be worth going into detail. Rick Bradley raises an interesting question, though.

Does the emergent intelligence of crowds (the same emergent intelligence that drives large-scale open source to success) sift out the identify of the high quality software teams, or can such high quality only really be discerned by other high-quality software teams?

It's a question of practical importance. The street-smart answer: the number of programmers who know their ass from a hole in the ground is and always will be small. High-quality software teams are the exception, not the rule, and they stick out like sore thumbs. Rick basically says that himself:

In reality, where we happen to live, there seems to actually be a power law at work: the vast majority of software and teams plying our trade are so bad that they fail nearly every metric we could reasonably apply. Only the vanishing minority of products and practitioners pass even a single gameable metric.

But the question is really, do you need a high-quality software team to detect a high-quality software team? Does it literally take one to know one?

This implies some additional questions: is all this process stuff just bullshit anyway? Does any metric matter at all except the number of happy customers, and the length of time those customers stay happy?

The E-Myth is a small business classic. It tells small business owners that they should spend as much time working on their business as working in it, for it, or through it. The book idolizes McDonald's as a business, not because it believes modern industrial society should be polluting our internal organs as much as it pollutes our surrounding environment, but because McDonald's became a success because its founders worked on it more than through it/in it/etc. Every last thing in a McDonald's is systematized and governed by precisely articulated rules. A McDonald's is practically a machine that happens to have human parts.

If best practices are as much better as we like to think they are, then dev franchise chains are just a matter of time. There is much more money there than there is in certifications. Conversely, if best practices don't make that kind of difference, then a certification won't help you.

ENTP is already headed in a franchise-y kind of direction. We have multiple semi-independent offices. If there's truth to just half of Hashrocket's hype about their internal methods, then what they have is also already approaching a franchisable business. Personally I think Hashrocket stands to make much more money pursuing a franchise strategy. They would also do more that way for promoting good development practices than any certification ever could.