All, > > If it works, don't fix it. > I've heard that one too often to let it go unchallenged. Nothing personal - it's just one of those quips that too many people use.
Do you have check-ups at your dentist? When was the last time you went to a doctor for a check-up? Or do you go to a doctor only when it takes an ambulance? When you take your car to the garage, do you drive? Or do you wait until it needs to be towed? I've spent a significant part of my working life fixing technical debt - either when there was room to do so, or when some project necessitated us to get the old flaws out of the way. The worst was when a two-day fix took over two months. I had a hard time explaining to my manager why such a simple change should take so much time. I've also seen the reverse, where we ran a nine-month project to increase maintainability of a software product for mortgages. After that the bank was able to very quickly introduce a new product which earned them a significant increase in market share. Technical debt - even when no obvious breakage occurs - is a costly thing to own. It increases the burden of maintenance and supports and slows down new development. Fixing that is a valuable investment to increase the lifetime of the product. I have yet to see the first company that accounts for their technical debt in their bookkeeping, but they really should. Including a percentage for 'interest' because technical debt spreads like rot in wood. In wooden structures you fix rot at your earliest convenience - you do not wait until it spread so much that breakage occurs. Failing to account for technical debt in the bookkeeping is a lie to the shareholders, and an excuse for managers to let the rot spread. But brushing the problem under the carpet like that does not make it go away. On the contrary - it will spread in the dark and contaminate whatever is close by. Next time someone say not to fix what ain't broke, be aware that things need to be fixed _before_ they break. Fixing the roof before the rain starts gushing in is a lot more effective and a lot cheaper than waiting until it breaks! Kind regards to you all, and good luck educating your manager :-( Abe Kornelis ==========
