Advent of Code is a collection of delightful (or infuriating—depending on how you look at them) programming puzzles. A new set is released every year on December 1st by the creator Eric Wastl. The puzzles can be done in any programming language or even with pen and paper, because the answer is always one line of text (usually a large number). There are two parts to each problem, the second adding a twist on the first but sharing the same input.

Since it’s an “advent,” a new puzzle unlocks every day until December 25th. The most fun to do the event is with a group of friends on a private leaderboard where you get more points for completing the day’s challenge quicker. Also, many people pick a new unfamiliar or fun language to do the problems in, because the all the solutions are fairly short and the language you pick is never the bottleneck—it’s always the algorithm and how you approach the solution.

The biggest challenge is to get to the end—the problems get progressively more difficult, and many people simply drop off, unable to keep up the commitment. I’ve been participating since 2019 but never finished all the problems for a year. This year It’s Different™ and I’ve set enough time and energy to see the series through to the end.

In 2023 I’m doing Advent of Code in Go. The main reason is that I’m using the language for some of my other projects and want to become proficient. I’m also uploading all my solutions to a GitHub repository.

There will be a post for every day of the event, linked below. I’m certain that as the event progresses, it will give me many topics to dive into later, so I’m really looking forward to that.

December 25 update:

I’m done for now! The puzzles have been hard but manageable, and except for the final few days I never got completely stuck and was able to Google my way out of the problem. I’m down three stars: part 2 for day 21, part 2 for day 24 and the final star that you get automatically for completing everything else. I aim to complete the event later when I write up the details of each day.

My times for each day as of now (December 25) are below:

      --------Part 1--------   --------Part 2--------
Day       Time   Rank  Score       Time   Rank  Score
 25   06:53:35   5224      0          -      -      -
 24   06:40:09   6610      0          -      -      -
 23   06:46:34   7115      0   13:22:44   6672      0
 22   09:36:20   7386      0   09:45:19   6315      0
 21   08:15:32  12570      0          -      -      -
 20   07:36:14   8496      0   11:52:09   7224      0
 19   06:26:16  11864      0   07:48:25   6916      0
 18   11:25:01  15089      0   11:36:01  10003      0
 17   13:47:09  11434      0   13:52:16  10277      0
 16   07:39:33  13993      0   08:09:28  13402      0
 15   05:34:48  19150      0   06:14:58  15717      0
 14   12:09:51  24071      0   14:26:54  18536      0
 13   07:17:17  15732      0   08:38:36  13469      0
 12   02:51:20   8530      0   19:17:54  14953      0
 11   11:57:09  29449      0   12:40:04  27999      0
 10   06:42:12  19290      0   08:43:30  11406      0
  9   04:43:12  20460      0   04:47:09  19562      0
  8   06:11:22  32079      0   07:49:37  23532      0
  7   07:45:46  30345      0   08:26:21  25698      0
  6   07:45:34  39815      0   08:24:59  40088      0
  5   17:56:32  60799      0       >24h  47386      0
  4   06:31:44  44779      0   07:13:23  36487      0
  3   08:32:24  39629      0   09:00:57  32585      0
  2   07:52:42  48752      0   08:06:11  45969      0
  1   08:49:54  70150      0   12:35:35  64428      0

Every day covered

(links will appear when the posts are published)

  1. Trebuchet?!
  2. Cube Conundrum
  3. Gear Ratios
  4. Scratchcards
  5. If You Give A Seed A Fertilizer
  6. Wait For It
  7. Camel Cards
  8. Haunted Wasteland
  9. Mirage Maintenance
  10. Pipe Maze
  11. Cosmic Expansion
  12. Hot Springs
  13. Point of Incidence
  14. Parabolic Reflector Dish
  15. Lens Library
  16. The Floor Will Be Lava
  17. Clumsy Crucible
  18. Lavaduct Lagoon
  19. Aplenty
  20. Pulse Propagation
  21. Step Counter
  22. Sand Slabs
  23. A Long Walk
  24. Never Tell Me The Odds
  25. Snowverload