Wednesday, December 7, 2022

Are you ready to solve Christmas-themed programming puzzles? Advent Of Code 2022 is live!

Vibin' with AoC 

I came upon a piece by Herbert Daly a few days ago when browsing my LinkedIn feed. I read the description of a puzzle in the photo that was uploaded with the post since it was intriguing. The puzzle's focus on the holiday season and Christmas kept me interested. I dug more after that and discovered Advent of Code (often referred using its acronym, AoC). I just felt good about AoC and the theme behind it. It is the sole reason behind my inspiration to reactivate this blog after it had been dormant for months.


What is Advent Of Code? 

Advent of Code is series of Christmas-themed programming puzzles that is released one at each day between December 1st and December 25th. Each puzzle consists of two parts; the second portion, which is typically a setting established by the first half of the puzzle, is disclosed after the first part has been solved. You receive a Star ⭐ for each part of the puzzle you successfully solve. Over the course of a season, up to 50 stars can be earned. You can use any programming language of your choice to solve the puzzles. A point system is available to score the players according to how long it takes them to finish the puzzles. On a leaderboard that is accessible through the website, the top 100 players are distributed. There's even a wonderful Advent calendar that list the days 1 to 25 arranged from bottom to top. A Christmas-themed artwork is hidden behind a sequence of @'s and #'s on the Calendar. As you complete a puzzle each day, the artwork is exposed one piece at a time.

Advent Calendar for 2022


Eric Wastl introduced Advent of Code on December 1, 2015. The eighth edition, Advent of Code 2022, is now available! The website still allows the users to solve the puzzles of previous years. 

What is in it for Mainframers?

When I first entered the website of AoC, I had a feeling of familiarity with the look because it appeared like a Mainframe screen. I (selfishly) assumed  that the site and theme were designed for Mainframers, but I was mistaken. The puzzles are available to everyone, including those with limited programming experience and problem-solving abilities.

Nonetheless, AoC has a lot to offer for Mainframers.  All the puzzles can be solved using Mainframe programming languages such as COBOL, REXX, ICETOOL/DFSORT, and so on. There is even a private leaderboard where you may compete with other Mainframers. Continue reading to learn how to join up for AoC and the exclusive leaderboard for Mainframers.

Signing up for AoC and the exclusive leaderboard for Mainframers

To begin solving the puzzles, you must first register with AoC. You may sign up using either of the following accounts by clicking here.
  • GitHub
  • Google
  • Twitter
  • Reddit 
questionnaire must be completed in order to join the exclusive private Leaderboard for Mainframers. After submitting the form, a secret code will be sent to you through email. Simply copy the code and go to https://adventofcode.com/2022/leaderboard/private to join the board. 

Herbert Daly and Henri Kuiper, two Mainframe enthusiasts, maintain the private leaderboard. They've even stated that some folks at MicroFocus will be supporting the private leaderboard (again!) by providing some awesome swag and prizes to those who solve this year's tasks using the language that runs the world: COBOL.

"HELP will always be given at Hogwarts to those who ask for it" - Albus Dumbledore

If you get stuck when solving the puzzles, feel free to join these Subreddits and ask for hints.
I've started adding the code for each day's puzzle to my Git repository. At the time of writing this post, code till Day 6 puzzles are available on the Git. You may use them as a reference material.  

I even intend to write a post every day until December 25th to walk through my approach to tackling these puzzles. 

So, what are you waiting for 🤔? See you (your name) on the Leaderboard 👍

If you have any queries about the content of this page, please leave them in the Comments area below.