"Porting" Your Microservices to Elixir
# Abstract My boss told me to port our microservices to Elixir. I thought they met to use Elixir ports to run it all in an twisted way. Now, we take a deep dive into ports via a silly story & will learn the ins, outs, pros & cons approaching them in a way you might’ve never considered (because its absurd). # The Main Entree This talk is about examining a useful context via a lens of absurd application. Even if you have never used a Port in Elixir, after this the goal will be to understand the core concepts enough to leverage them for a nontrivial (and hopefully actually useful IRL, unlike what we do in the talk) functionality if the day comes that it is needed. We begin with first principles and basic application, and end up with a reasonably complex interface to several other systems. # The Basics of Ports Sometimes it could be beneficial to implement parts of a system outside of Elixir/Erlang. In this talk we will take a deep dive into the concept of Ports. Sometimes Elixir/Erlang may not be best suited for the job, but we still have them as the core of our systems. Here we will investigate some use cases that take us from the simplest of levels and set up a bigger exploration into more complicated use cases. # Port All of the Things You work in a cutting edge shop. Its time to join the bleeding edge and port your Microservice Architecture™ to Elixir and Erlang. In a hilarious bout of misunderstanding, the order of “port this to Elixir” has been taken in as “run the old code via ports”. We are about to take this as far as we can and see what happens, and in the meantime, though this should never truly be done we will see a lot of the benefits and losses of using the implementation offered through them. # Our Absurd System: “Porting” Microservices to Elixir Throughout the talk, we will organize a system running many languages underneath Elixir through a hilarious series of misunderstandings. This will includes regular ports as well as NIFS. Performance alongside usability will be examined.