Every year since 2015, a team of dedicated individuals led by Eric Wastl organizes an online programming challenge called: Advent of Code. The concept is simple yet brilliant: from December 1st to 25th, every day a new small programming exercise is published on the adventofcode.com website. Participants get points for each completed exercise.
This event is great to start learning a new language as the exercises are small and simple, at least for the first few days, and can be completed using any programming language. It is gaining traction every year, including more and more people implementing the challenges in Ada/SPARK.
This year we want to join the fun, and bring a little bit of extra motivation for a good cause. For each person completing one of the Advent of Code challenges using the Ada programming language, AdaCore will donate $10 to the Ada Developers Academy, up to a total of $5,000. And for those willing to go an extra mile, AdaCore will donate $20 if the solution is implemented in SPARK with at least proof of absence of run-time errors (a.k.a. Silver level).
How to participate?
A special thread on the ada-lang.io forum was created for anyone to get their solutions registered. Once you have completed an exercice, head over to that thread and post a message with a link to the sources of your solution using the following format:
[<pseudonym>][<day>][<Ada or SPARK>]<link to solution source code>
For instance, if I solve the 3rd day problem using Ada:
And the 5th day using SPARK:
If you prefer, you can just have one post and edit it every time you solve a new problem.
You don’t have to solve all the 25 problems
You don’t have to solve the problems on the day they are submitted
You can switch back and forth between Ada and SPARK
You don’t have to be a beginner in Ada/SPARK. Advent of Code is great for learning new languages but it’s also fun for experienced programmers
Early January we will count all the submissions, and donate the corresponding amount to the Ada Developers Academy.
Happy hacking season!