Thursday May 19, 2011

A Programmer's Job Is To Delete Code

From Michael Feathers post, The Carrying Cost of Code.

I think that the future belongs to organizations that learn how to strategically delete code. Many companies are getting better at cutting unprofitable features in their products, but the next step is to pull those features out by the root: the code. Carrying costs are larger than we think. There’s competitive advantage for companies that recognize this.

A great read. It reminds me how good Apple is at ruthlessly deprecating old stuff. They don’t support running iOS 4.x on the original iPhone. There was a lot of uproar about that, but from this articles perspective, it makes sense. By removing support for older hardware, they can delete code.

Yes, you could make a case that Apple’s window of support is too narrow, but it’s clear they take the carrying costs seriously. This is a huge and obvious competitive advantage. Don’t be surprised when you have to keep up.