Skip to content

Matt Hagner

One Hundred Days of Elixir - Day 000

Elixir2 min read

Last year I did 100 days of code around the New Year and really enjoyed it. I spent a majority of my time going through the (Rust) Book, and programming in Rust. I didn't do a great job of chronicling my adventures.

This year I would like to spend some time exploring Elixir and Erlang, and want to share my experience with others who might be interested.

I've done some initial exploration, and already purchased some material that I plan on going through over the course of the 100 days including Elixir in Action, Programming Phoenix, and Designing Elixir Systems with OTP. There is also a lot of great free resources on Elixir like Elixir School, the Alchemist Camp YouTube channel, and the Elixir getting started guide.

I won't be going through all of the materials exhaustively over 100 days, but instead want to start by diving into the language itself, building some small applications, maybe spending some more time with Phoenix, and (hopefully) gaining a deeper understanding of OTP.

Why Elixir?

I've been contemplating what I would like to focus on in the new year for a while. I knew it was going to be a functional language, and that the purpose was to explore something entirely different than what I write at work every day. Some of the languages that ended up on my list included Clojure, Haskell, and OCaml. I've done at least a small amount of programming with all three languages, but Elixir has intrigued me the most over the past year.

Elixir is a functional programming language that focuses on the 20% of functional programming that gets you 80% of the productivity. It leverages the Erlang VM and a lot of Elixir code utilizes OTP which allows fault tolerance and scalibility that is hard to rival without making a rats nest of code.

It has pattern matching (which I love), a pipe operator (which I love), and like the rest of the languages on my list, syntax that is pretty much nothing like JavaScript.

Most importantly, the thought of writing Elixir excites me! Hopefully during my time with Elixir I can find a few things to bring back to JavaScript.

What to expect?

I'm not going to be committing to writing every day for 100 days because that sounds a bit like a chore to me. Instead, when I come across something I find interesting, a pattern I particularly like, or something that I struggled with, I'll write up something informal with code examples when appropriate.

The goal is not to have a hundred 1,000 word blog posts at the end of my journey, it's to give myself some freedom to explore new things, and share that with others.

If you're interested in doing your own 100 Days of Elixir, let me know on twitter.