Where sleep schedules go to die and off-by-one errors multiply like rabbits
This is my personal collection of Advent of Code solutions, spanning multiple years of festive algorithmic suffering. Think of it as a digital advent calendar, except instead of chocolate, you get graph traversal problems at midnight.
- 2023 - The year I learned that "simple string parsing" is an oxymoron
- 2024 - When I finally understood why everyone hates Day 19
- 2025 - Currently in progress! (Send coffee ☕)
- TypeScript - Because I like my bugs to be type-safe
- Deno - For when Node.js just isn't hipster enough
- Pure determination - The most important dependency
# Run a specific day
deno task run 2025 4
# Run tests (spoiler: they probably pass)
deno test
# Cry into your keyboard (not included in package.json)src/
├── 2023/ # The good old days
├── 2024/ # When things got serious
├── 2025/ # Current suffering
└── utils/ # My growing collection of "I'll need this again" functions
- Finish all 25 days (narrator: they didn't)
- Write clean, maintainable code (narrator: they tried)
- Get on the global leaderboard (narrator: HAHAHAHA)
- Have fun and learn stuff
- Collect utility functions like Pokémon
- Lines of utility code written: Too many
- Times I've implemented Dijkstra: Yes
- Regex patterns that made me question my sanity: All of them
- Days where Part 2 made me rewrite everything: More than I'd like to admit
- Always read the problem statement twice
- The example input is lying to you
- "This will be quick" - Famous last words
- Off-by-one errors are a lifestyle choice
- Sometimes the brute force solution is the right solution (looking at you, Day 5)
- Your first instinct is probably wrong, but your second instinct is definitely wrong too
- My code occasionally works on the first try (this is the real bug)
- Some solutions are O(n²) when they should be O(n log n) - we don't talk about those
- Day 24 of 2024 has a Python file because TypeScript and I had a disagreement
Feel free to:
- Judge my code (constructively, please)
- Suggest optimizations (I know it's slow, okay?)
- Share your own war stories from AoC
MIT - Because sharing is caring, even when it's spaghetti code
- Eric Wastl for creating this beautiful torture
- Coffee, for obvious reasons
- Stack Overflow, my silent partner
- Future me, who will have to maintain this code (sorry buddy)
"It's not a bug, it's an undocumented feature" - Me, probably, at 2 AM on December 15th
Remember: If your code works but you don't know why, that's Advent of Code. If your code doesn't work and you don't know why, that's also Advent of Code. 🎅