| My main complaint the last time I did this (2022) was the havoc it wreaked on my sleep schedule. Advent of Code is not kind to East Coast participants. Every year except for one has been kind of the same pattern for me: Day 1: this year, I'm just going to solve the problems. No futzing around. Day 3: but it would be kind of neat to turn the solutions into a reusable AoC library. Just something minimal. Day 5: and I should really add a CLI harness for retrieving the problems and parsing the input files. Day 6: and testing of course. Day 7: maybe I'll skip today's problem (just for today) and keep improving the framework. Day 358: oh neat, Advent of Code is coming up. |
But I luckily managed to avoid the "reusable AoC library" problem around 2019 when a week beforehand I wrote down the sort of functions I wanted to have at my disposal (usually things around representing 2D/3D grids of unknown size and pathfinding/debugging therein, but a few other bits and pieces) and made a simple library that I will sometimes add things to after I'm done with the problem for the day.
I was tempted to some functions (similar to those your CLI harness provided) for retrieving test data and submitting answers but I managed to stop myself short of that! But I am sure you're far from the only one to end up down that road.