We all know Erlang as a language has certain limitations (for better or worse). It also makes you write a lot of boilerplate code. Sometimes we can put up with it, sometimes it's just annoying.
I've been looking into different meta-programming techniques to be used with Erlang. I've been using parse transformations a lot (and gave talks about them). But that wasn't enough for me. I've tried investing some time in Joxa (joxa.org, which is awesome, btw), but I found that it is a little bit more of a Lisp than Erlang. So I continued my search, and took another look at Elixir (elixir-lang.org), which I dismissed last year. It went through quite a transformation and, in my opinion, became a decent meta-compiler for Erlang that's not too far away from Erlang itself.
In this talk I'll show how you can program Erlang in a much more productive way — and common pitfalls to avoid.