Advent of Code (AoC) is an advent calendar for programmers, where each day of December you are provided with a new problem to solve with a language of your choice. Each year has a fantastic plot and story line you can follow along with as you solve each days challenge.
Each year Eric Wastl and a small team go about creating an event that is enjoyed by hundreds of thousands of enthusiasts around the globe. You can find out more about it on the AoC Website
Go to https://adventofcode.com/ and start your challenge!