I switched from Ruby to Elixir about 10 years ago for a number of reasons. 10x performance on various algorithms I translated into Elixir was one. Another one was 100% immutability, ruling out an entire class of bugs. A third was excellent concurrency support, which was of course aided by the immutability. A fourth was that they tried to retain the friendliness of Ruby.
At least a few emerged later. Pattern-matching + guards are godlike and eliminate tons of boilerplate argument-checking logic. Per-process GC, no GIL, etc. etc.
A small learning curve to master functional-language semantics and I haven't looked back.
Elixir simply scales better in every way- long-term maintenance, load, etc.
The Ruby community is/was amazing, though.
The only thing I wish it could do was compile down to a native executable or run in the browser.
Very similar story here.
I still somewhat "think in Ruby" though. It was really the first language that let me comfortably build large projects and really lean into metaprogramming. I prefer Elixir/Erlang for personal projects though.
Haven't lucked into an Elixir/Erlang job yet to experience working on such a codebase with others yet, so for that my preference is still C++.
Work makes me use Golang and Python and I find no joy in either. I still drop into Ruby if I need a small script for something personal.