Advent of Code has become a yearly thing for me. It’s a way to keep my algorithmic and data structure skills up, and something I look forward to every December. Over the years, I’ve used it to learn a new programming language: I’ve done editions in Elixir, Java, TypeScript, and others. But the last few years, including this one, I’ve just used Python.
Another important part of Advent of Code for me is the community: sharing solutions with people at work and posting about them on social media, interacting with other people and the way they solved the puzzles. That might actually be the most fun thing of this whole event.
I always try to get as far as possible in Advent of Code, but I do have one rule for myself: I should be able to solve the puzzle on the day it’s released. I know from experience that if I don’t, it can easily take over too much time, and in the worst case it can start to take over my life a bit. In that respect, the format this year was really nice. With only twelve days instead of the usual twenty-five, there was some breathing room in December again once the puzzles were done.
My mornings during Advent of Code follow a pretty fixed routine. The puzzles unlock at 6 AM local time for me, which gives me about an hour and a half before I need to go to work. I often say Advent of Code is the best alarm clock in the morning. Solving a puzzle wakes you up pretty quickly, and it fits nicely into my normal coffee routine. At the same time, Advent of Code does have the tendency to eat a bit too much from my sleep now and then, which is another reason why the shorter format worked so well for me this year. Luckily we did have one weekend (days 6 and 7) where I could catch up on some sleep.
This year, I wrote a blog post for each day. Writing about the puzzles added a lot to my understanding of them. Before I can explain a solution in writing, I really need to understand it myself. That’s one of the beautiful things about teaching and explaining things to other people: it forces you to learn as well. While writing the posts, I did struggle a bit with deciding what to include. Should I describe the full puzzle, including the background story that Advent of Code is famous for? Or should I mainly focus on the idea behind the puzzle, like a graph algorithm or some mathematical concept? In the end, the posts landed somewhere in the middle, with a bit of both.
Some days were quite hard. Day 9, where shapes had to fit into each other, and day 10, which involved integer programming, something I hadn’t implemented in code before. Those definitely stood out. But that’s also what Advent of Code is really about: learning new things by implementing them. On those harder days, I switched to use existing libraries instead of writing everything myself. I don’t really mind that. As a software developer, I use libraries all the time. I don’t need to implement everything by hand, as long as I understand what happens and what the general steps of the algorithm are.
This year I also consciously added AI to the mix (mainly the GitHub Copilot integration in VS Code). I wanted to see how much I could code in collaboration with AI, using it to suggest libraries or write small helper functions. The most important rule for myself was that I needed to understand all the code that was written. Used that way, AI felt less like a shortcut and more like a tool to think with. Like a developer you can talk to and discuss problems with.
There were also days that felt lighter. Day 11, for example, was a relatively clean and simple graph problem, and I got to a solution fairly quickly. Knowing how much I struggled with those kinds of problems in the past, moments like that make it clear where I came from and how much more comfortable these problems feel now.
Looking back at Advent of Code 2025 as a whole, it confirmed a lot of things for me. Explaining things is still a big part of how I learn. I’m fine using tools and libraries when that makes sense. And having clear boundaries, like a shorter event and solving puzzles on the day itself, helps keep Advent of Code fun instead of overwhelming.
Most of all, I still enjoy waking up early in December to solve a puzzle. And that’s probably the best reason to keep coming back, year after year.
Top comments (0)