Juha-Matti Santala
Community Builder. Dreamer. Adventurer.

Advent of Code 2024: How to write notes as a developer

Advent of Code 2024 kicked off yesterday with day 1. Over the past couple of years, I have written educational / blog style commentary on my solutions. I wanted to experiment with something new this year.

As I’ve lately been writing about and talking with people about taking notes as a developer, I decided to use this year’s Advent of Code as a showcase of how you can start building your own technical knowledge base.

Locally, I’m building this knowledge base as a Obsidian vault that I’m converting into Advent of Code 2024 Digital Garden website with Quartz. I write daily solutions in Python with explanations and educational content, combined with technical notes about things I learn or that are relevant to puzzles at hand. My hope is that by the end of the month, I’d have a nice showcase of puzzle solution notes and main notes about different technical topics.

Building your own technical knowledge base

It can be intimidating to start a technical knowledge base. Where do you even start? Do you sit down one day and record everything you can think about? Probably not a very good strategy.

Advent of Code is a great, self-contained place to start. The notes you’ll end up writing will be helpful in future Advent of Codes but also in your future as software developer because you’ll inevitably encounter and learn about things that are basic software development skills. And you encounter them in an isolated environment and in bite-sized chunks which can make writing notes easier compared to tapping into the unlimited knowledge in the universe.

I’m inviting you to join! Pick any note system your comfortable with (pen and a notebook is good too) and while you solve the puzzles, write down what you learn and aim to make them in a way that would be useful in the future. It might even inspire you to start a tech blog to share them and you’ll have a great list of topics ready to write about.

Over the years I have written a lot of notes during Advent of Code already and will be relying on them with my solutions but this knowledge base I’m sharing will start from scratch to keep it easy to follow. In real life, I recommend keeping your notes all in one place rather than splitting them into an Advent of Code specific set.

Follow along

You can subscribe to an Advent of Code Digital Garden specific RSS feed, follow me in Mastodon or manually visit the site to make sure you don’t miss anything.