It's not the long tail. It's that the HEAD of packages in Elixir are also often poorly maintained or not maintained. The fundamental question for any developer: can I be productive quickly? Despite all that Elixir has going for it, the answer is often "no."
Want a first-party client library for the service you're using? Typically the answer is "too bad, Elixir developer." And writing your own Finch or Req wrapper for their REST endpoint simply isn't a valid answer.
>For its size, Elixir is doing quite well.
I'm actually arguing the opposite. Elixir is not doing well because of its size. So how can that be influenced and changed?
Probably the highest profile and most consistent example would be Stripe. The most popular Stripe wrapper for Elixir’s docs point to a 2019 Stripe API version: https://github.com/beam-community/stripity-stripe
Worse still, the quality of Stripe’s own docs have really degraded this decade for anyone not using a language they have an SDK for. Most of their newer docs assume m have a drop-down toggle for on backend language with a few popular languages and no option for “other”. Example: https://docs.stripe.com/billing/quickstart
None of this is a fault of anyone working on Elixir or Phoenix but it definitely has an effect of discouraging some of the fledgling entrepreneur types who Elixir would otherwise be a near perfect fit for, as Rails was in the late aughts.
Want a first-party client library for the service you're using? Typically the answer is "too bad, Elixir developer." And writing your own Finch or Req wrapper for their REST endpoint simply isn't a valid answer.
>For its size, Elixir is doing quite well.
I'm actually arguing the opposite. Elixir is not doing well because of its size. So how can that be influenced and changed?