The Advent of Code is a yearly programming challenge, structured as an advent calendar of programming puzzles. A new puzzle unlock at midnight EST, and anyone can participate and submit solutions. The nice thing about the AoC is that you don’t have to submit code; the solutions are the output of your program, so you can do puzzles by hand, use Excel, or even train a neural network to do the puzzle for you. Anything goes, and it’s a great chance to learn a new programming language or just play with some interesting puzzles.

I typically solve the puzzles in Python first, with a C++ implementation later on. Python is a good language for rapid prototyping and testing, but I like to solve the puzzles in more than one language to force myself to think about the problems thoroughly.

My code is available on GitLab, if you’re interested in seeing the actual code implementations.