Let’s Get Functional: Learn You Some Erlang

I have two weeks to write an unbeatable Tic Tac Toe program in Erlang. Why Erlang? One, it sounds cool. Two, Erlang files end in .erl, which when said out loud (in my head) sounds like ‘dot earl,’ and reminds me of my favorite black tea in high school: Earl Grey. Third, the language is functional, and as an apprentice I need to become familiar with multiple programming paradigms. Fourth, Elixir is built on Erlang, and Elixir sounds cool.

In order to tackle this task it seemed logical that first I would need to familiarize myself with this new language. There are several options out there, including the docs, recommendations from Stack Overflow, or simply hammering away at the keyboard in the Erlang REPL. Given that I want to test drive the development of this game, I also need to learn about unit testing for Erlang. I have decided that a good way to begin is to work through the Learn You Some Erlang book and couple that with the Erlang Koans in order to get a handle on EUnit. After a bit of practice with that I will likely attempt the prime factors kata in Erlang and then be able to get cracking on building out some of the modules needed to run a proper TTT game.

I know this task will be challenging -- the last time I had to learn a new language and build TTT with it took about a month, and that was moving from one object-oriented language to another (Python -> Ruby). This time, however, I’ve had a lot more practice; I’ve got a cadre of programming colleagues; and it’s my full-time job to get it done. I’m excited for the journey.