Advent of Code 2023: Introduction

Advent of Code is a set of Christmas-themed programming problems. The problems are released daily from December 1–25, and each problem consists of two parts, with the second part not visible until the first part has been solved (usually, this is an extension that makes the problem slightly harder).

In previous years (2021, 2022), I’ve had the self-imposed restriction of using a different language for each day’s puzzle. I’ve enjoyed this restriction: it has prompted me to use all kinds of different langauges that I wouldn’t normally use. I view this restriction as encouraging me to create art with my code: rather than engineering the best solution (however you want to define that) to the problem, I’m trying to create interesting and beautiful solutions.

Unfortunately, I was busy at the start of December, so was unable to do the problems as they were released. But I’ve chosen to view this as a blessing in disguise: rather than pushing myself to solve each day’s problem before the next one is released, I can take my time to produce refined solutions. Hopefully, this will allow me to use interesting languages for more days.

I’m also going to use the lack of time pressure to write up some more detailed commentary on my solutions, which I’ll post here.