The best time to shovel your driveway is immediately after it snows, but failing that, any time before you have driven on it. Driving on fresh-fallen snow compacts it into something between “ice” and “pure evil”, depending on the temperature, humidity of the air, humidity of the snow, etc.
I just went out and shoveled and chipped our driveway down to bare concrete because we’re about to get another 6 inches of snow, and the very last thing you want is to add fresh snow to existing ice. That’s how you get glaciers. I was thinking about technical debt, because physical labor induces contemplation.
Of course, the best time to clear up technical debt is right after you create it, when everything is crisp and fluffy and even the heaviest snow isn’t stuck to anything.
If we could all fix technical debt as soon as we incur it, that would be amazing. But more likely, someone had to go get milk, or go to the airport, or deploy for testing or a major client, and the snow has been driven on and something has been changed in the code.
Now that compressed snow/ice technical debt is something that’s going to take real effort to deal with, and the longer you leave it, the more likely it is to get driven on again and coded against again, and get even worse. In snow-shovelling, we have a tool for that:
I call this an ice-chopper. If it has a proper name, I don’t know it. At the end of a long wooden handle is a metal head that would look like a hoe, if a hoe didn’t have any bend in it. The way you use it is you either get under the ice and scrape it off, or, if it’s gotten very bad, you drive the edge down into the ice to break it up, bit by bit. It’s quite a lot of work, and that amount of work relates directly to how often you do it and how often the snow gets away from you, like a codebase.
Some things are beyond our control, like plow berms, which are the compacted ridges at the end of the driveway caused by the street plows pushing the excess snow to the edges of the road, which are, by definition, the end of our driveways. That’s where the worst of the ice is.
There are more and less favorable conditions for removing technical debt. Like it’s hard and risky to do it right before a big launch, because you don’t know what all the load pressures will be. For shoveling, cold days are actually best, because the ice and snow are so dry that they are more brittle. I try to maximize for that, and for driving, and for one other factor….
I was shoveling this afternoon because it’s going to snow 6-9 inches tonight. It is better for the rest of my winter to clear the driveway down to bare concrete today, because then, when I go to take the next snowfall off, I won’t have any glaciers, or slippery spots, or high areas that can catch my shovel. Shoveling off a fresh fall will be work, but it won’t have hidden, dangerous, and complicated parts, because I just removed them all, while I could still see them.
Much like software projects, winter in Minnesota is long, and we can’t count on favorable conditions. It’s entirely possible we won’t have a day above freezing for the next month. So even though it was 5 degrees Farenheit, addressing my technical debt will pay off for me.
Thank you for indulging my extended metaphor, and do think about when you want to clear your technical debt. You can’t help incurring it – it’s the cost of making things, much like student debt is the cost of higher education for most Americans. But you can think about when it’s useful to remove it, and be mindful of your tools and needs.
Speaking of tools, a side note.
These are choppers that came from the local farm-supply store. They are a very old form-factor, and very efficient. The knitted mittens go next to your skin. The suede-y deerskin mittens go over them. They are both, ideally, a little oversized so there is lots of trapped air insulating your hands. The deerskin (or moosehide or caribou, depending on where you are) protects your hands from the wind and traps the air inside. The woolen knitted mittens trap more air and provide warmth and insulation. When you’ve been working hard, and have broken the Arctic prohibition (DO NOT SWEAT), you can come inside and take the pieces apart and they will dry/air out much better than any combined/technical/nylon wondermitten would.
O'Reilly Software Architecture/Velocity
The Lead Developer London