On May 21st I attended the first annual Empire City Elixir Conference in Lower Manhattan, having learned about it through the Elixir NYC meetup. I’ve been learning about Elixir for a little over a year, and it was extremely heartening to see the interest level the conference represents. I came away from the ten talks that made up the conference with a coherent picture of the goals of the community surrounding the Elixir language and tools.
First up was Bruce Tate with his talk titled The Climb - Experiencing the Rise of Elixir from the Inside. Bruce is the notable author of the "Seven Languages in Seven Weeks" books, and several Java books including "Bitter Java". He encouraged the attendees and the Elixir community in general to continue being positive and supportive saying "We are all sherpas". One of the concepts that surfaced early in the talks, and continued popping up all throughout the conference, was how mature the tooling around Elixir is, emphasizing the ExUnit testing harness and ExDoc. Bruce and later on Brian Cardarella in his talk Giving Back emphasized that this support is so strong because of how passionate the community is and encouraged attendees to keep up that passion and stewardship.
Several of the talks concerned different approaches to production release, which can still be a bit of a difficult proposal when trying to take advantage of the all the benefits of the Erlang VM. Brandon Richey covered the introduction of Elixir into his own workplace and how to educate and build support, while Pete Gamache covered what to do once you need to keep a server running explaining his own use of the tool edeliver. Later on Monica Hirst explained how Society of Grownups uses AWS CodeDeploy to allow for push-button deploys of Elixir applications across multiple environments.
Plataformatec co-founder George Guimaraes took the stage to talk about some of the practical async strategies that are commonly used in Elixir, including
Task.Supervisor, and using external queueing solutions like Verk.
One of the most technical talks was Journey to the Center of the BEAM given by Brian Mitchell, covering the compilation process from high-level Elixir to BEAM assembly and how to use the Erlang compiler to see these transformation in your own code.
Cameron Price convincingly described learning Elixir as learning its "Micropatterns", and Bryan Weber explained how Elixir's approaches to code generation could be used to make your own life easier, or even to help usher in the rise of the machines with approaches to self-writing code.
The keynote/capstone address, from Francesco Cesarini, was an in-depth description of applying scalable server architecture techniques, covered in-depth in his newly released book "Designing For Scalability with Erlang/OTP".
The conference as a whole was very well run by a dedicated staff, especially MC Desmond Bowe and I look forward to next year, and even more I look forward to seeing how I can help contribute to the Elixir community in the coming year.
Below are the decks from the talks, as I find them:
- Concurrency + Distribution = Scalability + Availability, a journey architecting Systems on BEAM
- Async Jobs in Phoenix
- The Climb - Experiencing the Rise of Elixir from the Inside
- Giving back, building your first package
- Real World Elixir Deployment
- Letting the Phoenix Fly in Production
- A Journey To The Center Of The BEAM
- Micropatterns: Learning to reach quickly for the right tool
- The Journey to Elixir In Production At Scale
- Code Generation in Elixir