Some languages are difficult to learn initially (like Prolog) but that's not because they are intentionally obscure, but because they need to be different.
- programming language problems like making certain language features, paradigms and kinds of abstractions available (or not available)
or
- solving actual problems when building software - how to build a maintainable and performant server, OS, web UI etc.
For the second you're better off staying away from the 'weird' languages especially if you care about being productive.
Just because the average developer in a language is bad it doesn't mean that the language itself is bad.
I'd say it depends on what we're defining "first programming languages" as - first PL learnt in intro-level university lecture, or first PL learnt individually? But my impression is that the most popular PL for beginners seems to be Python. And while I'm not really a fan of Python, I understand where that's coming from: Python is relatively simple to learn, has a huge library ecosystem and comes with relatively few footguns.
I feel like this is obviously true when taken at face value, however in practice there are probably loose correlations (not causation) between those two, even if not for the reasons that you'd expect.
I'm not sure whether it was mentioned in the same podcast that i linked, or another one, but there was a very interesting example for Haskell that was offered in one discussion. The argument was that the people who utilize Haskell tend to be more likely than the average developer to have ties to academia (which may incidentally also speak of their cognitive abilities):
- Haskell is popular for numerical processing, moreso than for the somewhat typical CRUD apps
- because of this, Haskell is more likely to have materials describing it which are aimed towards an academian audience
- ergo, those materials won't always be simple step by step tutorials on how to do things, but will sometimes assume familiarity with certain maths concepts and will also focus on solving a particular set of (advanced) problems
- and when these materials attempt to explain these simpler things, invariably you'll still end up with explanations of what monads are somewhere in there, whereas with something like Python you'd have less overhead and a less steep learning curve
- as a consequence of all of this, Haskell won't be as popular as Python, or similar languages
In the podcast, the person said that these "weird" (or perhaps "niche" is a better word) languages would be far more widespread if they were made more easily approachable, because right now there are no easy and simple to digest books to recommend to people who'd like to get started with them.Now, the person might be wrong, since their observations are bound to be subjective and i might be wrong to assume that they hold true in many cases because of how believable all of that sounds, but to answer your question, i'd argue that the average user of Haskell is indeed a bit more intelligent than the average user of Java or many other general purpose languages (even though then we step on the mine of having to define what intelligence even is, where opinions can once again differ).
I'd say that simply happens, because some of those languages are far more approachable and therefore more widely used by a large audience of people, not all of which need to concern themselves with solving the issues that people in academia need to deal with. Of course, there could be the counterpoint that not everyone in academia is brilliant, but i remember seeing some pretty admirable professors and researchers back when i was in my university!