Back in the 2000's, I was in my early 20s and a student at the Tampere University of Technology. I was in the "first era" of my longest-running hobby project (Doomsday), enjoying the freedom to spend my time mostly as I wished — apart from study obligations — getting sucked deep into programming every day for fun.
One habit that definitely helped that project keep going at the time was writing a dev diary, where I was basically thinking aloud about what I was doing and trying to come up with solutions to the current set of problems. It's fascinating reading this stuff now, two decades later:
[2:00] Man, this is the night! This *is* the night! I've set up quite a network here. The P166 is now using the PII as a HTTP proxy and can now access the internet quite nicely. I'm currently downloading IE 5.0. This is fantastic. All thanks to a nice program I found: 602Pro LAN SUITE. I just hope it doesn't lock up when the trial period is over...
That was written at 2 AM. I was building a little test network for the multiplayer code. I have no recollection of what "602Pro LAN SUITE" is, but the enthusiam is evident.
Programming is such a complex task that it helps immensely to write things down. At the end of a session one can just dump one's thoughts and next steps into a text file, and pick them up the next day, or after a month, getting back up to speed quickly. This is helpful also when there are lots of distractions or other interruptions that derail one's train of thought.
I suspect I'm particularly bad at task switching, preferring to focus intensely on one thing at a time. For me it's invaluable to have a to-do list or any kind of record of what has been going through my mind.
It's unfortunate that my dev diary habit fell by the wayside at some point. I can't quite recall what drove the change, but one contributing factor was the introduction of web-based issue trackers. I found it challenging to maintain a to-do list and an issue tracker, when the latter was also a different kind of a to-do list. Over the years I've found the right balance, with TaskPaper-formatted to-do lists for daily work and web issue trackers for public communications.
For Lagrange specifically, the work has been progressing smoothly and thanks to the relative simplicity of the app, I haven't felt the need to think in writing about any particular problem. An upside of keeping things simple! In ten years, maybe this gemlog will act as a reminder of what this stage of the project was like, since I haven't been writing a diary.
🏷 Programming, Life, Doomsday, Lagrange