Advent of Code

avatar
Name
Francisco Sandi
Published on

Three years ago, I stumbled upon Advent of Code, a yearly programming event that runs from December 1st to 25th. Back then, I wrote an article sharing my excitement about the challenge, and now, in 2024, I can confidently say that it's become an annual tradition I look forward to every year. Today marks the start of this year's Advent of Code, and I can't wait to dive in once again.

Christmas elf coding

🧩 What Is Advent of Code?

For those unfamiliar, Advent of Code is an annual event created and maintained by Eric Wastl, featuring 50 new programming puzzles released daily between December 1st and Christmas Day, like a traditional advent calendar. These puzzles are designed for a wide range of skill levels and can be solved using any programming language, making the event accessible to everyone, whether you're just starting in programming or are a seasoned developer.

Thousands of programmers from around the world participate, competing to reach the leaderboard or simply enjoying the puzzles at their own pace. Advent of Code is not just about speed—it's an opportunity to learn, practice new techniques, prep for technical interviews, and even engage in friendly competitions with coworkers or friends—all while having fun with code.

Participating in Advent of Code is free, but you can support it by spreading the word (what I'm trying to do here) or by donating to the project.

Advent of Code logo

Advent of Code - by Eric Wastl

🎁 My Experience

Since 2021, I've participated in Advent of Code every December, and each year has been a unique experience. The puzzles always start off relatively simple, with tasks that can be solved in a matter of minutes. But as the days pass, the difficulty ramps up, requiring more sophisticated algorithms, efficient data structures, and a deeper understanding of different programming concepts.

These puzzles have tested my knowledge of arrays, graphs, dynamic programming, and more. They've also been a fantastic opportunity to revisit Python, a language I don't use frequently in my day-to-day work but have grown quite fond of through these challenges. From implementing clever brute-force solutions to optimizing for performance under tight constraints, Advent of Code has been an incredible learning experience.

In these past three years, I've faced everything from pathfinding in twisted mazes to decoding encrypted messages—all with the goal of helping Santa and his Elves save Christmas. The whimsical stories make solving each puzzle even more enjoyable.

50 stars of the advent of code 2021 challenge

The 50 stars of 2021 challenge

📅 This year

This year, I'm gearing up for another round of challenges. The puzzles just started today, and I can't wait to see where the story takes us. If you've never heard of Advent of Code before or haven't yet participated, I wholeheartedly recommend it. There's no need to worry if you can't solve the puzzles right away or if you're joining late—you can take them at your own pace. The puzzles from previous years are still available, so you can practice and prepare before tackling this year's challenges.

I've also continued to share my solutions on GitHub, along with a Python code base structure to help others get started. Feel free to check them out if you're interested, but I do encourage you to try solving the puzzles yourself first—it's so much more rewarding that way.

👨‍💻 Join the Challenge!

Whether you're new to coding or an experienced developer, Advent of Code is a great way to challenge yourself, learn something new, and have fun during the holiday season. Just sign in on the Advent of Code website and get started! There's something uniquely satisfying about collecting stars each day as you solve puzzles and progress through the story.

I hope to see some of you joining in and maybe even sharing your own experiences. Let's save Christmas together, one puzzle at a time!

advent of code tree

Comments (0)

Any thoughts to share? 🤔


Previous Article

The Coding Interview

Thanks for reading! Feel free to keep exploringmore articles