★ Python Walkthroughs & Tooling
Dazbo's Advent of Code
Using Advent of Code to sharpen idiomatic Python — testing algorithms, exploring libraries, and sharing practical, step-by-step walkthroughs.
Browse Solutions by Year
From 2015–2024, Advent of Code ran 25 days (50 ★); from 2025 onwards, it runs a focused 12 days (24 ★). Choose standalone Python scripts + walkthroughs or all-in-one Google Colab notebooks below.
Ready for December 2026 with Python 3.13+, uv run aoc, and streamlined daily walkthroughs.
Inaugural 12-day event solved end-to-end with aoc_common, intervals, geometry, and graph search.
Full 25-day narrative and executable code combined into a single cloud-ready Jupyter Notebook.
Complete 25-day notebook tackling Shoelace areas, Z3/SymPy linear algebra, and min-cut graphs.
Deep-dive walkthroughs covering BFS pathfinding, cube wrapping, 3D obsidian voxels, and state pruning.
Complete 25-day series rich in Matplotlib visualisations, Dijkstra shortest paths, and recursive packet parsing.
All 25 working Python solutions indexed by algorithm, PEG parsing grammar, and binary bitmasks.
Selected walkthroughs featuring cyclic linked lists, coordinate sorting, and regex parsing.
First notebook experiment pairing puzzle explanations, inline outputs, and code in one place.
Full 25-day archive covering Assembunny VMs, MD5 hash mining, and multi-floor BFS mazes.
Where Advent of Code began: all 25 inaugural puzzles, Conway grids, logic gates, and TSP loops.
The Python Journey
Whenever a puzzle relies on a technique worth keeping in your toolkit — Dijkstra’s algorithm, itertools combinatorics, regex extraction, or 2D grid coordinates — my day walkthroughs link straight into a standalone chapter of The Python Journey. You can work through them as a curriculum or jump directly to the topic you need:
Set up Python, Visual Studio Code, virtual environments, and clean development habits from scratch.
Reusable Code (aoc_common)
Shared Point, Grid, and Vectors abstractions, binary search, interval merging, and puzzle validation.
Navigate unweighted mazes, weighted cost maps, and heuristic search spaces without reinventing the queue.
Graphs & NetworkXModel dependency trees, connected components, cycles, and visual network diagrams cleanly.
Permutations, Sets & ComprehensionsExpressive itertools pipelines, set algebra, and generator expressions built for puzzle speed.
Solve linear equations and trajectory intersections algebraically, and debug spatial grids with Matplotlib.
Jupyter Notebooks & ColabCombine executable Python cells, rich telemetry, and narrative notes interactively in the browser.
Encrypting Inputs (git-crypt)
Respect AoC's input-sharing rules in a public repository using transparent git-crypt encryption.
Browse all 39 reference guides on the Python Journey index.
What is Advent of Code?
Created by Eric Wastl every December since 2015, Advent of Code releases a fresh two-part programming puzzle each day. Part 1 introduces the scenario cleanly; Part 2 usually turns up the scale — forcing you to replace brute-force nested loops with sets, caching, modular arithmetic, or graph search. You can write solutions in any language, run them in any environment, and revisit every past event at any time of year.
If you’d like to run my solutions locally against their built-in sample inputs right away (without needing an AoC cookie or decryption key), clone derailed-dash/Advent-of-Code, install the environment with uv, and use the bundled aoc CLI:
git clone https://github.com/derailed-dash/Advent-of-Code.git
cd Advent-of-Code
make install # hydrates Python 3.13+ virtualenv via uv sync
uv run aoc list # inspect solved years, progress, and script/notebook formats
uv run aoc run 2025 1 -s
Every walkthrough page here maps directly back to the runnable files under src/.
More From Dazbo
Away from December puzzles, I write about Python tooling, AI engineering, cloud architecture, and pragmatism in delivery across my personal site and developer blogs:
If you’d like to dive straight into some of my longer-form Medium writing:
Coding, Python & Generative AI 8 articles
- Advent of Code: the Best Way to Learn to Code!
- Solving Mathematical Problems in Python with SymPy
- Finding the Coefficients of a Quadratic with SymPy
- Noob's Guide to Creating a Pip-Installable Distributable Python Package
- Six Ways to Run Jupyter Labs and Notebooks
- YouTube Video Downloader with Generative AI and Python: Run Anywhere, Transcribe and Translate
- Downloading YouTube Videos, Extracting Audio, and Generating Transcripts with Python and Jupyter Notebooks
- Building a Serverless Image Text Extractor and Translator Using Google Cloud Pre-Trained AI
Google Cloud, Terraform & Enterprise Architecture 12 articles
- Architecture Documentation: Where to Draw the Line
- Compelling Pitches and Arguments for any Scenario: Top Down Thinking (TDT)
- How to Accelerate Cloud Migrations at Scale
- Tips for Passing the Google Professional Developer (PCD) Exam
- Create a CI/CD Pipeline using GitHub Actions and Google Cloud
- My Series on Google Cloud Adoption: from Strategy to Operation
- Google Cloud Landing Zones with Google Cloud Foundation Fabric FAST
- Design your Google Cloud Landing Zone
- Develop Serverless Applications on Cloud Run: Google Cloud Challenge Lab Walkthrough
- Optimise Costs for Google Kubernetes Engine: Google Cloud Challenge Lab Walkthrough
- Terraforming an Application on Google Cloud
- Google Cloud Next Summaries, and Announcements