Systems | Development | Analytics | API | Testing

Elixir Package 1.12: Phoenix 1.5 Support & Better Channel Error Handling

Great news for all the Elixir alchemists, we’ve just released AppSignal for Elixir package version 1.12.0 which adds support for the upcoming 1.5 version of the Phoenix framework, and improves in-channel error handling. If you’re not an AppSignal user yet, make sure to check out the product tour and see how errors, performance, host metrics and triggers all come together in one tool. Phoenix 1.5 isn’t here yet, but AppSignal 1.12 is ready for it.

Migrating Production Data in Elixir

When requirements change for your product, there arises a need to change not only the codebase but also the existing data that already lives in production. If you’re performing the changes locally, the whole process seems fairly simple. You test your new feature against a sparkling clean database, the test suite is green, and the feature looks great. Then you deploy, and everything goes to hell because you forgot that production was in a slightly different state.

How to Get Your Elixir Application Ready for CI/CD

In today’s post, we’ll go over what continuous integration and continuous delivery are, the benefits that come along with employing CI/CD, and some best practices that you should follow. We’ll also explore a wide array of Elixir ecosystem tools that can help you create top-notch CI pipelines. In order to experiment with a handful of the tools that we will be discussing, we’ll use a Git hooks Elixir library to execute our CI/CD validation steps, but on our local machine.

How to Use Broadway in Your Elixir Application

In today’s post, we will be covering the Elixir library named Broadway. This library is maintained by the kind folks at Plataformatec and allows us to create highly concurrent data processing pipelines with relative ease. After an overview of how Broadway works and when to use it, we’ll dive into a sample project where we’ll leverage Broadway to fetch temperature data from https://openweathermap.org/ in order to find the coldest city on earth.

Typespecs and Behaviours in Elixir

Today, we will dive into Typespecs and Behaviours. These are two Elixir features that we are ecstatic (pun intended) about. They are great examples of built-in features in Elixir that help get some of the advantages of statically typed code. Alright, let’s set the scene. Elixir is a dynamically typed language. This means that the type of each variable is not checked at compile-time, but rather at run-time. Like most things, this comes with advantages and disadvantages.