Skip to content

Bambii556/Advent-Of-Code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎄 Advent of Code: The Annual December Debugging Marathon 🎄

Where sleep schedules go to die and off-by-one errors multiply like rabbits

What is this madness?

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.

🏆 Years Conquered (or at least attempted)

  • 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 ☕)

🛠️ Tech Stack

  • 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

🚀 Running the Code

# 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)

📁 Project Structure

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

🎯 Personal Goals

  • 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

🤔 Fun Facts

  • 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

💡 Lessons Learned

  1. Always read the problem statement twice
  2. The example input is lying to you
  3. "This will be quick" - Famous last words
  4. Off-by-one errors are a lifestyle choice
  5. Sometimes the brute force solution is the right solution (looking at you, Day 5)
  6. Your first instinct is probably wrong, but your second instinct is definitely wrong too

🐛 Known Issues

  • 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

🤝 Contributing

Feel free to:

  • Judge my code (constructively, please)
  • Suggest optimizations (I know it's slow, okay?)
  • Share your own war stories from AoC

📜 License

MIT - Because sharing is caring, even when it's spaghetti code

🙏 Acknowledgments

  • 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. 🎅

About

My Personal Advent of code Repo

Resources

Stars

Watchers

Forks