Articles on Elixir

Prakash Venkatraman

Prakash Venkatraman

How to Deploy Elixir Releases with Ansible

In my last post, I described how to generate a platform-specific Elixir release. Now, the only thing left to do is to put it on the world wide web. To follow along with this post, you’ll need a few things: An IP address for a remote machine (preferably running Linux) you want to deploy your

Aaron Harpole

Aaron Harpole

Idea: GenServers with Map-based state

I recently gave a talk at Empex LA in which I talked about my desire to see simplifications and enhancements to using some of the OTP behaviors offered in Elixir. In this post I’m going to explore a simple improvement to the GenServer API that would make it a little easier to work with. GenServers

Will Ockelmann-Wagner

Will Ockelmann-Wagner

A Proposal: Elixir-Style Modules in JavaScript

Moving your code towards a more functional style can have a lot of benefits – it can be easier to reason about, easier to test, more declarative, and more. One thing that sometimes comes out worse in the move to FP, though, is organization. By comparison, Object Oriented Programming classes are a pretty useful unit

Andrew Hao

Andrew Hao

Lightweight Dependency Injection In Elixir (Without the Tears)

In our last Elixir blog post, “Functional Mocks with Mox in Elixir”, we discussed how testing across module boundaries could be made easier by creating a Behaviour for a collaborating module, then utilizing the wonderful framework Mox to substitute a lightweight mock module in tests. This approach is well and good when you have very concrete

Classroom
Andrew Hao

Andrew Hao

Comparing Dynamic Supervision Strategies in Elixir 1.5 and 1.6

Let’s say you’re managing complex process state in your Elixir application and you need a way to spin up and down new processes as your app runs. This requirement is known as dynamic supervision, the ability for a supervisor to add processes to its supervision tree at runtime. This post will explain how to implement

Andrew Hao

Andrew Hao

Functional Mocks with Mox in Elixir

  If you’re like me, you came over to Elixir from Ruby and quickly found that certain development assumptions so common to Ruby (and object-oriented programming) require some adjustment in this new functional language.

Anna Neyzberg

Anna Neyzberg

Pattern Matching in Elixir: Five Things to Remember

Elixir has been getting a lot of attention these days for being such a powerful language. It is highly-concurrent, fault-tolerant, and scalable. When beginning to learn Elixir, you quickly come upon the term Pattern Matching. What is Pattern Matching and more importantly what do you need to know?

Craig Lyons

Craig Lyons

Razor: Hit the Ground Running With Your Next Phoenix Project

As the popularity of Elixir and Phoenix continues to grow, we find ourselves spinning up more and more Phoenix apps for our clients and side projects. At Carbon Five, we have a pretty good consensus on our favorite practices and tools. With each new app, we find ourselves repeating the same steps to bring in

David Hendee

David Hendee

Tech Consulting: 2016 Year in Review

As a consulting firm that’s been around for 17 years, Carbon Five has a unique perspective on trends in digital product development. In this post we look back on 2016 and reflect on what we’ve seen in the industry, and where we think it’s headed. Here are the the top five trends we saw in

Thomas Fisher

Thomas Fisher

Elixir in the Trenches

At Carbon Five, we’ve been getting excited about Elixir and Phoenix – with its promise of the productivity of Ruby and Rails without the performance penalty. We’ve used it for a few of our internal projects with great success, but we’re always wary of any new technology’s hype cycle. We wanted a bit more experience