SMOKE IF YOU GOT EM
I have an unhealthy habit of biting off more than I can chew. I fully admit to this, and have done so (in reference both to admission of my sin, and commission of my sin) for quite some time now. And to be fair to myself, each year I get a little better about gaging my progress, and tempering my expectations. The fact that I'm getting so many things accomplished (and without chasing deadlines) attests.
The demo. I'm fairly experienced in the ways of software project management, and I can compose systems well enough. I designed this latest project as a series of "channels", with the expectation that I could jettison entire sections if I started running out of time. Unlike my other personal projects, this has a firm deadline. It's do or die (or wait until next year lol).
The way I construct my projects is to create the sections in a vacuum, so to speak, and then glue them together toward the very end. I usually have plenty of leeway in terms of memory and performance, and I do stress tests at the start of the project to make sure I won't run into issues at the end. The benefits of the strategy are obvious, but the downside is that it feels like you're not making any progress, because you're always perceiving a part of the project, and never the whole thing. That tends to wear on me over time.
No matter how many times I do this, I always underestimate my progress, until the near-end, when I stitch everything together (usually over a matter of hours) and suddenly realize I'm almost done. It feels as though I've gone from 50% to 90% completion in the course of an afternoon -- and my, is it such sweet relief. I'm starting to experience that right now, as I'm stitching the demo channels together with some scripts and elbow grease.
I still have a long road ahead, but.... I'll get there. Somehow.