A year of Elixir

It’s coming up to a year since I picked up Elixir. I instantly fell in love with it, and it inspired me to do many things I may not have done otherwise - start writing blog posts (it pushed me to help start this Labs blog!), contribute to open source, and attend more meetups and conferences than any previous year. I’ve never felt this connected with any other developer community before and I feel it’s been a massive factor in my enjoyment of the language. Elixir LDN takes place this week, so I thought it’d be interesting to reflect on my experiences and what I love about the Elixir community.

One of my first real introductions to Elixir was actually last year’s Elixir LDN conference - a pretty small event, but the people attending were excited to see their community grow. It was great to see both veterans of industry, such as Robert Virding (co-inventor of Erlang), as well as people who were sharing their first success stories with Elixir (Marni Cohen, Gabriella Chronis). Ju Liu blew everyone away with his live demo of Elixir running on Raspberry Pi’s. It was a great introduction to the language and community alike.

After spending some time with the community, I started recognising names. The guy who helped me with a pull request to the AWS library was interviewed on the Elixir Fountain podcast, and he also spends a crazy amount of time helping people on Slack (thanks Ben!). Baris, an old colleague of mine, runs the Elixir London meetup. The community is at a fantastic point in time where it’s big enough that you can still discover new people and new ways of solving problems, but small enough that you can easily become a part of it. My blog post earlier this year made the rounds on a few Elixir newsletters and it was thrilling to see many people who I was able to help, and who then reached out to ask more questions or just thank me.

My team was happy for me to experiment with Elixir - I started by rewriting one of our small microservices into it - and while there were bumps in the road, it was much easier to pick it up due to the excellent documentation, helpful error messages and - as mentioned above - the extremely helpful Elixir community, be it on the forums or Slack. The project was successful, it runs well and the code base is easy to reason about. Since then we’ve recruited another two developers who are excited to use Elixir in production, use it where it makes sense and share their experiences with the rest of the company.

In the last year I’ve attended three Elixir conferences, a few of the local meetups and I idle in the Slack where the community grows every day - but I feel that a lot of the success of the culture and spirit is due to José Valim, creator of Elixir. His positive attitude literally acts as a role model (“José is nice, so we are nice” - while the saying might have originated from Ruby, it’s certainly true in case of Elixir too). I’ve had the chance to see him speak and ask him some questions in person - he’s very humble and down to earth, but clearly very passionate about his work. I recommend you watch his keynote from this year’s ElixirConf EU where he talks about Elixir’s history.

I think it was José who said that the first few years were focused on establishing the language concepts, helping create books and online resources to help people learn, and now that everything is in a very stable place, it’s a good time to convince companies to pick it up. I’m thankful that uSwitch allows us to work with any tools and languages, if they make sense, so it was relatively easy to get started with it and I’m sure it’s made me a better developer. Now, almost a year later, I’m proud that we’re sponsoring the Elixir LDN conference and I can’t wait to speak to people there and meet some new faces!

I hope you feel encouraged to create new content, participate in the conversations, contribute to open source libraries or create your own. It really is a time where you can make an impact. It’s up to us - the developers - to encourage our employers and coworkers to try great programming languages, such as Elixir, and see where it might be a good fit!