Spent the whole (long) day working on the status display for Cinemon. It was one of those days where you focus on the project so closely that you've lost track of what time it is. You just look up from the code around 9pm and realise "hey, I probably should have eaten something" and then you think "but I'm right in the middle of this, maybe there's leftovers I can reheat".
You just keep pushing forward, thinking "I'll just fix this bug" time and again, but there's always another stupid, pointless little bug just beyond it, and half the time the silly machine won't actually tell you what the bug was. When you finally get where you're going (wasn't that just supposed to be a run to the corner for some milk?) you can't remember any of the highway you've traversed. It's a featureless blur of error pages and tracebacks, restarts and testing, debug prints and asserts.
Sometimes it seems as though coding just boils down to how obsessive you are about tracking down all the trivial details. Designing the system is easy, that's just patterns and orders and rationalising systems of interconnecting actors. It's the mind-numbing grind of finding misplaced commas, un-reversed lists, and method calls you thought you'd made but never got around to that saps your will to live.
Worse yet is the code-rot that creeps into every project, perfectly valid code that works fine, but has begun to develop the scent of putrescence as the elements around it shift purpose and structure, not enough to make the code fail, but enough to make it sub-optimal, almost slimy. You ache to rip it out, but there's no business case for it until something breaks... or you break down and fix it to keep your sanity.
Pingbacks are closed.