I discovered Advent of Code this year, hadn't heard of it before, but it was a lot of fun - I blogged about the experience here. I wasn't stressing to score on any leaderboards, and preferred to do "correct" solutions rather than shortcut solutions (for example, writing a small recursive descent parser for the calculator problem, rather than fidding with operator overloading in a language that allows it). Since I've been programming a fair bit in Elixir, I decided I would hone my algorithmic skills in that language by solving all problems using it.
I typically ran each of the solutions from the Elixir REPL, so to run a solution do something like:
iex -S mix
> D25.run1