The official release announcement can be found here: https://elixir-lang.org/blog/2020/10/06/elixir-v1-11-0-relea... It provides more context, links, and other improvements over the CHANGELOG. I am not sure if it is possible to update the link in the post though.
Elixir 1.11
41–50 of 104 posts
Re: Elixir 1.11
#42Question from someone who's never tried Erlang/Elixir but is interested. If you're starting a greenfield project in 2020, is there any reason to use baseline Erlang instead of Elixir? I get the impression that Elixir is a strict improvement (besides legacy compatibility). But this is a very very uninformed impression.
Re: Elixir 1.11
#43Re: Elixir 1.11
#44Runtime configuration is my favorite new feature of this release. Dancing around runtime vs compile time configuration seemed like it was one of the "harder" parts of dropping into Elixir. edit: grammar
Re: Elixir 1.11
#45Earlier quoted context omitted.
Elixir/Phoenix is my hobby. I build personal projects on it. I was able to find a few jobs, but not a ton (this was a couple years ago). The jobs that are out there all wanted experience but obviously that's hard to do with a new platform. I got an interview with one company that I thought understood that I only had a few months experience as a hobbyist (which means I'll be doing a lot of Googling even for common API…
It is an interesting (but probably very subjective) observation that the majority of companies with a rare or esoteric stacks hire only experienced devs with the stack and refuse to train them themselves. Maybe it is because they are smaller and lack resources. And on the contrary, in my experience, large companies based on common languages like Java, C#, JS and the like dedicate huge resources for training their jun…
Companies like Jane Street make more sense. They use ocaml but they don't expect you to have any ocaml experience coming in, but they also have plenty of resources for training and hiring talented engineers.
Re: Elixir 1.11
#46I started to learn Elixir and Phoenix awhile ago. I liked it but stopped due to (i) there's no job opportunities near me for Elixir and I wanted to the learning/projects I do on my own to help me in interviews; and (ii) it's not a strongly typed language which I have come to learn is my favored type of language
I had this issue too, even before the pandemic. In fact back when I was looking even if there were Elixir job postings they often strongly preferred a Ruby/Rails background on top of that, which I didn't have. I just decided it's one of my hobby languages. If a job comes out of it in the future, that's awesome.
Re: Elixir 1.11
#47Question from someone who's never tried Erlang/Elixir but is interested. If you're starting a greenfield project in 2020, is there any reason to use baseline Erlang instead of Elixir? I get the impression that Elixir is a strict improvement (besides legacy compatibility). But this is a very very uninformed impression.
Elixir's syntax was inspired by ruby and so if you've used ruby or look at ruby code and think, "yea, I get what's going on here" then you will likely find working with Elixir's syntax preferable to Erlang. Erlang's syntax was based off of Prolog and so it will be less familiar, unless you have done a bunch of Prolog programming.
Elixir layers on a bunch of things that are very nice to have at a language level, the ability to rebind names is probably the one that most impacts code. In Erlang you can't rebind a variable, so Erlang code ends up either using lots of very small functions of having variables like `n` `n2` `n3`. It's not that you can't write good, clean, easy to reason about code in Erlang, but if you are coming from a language with mutability and variable rebinding, it's a bit of a culture shock. I find that Elixir hits a nice medium ground to allow you to wrap your head around immutable data structures, functional programming, actor model, OTP without ALSO having to climb the hills of unfamiliar syntax and some limitations (like variable rebinding) that aren't strictly necessary.
From a tooling standpoint, I find Elixir to be a bit more pleasant than Erlang. Mix (build tool) is great, ExUnit (unit testing) is great, ExDocs (docs generation) is great, Hex (package management) is great. The Elixir community has somehow stayed pretty unified when it comes to tools and for the most part they work really well.
From an interoperability standpoint, you really don't leave anything behind choosing to use Elixir over Erlang. Erlang dependencies work just fine, and the interop is so easy, here, I'll give you an example.
Want to use an Erlang module directly from your Elixir code, here's an example of how to use the timer module.
:timer.seconds(1)
That's it, that's the interop, you don't have to import anything weird, you don't have to fence off your code, you don't have to juggle types from Elixir types into Erlang types and back again. Want your Erlang interop to look more like elixir, two lines of code. alias :timer, as: Timer
Timer.seconds(1)
Overall the Erlang and Elixir communities are friends (and Gleam, LFE, and all the other BEAM Languages). It's a very positive community all working to build great functionality on top of the really cool piece of tech that is the BEAM VM.Re: Elixir 1.11
#48Are there any plans for JIT compilation for elixir/Erlang and if not why not?
Most interesting take-aways from benchmarks are some cases where RabbitMQ processes 30-50% more messages per second. And where a native Erlang JSON library beat NIF C library in some specific tests. The PR link covers this info.
Re: Elixir 1.11
#49Earlier quoted context omitted.
> “Elixir is past it’s peak” I would really appreciate any data that backs this up. Or is this a personal observation written as if it was a consensus? Because if we are going by personal experiences, the community definitely feels bigger and more active than before to me.
https://insights.stackoverflow.com/trends?tags=elixir Now you may say Stackoverflow isn't a good measurement. In Tiobe Elixir hasn't made it to the top 50 https://www.tiobe.com/tiobe-index/ There is little reason for me to believe Elixir is before it's peak, the data is showing otherwise. Elixir's contemporaries (Rust / Go / Kotlin) are at a totally different place usage wise. So I tend to think this is it for Elixir…
Up until 2017 or so, you could see the Elixir community active on StackOverflow with answers from José, Chris and most maintainers. Then the community collectively moved to Elixir Forum. Wouldn’t you prefer to ask questions where the maintainers can also answer? Per the Elixir Forum stats, the number of active users keep growing.
I won’t comment on TIOBE because you can find plenty of critique elsewhere. For example, in the Redmonk rank, Elixir does fairly well on the GitHub axis, and is ahead of contemporaries like Clojure and Julia, and ahead of other functional languages like Haskell, Ocaml, Erlang, and even F#.
I strongly believe Elixir is before its peak. Elixir is most likely still growing, just not at the same pace as languages like Rust or Kotlin.
Re: Elixir 1.11
#50I started to learn Elixir and Phoenix awhile ago. I liked it but stopped due to (i) there's no job opportunities near me for Elixir and I wanted to the learning/projects I do on my own to help me in interviews; and (ii) it's not a strongly typed language which I have come to learn is my favored type of language
I recommend starting up a side project to learn a language. That's how I learned Ruby, and consequently Ruby on Rails 15 years ago.
I.e. I mostly just program for money, so how do I motivate myself to do a side project I'm not interested in, just to learn the language?
I wonder if I could ask my employer for two weeks of time to "rewrite" parts of our backend in Elixir, just so I could scratch that itch, without any of the consequences of it actually reaching production.
Like a programming language sabbatical