It’s (almost)December, which means it’s (almost)time for Advent of Code!
If you’re not familiar, here’s a quick synopsis, courtesy of @gadgetgirl:
More information can be found on their website.
This isn’t the first time we’ve done this, here are links to the previous years’ discussions:
I’ve set up a private leaderboard which can view if you’re logged in and joined. You can be a member in more than one, so don’t worry about that, but be aware that your name will appear as it does on the Advent of Code website. In other words, it could show your real name. I login via GitHub for this group, and via Google for work. If you want to join this leaderboard, the code is 256706-bb2717ff
. If you’ve joined in a previous year, you don’t have to join again.
I’ll tag some others that have been active in years past:
Please feel free to include anyone else you think my be interested.
I set up a gitlab repo in 2018, and I am inconsistent at updating it, but feel free to follow along. My goal is for it to be a full CI setup so that I can check in code and it builds it, tests it, and then runs it. It’s mostly working at this point, so check it out if you’re interested in that sort of thing.
I had ambitions to create a yeoman template for my decidedly opinionated way to approach this event, but it’s stalled and unfinished at the moment. Maybe if I can keep up this year, I’ll be motivated to finish it up. I’m likely biting off more than I can chew this year, though, so I’m making no promisies.
I did 2018’s puzzles in Python (and C#?) and I did 2019’s puzzles in C#. I’m pretty sure I only did 2020 in Python, and definitely did 2021 and 2022 in Python. I’ve used PyCharm in the past, but switched over to Visual Studio Code since 2021, and I’d recommend it for anyone who hasn’t tried it yet, both for Python as well as many other uses.
One of the things I like about Advent of Code is that it is language agnostic, so you can work in whatever you’re most comfortable with. The puzzles are oriented around programming, but people have been known to use spreadsheets in the past.
Feel free to post questions and solutions in this thread, but please be kind and blur out any spoilers.
Please note that this year they’ve added a request regarding AI/LLMs:
Can I use AI to get on the global leaderboard? Please don’t use AI / LLMs (like GPT) to automatically solve a day’s puzzles until that day’s global leaderboards are full. By “automatically”, I mean using AI to do most or all of the puzzle solving, like handing the puzzle text directly to an LLM. The leaderboards are for human competitors; if you want to compare the speed of your AI solver with others, please do so elsewhere. (If you want to use AI to help you solve puzzles, I can’t really stop you, but I feel like it’s harder to get better at programming if you ask an AI to do the programming for you.)
It’s pretty much their same policy regarding streaming your solutions.
There’s also a very active subreddit, but I probably don’t need to tell you that.