avatarharuki zaemon

Best Practices

By

I happened upon this post on the artima web site which reminded me that I had been wanting to rant a little about best practices for a while.

It has always seemed to me that so called “industry best practices” are really only ever identified at the end of a cycle of innovation. Or in other words, when many in the industry have moved on to developing “better” practices. My observation has been that companies striving to adhere to “best practices” are often at least 12-18 months behind the leaders.

Some (read large, conservative, glacial, etc.) companies take so long to adopt advances in technologies and methodologies, etc. that by the time they do, they’re really using legacy* practices. They are highly risk averse. They can’t, won’t or don’t employ talented developers. Instead they hire an army of over-paid whiteboard architects who couldn’t build a software system if they tried. These whitebaord architects, with little or no understanding of what really goes on their own industry, need to protect their backsides by showing little or no innovation by promoting whatever methodolgy sees most of a projects time and budget justifying their employment and ensuring there is always someone else to blame if/when something goes wrong.

Now, don’t misunderstand me. I’m, in no way suggesting you jump on the next AOP, IoC, whatever wagon that rolls into town. But don’t be fooled that simply automating manual processes or creating a web site (inter-, intra- or -extranet) will suddenly make your business more efficient. We should be striving to deliver high-quality, adaptable systems that allow the business to realise competitive advantage as early as possible.

  • For clarification, I’ll define legacy to mean anything that clearly doesn’t work to all but the people who try so hard to believe that it does not least because their jobs probably depend upon it. A kind of managed failure. As a reader suggests, if it works, it’s not legacy.