25 days of Clojure

For the past couple of years, I have tried to learn and evaluate one new programming language each year. One nice way I've found is by solving the Advent of Code puzzles.

Learning a new language by solving those puzzles has a few notable benefits:

In 2016, I tried Elixir. For 2017, it was Clojure. In both cases, I've started a couple of weeks in advance by actually learning the language and libraries, solving older puzzles, so I can be ready on December 1st for the new puzzles.

Here is a rough list of my takeaways, after two solid months of daily Clojure puzzle-solving:

In the end, my verdict on Clojure is whole-heartedly positive. However, the next avenue I want to explore is actually ClojureScript, both on client side (probably via re-frame), but also on server side (on Node.js).

In case anyone is interested, you can find my 2017 solutions on GitHub. You can also find a community-curated list of Advent of Code solutions in Clojure. Finally, a special mention to Mike Fikes's solutions that are in cross-platform Clojure and ClojureScript.