I'm the first to admit that I love technology, and I really love new technology. However, that isn't why I love working with Elixir. I would like to show it to you, so you will get excited about it too. What I find most exciting about it is the problems that Elixir helps me solve. It’s an enabling technology built on top of the Erlang VM. Elixir allows me to really focus on the business problems that I'm trying to solve. I can take for granted, to an extent, the tough technological problems around concurrencies, scalability, and fault tolerance. I reap the benefits of Elixir’s abilities just as long as I work with design patterns that are accepted in that language and within the Erlang VM. I would like to show others how to take advantage of those.
The problems that Elixir allows me to solve, specifically on the backend of the webserver stack or of a datacenter server architecture, is just mind boggling at times. The amount of complexity that can be built with simple, easy to tear apart pieces of an overall software project. Functional programming makes things significantly easier to reason. It takes things and put them into building blocks the way that people that have been programming for years have always tried to think about their programming problems. It's that very area that has become muddy in the area of object-oriented programming. Especially as we talked about building software architecture at scale and we talked about trying to really tackle problems around concurrency.
Elixir is an incredibly powerful language with an incredibly rock solid foundation of Erlang. Many of the problems that I’ve have had to face with other technology stacks such as Node.js and Java2EE simply melt away and that is freeing. It’s exciting to be able to really zero in on what I want to work on rather than having to focus the problems that the technology that I’m using presents me with. As you’ll see, you can take the small bit of code that you write for one server, expand that out to multiple servers, and immediately gain resilience and scalability with very little rework whatsoever. I invite you to join me in this adventure in learning Elixir.
Come check out the course I'm building - Elixir 101 - Elixir for Everyone.