Meet elixir development environment
Elixir development environment, and more specifically Elixir / Phoenix programming, has been part of Prograils for several years. We strive to keep the setup process simple and consistent for each developer, making it easy to add new members and keep the same setup for everyone.
Programming languages are like hand tools. You can use a screwdriver to hit a nail, but that doesn’t mean it’s the brightest idea.
We understand this and that is why we need a solution that supports multiple languages on our computers. Even though we all do our best to keep all versions up to date (see the Prograils manual for details), in the end you will always find a project that does not have the latest language versions.
That is why we chose asdf as our solution for installing languages on programming machines.
Running the application
When setting up any project from the elixir development environment (including the Phoenix web project), I recommend running it as an Umbrella app.
This approach allows for a better separation of responsibilities between services, and also speeds up compilation times in the development environment. The downside is that you have the next stage of learning in your Elixir journey and more blueprints to add to your codebase.
Building a production version in Elixir is now easy. Version 1.9 of the added language Releases as part of the language core. There are many different options for a server release – you can do it yourself by copying the release and running it remotely, Docker, heroku packages, or via a dedicated library.