Elixir Programming: Facts to Know for Better App Development

There many well-known web development languages as Python, PHP, and Ruby that have been successfully used by developers for a long time. There has recently been brought a new technology that is being thoroughly discussed which is called the Elixir programming language.
 
Nowadays this language has become very popular, which made the efficiency and advantages of other back-end languages be called into question.

Elixir is a functional programming language that first appeared in 2012. José Valim, its creator, built it on top of the Erlang Virtual Machine called BEAM. He chose this basis for good reason. Erlang is a concurrent and productive coding language, and so he wanted his new programming language to be as well.

There is a group of people called the Elixir Core team that maintains the source code. The team consists of six members: José Valim, Eric Meadows-Jönsson, James Fish, Aleksei Magusev, Michał Muskała, and Andrea Leopardi. This fact is favorable for Elixir programming, because the team never changes the codebase until there is a shared understanding of the changes among all members.

Since 2012, there have been 96 Elixir releases. The latest stable release (version 1.7.3) was in August 2018. Even as a young programming language, Elixir already shows good results in its repository. 

What is Phoenix Framework and How Does It Relate to Elixir?

One more term that requires some clarification is Phoenix - a web development framework that is written in Elixir and is used for Elixir programming.

As with Elixir, Phoenix framework also runs on Erlang VM (BEAM). This means that Phoenix receives all the benefits of Erlang as well.

Phoenix web framework is often compared to Ruby on Rails, and not without good reason. These popular web development frameworks seem to be competitors now, as many developers try to compare them and decide which one is best.

As with all other technologies, the Elixir programming language has its pros and cons. Let’s analyze them to understand what one may face when choosing Elixir programming for their project.

Benefits of Elixir 

- Speed
- Reliability
- Concurrency
- Productivity
- Fault tolerance
- Scalability
- Clean syntax

Downsides of Elixir 

- Smaller amount of Elixir programming jobs
- Lack of Elixir developers
- Elixir is a young programming language
- Smaller community
- Smaller ecosystem

Elixir functional programming can be utilized for various projects. The main advantage of Elixir in this regard is that it doesn’t serve any particular niche. This coding language, along with its Phoenix framework, can be used to build applications for any industry.

Among the well-known Elixir adopters are Pinterest, Postmates, and Bleacher Report.

Pinterest is a popular social network for people who are looking for inspiration and motivation through pictures and videos. The app’s monthly user count is measured in millions, making the load extremely high. Pinterest used Elixir programming to implement their notification system and, as a result, its code size went down from 10,000 lines to just 1,000. Additionally, they also cut down the need for server capacity by half.

Bleacher Report is a popular US sports news website. The site was initially built with Ruby on Rails, but it eventually became clear that Rails did not allow them to scale the system any further. At that point, they decided to migrate to the Elixir language. This decision saved the company a lot of money they could have spent on servers and tools. Instead of using 150 servers with Rails, they ended up with only 5 Elixir servers. Impressive, isn’t it?

Postmates is actively adopting Elixir web development for various app systems and even describes their Elixir use in articles and contributes Elixir-based libraries to open source.

Follow this article to find out more details on [Elixir programming language and Phoenix framework](https://mlsdev.com/blog/elixir-programming-facts-to-know-for-better-app-development).