Sunday, August 10, 2008

Code is not an asset

Michael Feathers wonders how to go beyond technical debt. I have been wondering about this for some time, and I think the answer is to account for code as a liability, not an asset.

The functionality that the code has, the value it delivers is an asset, but the code itself is a liability. This easily explains how refactoring and removing code add value, as long as functionality is preserved.


Anonymous said...

Using this argument, a car is an asset because of the functionality it delivers, yet it is also a liability. Using financial terms, a car, a house, a computer, and computer code, are all assets with liabilities attached. They all require an initial investment, and maintenance and on-going attention to keep them working.

Sim said...

Interesting point.

All the more reason why languages that produce functionality with less code are a good idea.

Remember 4GL's anyone ?

Jason Reid said...

This is in line with James Shore's Approximate Measure of Technical Debt...# of lines of code.