Claim your CPD points
Advent of Code (AoC) is a freely-available coding challenge presented in the form of an advent calendar: on December 1st, we discover that our help is needed on a festive mission (for example, ensuring that Santa's reindeer have enough magical energy to deliver all the presents). Each day until the 25th a new puzzle is released, and only upon successful completion of all puzzles is the savvy programmer able to save Christmas!
With over 300,000 participants last year, AoC has gained popularity among software engineering and data science communities, but has received little attention from the actuarial profession. The challenge is language-agnostic, so can be attempted using any of the most popular languages applied in actuarial work including Python, R and even VBA/Excel.
Unlike books, where problems are generally well-posed from the beginning, AoC closely resembles 'moving goal posts' in a real workplace via a clever twist. Each day, the puzzle is split into two parts, with the second part only released to users once they have completed the first. This may be familiar to actuaries who have seen out-of-scope work added to a project. The two-part puzzle format encourages best practices in programming:
Participants practice skills needed in actuarial work such as parsing input (and coping with unhelpful formats) and working with arrays, strings and regular expressions.
AoC can help actuaries work on computer science and coding fundamentals, which are not always prominent in our training. This includes:
Although AoC puzzles remain available after publication, the best time to participate is December, when many people will be solving the same problems simultaneously. More importantly, users will share test cases, hints and even personalised advice.
Doing small puzzles everyday creates the opportunity for repetition and reinforcement of learnings from earlier in the challenge, which is difficult to achieve in the workplace when actuaries may be working on longer projects or using others' code. AoC is uniquely positioned to allow users to learn at their own pace while meeting the needs of both expert and inexperienced coders.
We encourage everyone to join in - at least on Day 1!
Nevertheless, there are caveats: difficulty varies wildly, later puzzles demand a significant time commitment (>1hr/day), and some puzzles have little relevance to actuarial work. You will benefit most from AoC if you already have some experience with coding.
Puzzles are arranged in approximate order of difficulty however, individuals will have different experiences based on their background. A new puzzle is released daily to all users regardless of their success on previous days. So, you could read all the puzzles and only attempt those which seem most appealing.
AoC offers a leaderboard but we recommend solving purely for fun; leaderboards can create unhealthy competition, especially the global board which is dominated by experts in competitive programming. They can finish a puzzle within minutes using shortcuts and specialised libraries. This is an unreasonable goal for most users - instead, we recommend that the competitively-inclined actuary challenge themselves with additional tasks like using as many languages as possible or building visualisations of solutions.
Whether you are looking for something fun and festive over the holidays or a challenging learning opportunity, put your technical skills to good use and help Santa save Christmas !