pera

pera

Stack Overflow Developer Survey 2019 (we are back!)

The 2019 Stack Overflow Developer Survey Results Are In

Here are some relevant points:

  • 68.2% of the participants who have developed or are interested in Elixir selected Elixir as one of the Most Loved programming languages, making it top #8 in this category. This increased from 62.4% in the 2017 survey.
  • Elixir programmers are on average some of the best paid software engineers in the world, reaching the top #5 in the highest salaries category
  • Developers who work with Rust, WebAssembly, and Elixir contribute to open source at the highest rates :sunglasses:

Most Liked

stefanchrobot

stefanchrobot

Stack Overflow Developer Survey 2019 results are in.

Key results:

  • Elixir is used by 1.6% of Professional Developers (Python 39.4%, Ruby 8.9%, Go 8.8%, Scala 4.2%)
  • Elixir is the 8th most loved language with 68.2% (Rust 83.5%, Python 73.1%, Clojure 68.3%, Go 67.9%, Scala 58.3%, Ruby 50.3%, Erlang 47.4%)
    “loved” = % of developers who are developing with the language or technology and have expressed interest in continuing to develop with it
  • Erlang is the 6th most dreaded language with 52.6% (Ruby 49.7%, Scala 41.7%, Go 32.1%, Elixir 31.8%, Clojure 31.7%)
    “dreaded” = % of developers who are developing with the language or technology but have not expressed interest in continuing to do so
  • there are little developers who don’t work in Elixir or Erlang but want to try them out
  • Elixir and Erlang developers are among the top paid ones

The takeaway seems to be that people are really happy with Elixir once they get on board. The opposite seems to be true for Erlang. I’m honestly curious why. I would hope that it’s because people would rather move to Elixir, but that might be just wishful thinking.

Relatively few people want to try out Elixir or Erlang. Is this just a matter of limited popularity or we’re just bad at advertising the strong sides of Elixir?

peerreynders

peerreynders

I think it has more to do with where the centre of gravity of the existing developer population (voting on stack overflow) is. It seems to be around JavaScript, Python, Java, C#, PHP etc.

From there Elixir/Erlang syntax wise, functional and process oriented, without OOP support looks like a pretty weird and unfamiliar place. It takes some time to become competent in your first programming language and when it comes time to branch out people are often not that willing to move too far away from their comfort zone - i.e. they will tend to stay pretty close to that centre of gravity. Learning something as different as SQL can be challenging enough but at least the potential for short term ROI is pretty good on that one.

I seem to recall that at least initially a significant portion of the people interested in Elixir were experienced (long time) developers who have been using mainstream languages and runtimes long enough to be more aware of their limitations and shortcomings. The appearance of Elixir just made it a little bit easier to try Erlang’s process oriented architecture and flavour of functional programming.

Aside: How did WebAssembly even get on that list - it’s a compilation target, not a programming language.

OvermindDL1

OvermindDL1

Which I actually quite enjoy, more so than Elixir’s syntax actually… :frowning:

Where Next?

Popular in Discussions Top

jswny
I would like to better understand what the advantages/disadvantages of umbrella applications are compared to structuring your app as as s...
New
Jayshua
I recently came across the javascript library htmx. It reminded me a lot of liveview so I thought the community here might be interested....
New
vans163
So useless benchmarks aside, Its possible to write a webserver that can serve 300k requests per second (perhaps more with optimizations)....
New
cvkmohan
The upcoming Phoenix 1.6 release looks very interesting. Became a habit to watch the commits - and - what they are bringing in. phx.gen...
New
Qqwy
Looking at the stacks that existing large companies have used, WhatsApp internally uses Mnesia to store the messages, while Discord uses ...
New
Fl4m3Ph03n1x
Background This question comes mainly from my ignorance. Today is Black Friday, one of my favorite days of the year to buy books. One boo...
New
ricklove
I was just introduced to Elixir and Phoenix. I was told about the 2 million websocket test that was done 2 years ago. From my research, t...
New
nunobernardes99
Hi there Elixir friends :vulcan_salute: In a recent task I was on, I needed to check in two dates which of them is the maximum and which...
New
hazardfn
I suppose this question is effectively hackney vs. ibrowse but we are at a point in our project where we have to make a choice between th...
New
dogweather
I wrote this comment on r/haskell, and it’s not popular there. :wink: But I think I’m on to something… Haskell reminds me of Java, and e...
New

Other popular topics Top

marius95
Hello everyone, I try to use an Javascript Event Handler in my root.html.leex file. Therefore I created a function in the app.js file: ...
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
fayddelight
I tried installing elixir 1.11.2 erlang 23.3.4 via asdf in my zsh shell. Enabled the versions locally and globally. When I list them ...
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New
joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 records...
New
svb
Hi! Currently I want to submit a form by pressing the Enter key. However, since my input field is of type “textarea” this is just adds a...
New
lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New

We're in Beta

About us Mission Statement