sunrunner
today at 10:25 AM
I genuinely look forward to Advent of Code every year (whatever that says about me) and next year's one is always on my mind, so naturally I'm somewhat sad about this as the one-puzzle-a-day up to Christmas day just felt very neat, and I liked the mostly gentle initial difficulty curve up to the more 'spiky' questions later.
Having said that, having done a few years now I think the following things end up feeling consistent across years:
The first 10-ish (give or take) days were always simple enough that experienced programmers can likely spit them out during their daily standup. This isn't bad, as I think they're great for newer programmers to get a bit of algorithmic and data structure thinking practice, but they can definitely feel a bit same-y once you've done a few years. This isn't a critique of how AoC was structured, just an observation of how it can feel after you've seen a few years. Having said this, I'm sure I'll miss the gentle warm-up this year.
I wonder what this means for the difficulty curve i.e. the almost-inevitable path-finding question will appear on Day 5 and not Day 15?
I'm sure Eric has thought this through but I wonder if an every-other-day approach (perhaps with a 'softer' puzzle for Christmas day itself) would be popular, as I imagine people balancing a job and/or family while wanting to do this might appreciate having two days for the more challenging later puzzles.
On the other hand, free time for this generally does get more tight as you get closer to the end of the month and the puzzles get more challenging, so this approach does just make a chunk of space for people later in the month, and individuals can choose to keep up with the puzzles on release day if they can or just not worry about it and let things roll over.
Unfortunately, I guess I'll have to actually go and see my family this Christmas instead of ignoring the mandatory visits, which seemed like a fair sacrifice to keep up with calendar ;)
> It takes a ton of my free time every year to run Advent of Code, and building the puzzles accounts for the majority of that time. After keeping a consistent schedule for ten years(!), I needed a change.
Completely fair. As Eric says in some of his presentations on this it takes him about three or four months of his spare time, so this is more than understandable. Props to him for keeping this up consistently with his day job for the last ten years.
> The global leaderboard was one of the largest sources of stress for me, for the infrastructure, and for many users.
I don't mind this so much personally (outside of a morbid curiosity in the really fast participants) although I know people that were really invested in it, but there were some genuine points of contention for people that were interested in the leaderboard:
- The global puzzle unlock time, while explained by Eric himself in his presentations, does make being on the leaderboard impractical for people outside of time zones where the actual release time is friendly for that. For me it's 5am, and the only time I ever came even close (while also being nowhere near...) was when I happened to be up at that time due to insomnia (not caused by AoC).
- It sounded like an infrastructural point of pain as the single global release time coupled with submissions-by-country-size and how keen some of the puzzle solvers are makes for a great initial traffic burst with a long tail (also mentioned on the behind-the-scenes videos).
- It naturally favoured people with an interest in these kinds of puzzles, so the selection bias in the leaderboard is inherently skewed towards a) the subset of people that are choosing to do this out of genuine personal interest and then b) the subset of those that are likely to also be interested in competitive programming-type challenges. This is natural, but I think it does make the leaderboard less relevant for the majority of participants.
- The inevitable contention of the use of 'AI' just to be on the leaderboard
Anyway, I'll just end this with a thank-you to Eric himself for designing and running this consistently for the last ten years as it's something I've come to really enjoy, the community is very lucky to have this, and I hope these changes make it possible for him to continue doing this with lower physical costs to him personally and perhaps lower stress for the participants that just enjoy the puzzles for learning and the rare opportunity to write simple programs to solve problems.
For interested watchers:
- 'Eric Wastl – Advent of Code: Behind the Scenes' - https://www.youtube.com/watch?v=_oNOTknRTSU
- 'Keynote: Advent of Code, Behind the Scenes - Eric Wastl' - https://www.youtube.com/watch?v=uZ8DcbhojOw
Edit: Typos