Programming

I am looking at my application. The one I’ve been working on in my free time. Free time which is a precious commodity. I haven’t been making fast progress on it. Every time I put it away it takes me awhile to actually remember what I was doing and get to a place where I can actually be productive with it.
A co-worker came up with a good analogy. You start a project in your garage, and get all the pieces and tools laid out and ready to be used. Then another project comes in that is a higher priority, which means you have to sweep everything away and finish this other thing. Then when you come back you have to go “What was I doing?” By the time you’ve gotten the tools and pieces back into place, another high priority project comes up.
That analogy is more useful to work projects. For my personal program, life is the thing that comes up and wrecks progress. Taking long vacation doesn’t help.
There is a feature that I’ve been wanting to implement for years. I’ve been trying to figure out an algorithm that would let me do it efficiently. I finally figured one out and I’ve been trying to get around to developing it.
I have some time now; I’m at my parent’s place and letting them spoil me. Free time is a resource I have again! But as I am looking at the code, another programmer trap is coming to haunt me. The idea that I may need to re-architect the program to implement the new finish.
That way lies madness.
But it’s so shiny…