Are the versions offered by OS... good to start with?

Hi, hope this simple question doesn’t make anybody uncomfortable.

I am trying to install Erlang/OTP and Elixir to learn the basics.

The OS I am using is Debian Testing and the given default versions are:

  • elixir/testing 1.10.3.dfsg-1.1
  • erlang/testing,testing 1:23.2.6+dfsg-1

As the great news today, there is the new OTP version, which is 24. Not that I want to be at the sharp edge but I just wonder if the little aged versions are still fine to be familiar with Elixir.

Additionally, I would also like to know what else I should install.
My goal is to try Elixir + Phoenix to deal with some simple projects.
Probably, some Vim plugins and Vscode extensions might be good to have in terms of code editing but I also want to know what other terminal tools are recommended.

Again, there can be a well written guide already for those who like me. If so, please feel free to share with me. Any comment would be appreciated.

It is hard to generalize because each OS is so different in this aspect. In any case, as long as the version is still official supported, you are good. For Erlang this means the last 3 major versions (= 3 years in their release cycle) and for Elixir the last 6 minor versions (= 3 years in their release cycle). More info can also be found here: Compatibility and Deprecations — Elixir v1.12.0-rc.1

4 Likes

From one Elixir beginner to another, I’ll say that one pleasing aspect of the language is that the standard toolchain is so complete & straightforward. No doubt seasoned Elixeers (is that a word?) have their favourites, but from my explorations so far it seems you can go a long way without spending much time on tooling (often a frustration when entering new dev ecosystems).

I don’t Vim, but for VSCode the language server driven ElixirLS covers the essentials well. I am finding Credo useful to proffer advice re my early butchered Elixir/Phoenix attempts. I think there are extensions to make Credo available in the editor, but I haven’t found that necessary thus far.

If for some reason you do find a need for more recent Erlang/Elixir versions, asdf seems reliable to me so far, and this is a good guide to its use.

I normally use the distribution provided erlang but compile elixir myself. elixir is easy to compile so why not.

Welcome to the community!

“some Vim plugins…”
I use vim-plug and have these line in .vimrc (actually nvim’s init.vim):

plugin “elixir-editors/vim-elixir”

let coc_global_extensions = [ “coc-elixir”, …]

It gives me whole lot of goodies when working with Elixir/Phoenix projects.

Have a nice journey. With Elixir you don’t only lean a language but a new paradigm. A new way of managing software complexity. First Functional Programming and then concurrency. It’s really cool.

I personally use asdf to manage my installations of development tools (not just erlang and elixir but a whole lot of things) since it’s just so incredibly easy, but on my production server I compile both erlang and elixir from scratch precisely set up with what’s needed.

2 Likes

Please understand my all combined reply but I very appreciate every single answer.

@josevalim
That is good to know about the match between Elixir and Erlang. I should stay with the versions to be on the same page as others. Thanks for the link!

@crispinb
Credo seems interesting and yes, I should keep it in my tool belt. Static checkers are always good to have as it saved me from various hazards and glad that Elixir also has one!
I haven’t heard about asdf before I started thinking about Elixir installation. It seems like a good tool and I can see its benefit.
Well… not sure how to call Elixir users - Elixeers? Elixirists? Elixireans? Let me leave it for Elixir masters for now :003:

@derek-zhou
That is a good option! Some languages are hard to get it from the source code but, yes, let me try! Thanks,

@reza
Thanks for welcoming!
I will keep the vim-plug and coc configuration in my dotfiles.
Right, I haven’t used any functional programming language but I always curious how it feels like. New languages (or updates for old languages) come with the concept of functional programming so I can tell the code can be looking elegant.

@OvermindDL1
One more cent for asdf! Yes, I am leaning toward to asdf and I agree that it is good to have both from scratch for my own usage.


It seems like that there are a number of ways to get the tools. Debian official repo, 3rd party package manager - asdf, and from scratch. I will get my hands dirty but actually that might be interesting to see what is the best for me.

2 Likes

I ended up getting Erlang from the Debian repository and Elixir from scratch.
Here is my script for the installation.

1 Like