My First Impressions of Elixir

Recently, I decided to pursue a fairly new and up-and-coming programming language, Elixir. In this blog post, I am going to discuss my initial thoughts on Elixir.

elixir logo

I discovered Elixir while I was researching Backend Frameworks. From there, I started to research Elixir. Elixir is a functional programming language that runs on BEAM, which is Erlang’s Virtual Machine. You might be asking: what is Erlang? Erlang is a programming language used to build scalable real-time systems like: telecoms, instant messaging, and more. Another thing worth mentioning is that Erlang was built with concurrency, distribution, and fault tolerance in mind.

What is Phoenix?

Phoenix is an Elixir Backend Framework and is gaining popularity in the web development scene. Phoenix specifically is a Backend Framework that utilizes the MVC pattern, and provides concurrency, strong performance, reliability, simplicity, and more. I cannot speak too much on Phoenix since I just started reading through the documentation of it.

Elixir Example

What are my first impressions of Elixir?

After experimenting with Elixir, I was first blown away by the documentation-writing process in Elixir, and how the creators/contributors of Elixir all have great documentation for everything. I then discovered that Elixir lets you create these documentation HTML files through special formatted comments inserted in the code. Yes, I am saying that this page is mostly just comments from the source file, it’s very easy and really efficient. I was also very impressed by how Elixir handles enumerables, they give you the ability to do many different variations of an enumerable. I also enjoyed how Elixir is just simpler and shorter code, with it being a Functional Programming Language. One last thing that I really like about Elixir is that the community is there to help and will help you quickly. I have recently begun posting and searching the Elixir forums and everyone there is there to help, it is a great community.

Why am I learning Elixir and Phoenix?

I am choosing to learn Elixir and Phoenix, because a.) I really enjoy functional programming languages, and b.) due the promising future of Elixir and Phoenix. I hope to include more impressions about Phoenix and Elixir in my next blog post, once I have created a Web App that incorporates Elixir Phoenix into the stack.

Data Engineer