Advent of Code is an annual developers’ advent calendar with daily programming puzzles. Eric Wastl has been creating puzzles with lovely Christmas lore since 2015 and a few hundred thousands of people participate every year.

Each day, you’re presented with a puzzle. You get a text file as an input and need to provide an answer as a number or word. How you reach that solution is up to you: you can choose any technology you want.

Advent of Code is kind of a “choose your own adventure” game. You can choose how you approach it and what you want to get out of it. Some people compete in the leaderboards, others use it to learn a new language or strengthen their skills in their favourite one. I’ve been solving the puzzles in Python and writing educational explanations helping new people learn Python (see 2021, 2022, 2023 and 2024).

My favourite part of Advent of Code is the community. In pretty much every developer community I’m part of we have channels or forum threads for daily discussions and in Mastodon I’ve made a ton of new friends every year through Advent of Code. Since you can use any tool or technique at your disposal, you get to learn from others as they solve the puzzles with different technologies or in different ways.

In addition to my solution explanations, I have written quite a bit about Advent of Code in my blog: