Shoveling snow is best done early, you may have to do it again, but it is a far easier affair. The same is true of buggy or troublesome code in a project, the sooner you fix the code the easier it will be.
The longer you wait to shovel the worse it gets, besides the additional snow you have to move. The snow may get compacted, or freeze into ice. So you will end up breaking ice, salting, besides shoveling. The same is true when maintaining a project, and you wait to fix a troublesome section of code. The problems will start to pile up and dependency may be built on top of the code. Then when you actually get to fixing it you have to fix not only the initial problem, but any dependent code.
Sometimes our hands as developers are tied, the budget maybe tight, but we should understand the business case for fixing something earlier, and try to estimate the cost of not fixing it if there is resistance. That being said we should also be cognizant of balance between our need as programmers for quality, and the bare minimum which will provide our customers, internal or external, the value they expect.
“Fix early, fix often” is my philosophy for dealing with bugs. When you delay fixing a problematic section of code, you will pay for it with interest. Having a clean code base is even more satisfying then having driveway and walkway clear of snow.












