100,000 Hex packages19 Aug 2015
There are more and more people pitching Elixir to their bosses and their bosses' bosses. Plataformatec is thinking about providing a slide deck to aid these endeavours and more and more books get written about the most promising language of our time (quote me on that)! This development begs the question: How can we aid the development of the Elixir ecosystem?
I am already invested in this by running Inch CI and ElixirStatus, but, to be honest, those are idealistic hobby projects that won't shape the decision making of anybody and certainly won't affect the shift towards functional programming languages we need in the long term.
I think we need to raise awareness for the fact that a framework like Phoenix is much better suited for the up and coming generation of soft-realtime apps than Rails and Express ever can be (due to the underlying constraints).
All of this was already in my head, when I read the following on Reddit:
I write a lot of node at my day job and was asked at our elixir meetup what would elixir need to convert node developers. The short answer was 100k hex modules.
Wow. Don't judge the comment because you might dislike Node or the 100k number, but instead think about how this raises an important aspect of language adoption we're facing right now: The chicken and egg problem.
Developers want a well-developed ecosystem with hundreds of libraries and packages. But developers are needed to build these in the first place.
And believe me: We want hundreds of cool Elixir libraries, Hex packages and Phoenix extensions, since we need these for handling all the things we've come to expect.
As an example: I expected to find some kind of HTML Sanitizer library for Elixir+Phoenix when I started to plan for elixirstatus.com - but there was none. Only then I realized that we need to create these things ourselves (which I then did, btw).
This community is one of the nicest I've ever considered myself to be a part of, but to achieve a greater level of adoption in the industry (so we can work on Elixir projects during the day, too) we need more well-maintained libraries.
100k might seem like hyperbole, brogrammer speak and we all know that more packages are not necessarily a sign for a well-developed ecosystem, but at the same time we have to realize how early we are in Elixir's and Hex's and Phoenix's development. This is a fantastic time to get into Open Source.
That said, be brave. Don't be afraid to build your own tools and share the parts you can, so others can learn and build on top of them.
And when you do, be sure to let us know!