Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I have always considered helping the community grow into a diverse ecosystem to be my main responsibility (the Python community being a great example here).

This particular effort started because some people got together and realized that we could do it! Do it in a way that felt part of Elixir and not just a bunch of bindings to C libraries.

We honestly never had the expectation that we had to beat Python (otherwise we would simply not have started). Early on, we were not even sure if we could be better at one single thing. However, 3 years later, we do have features that would be quite hard or impossible to implement in Python. For example:

* Nx Serving - https://hexdocs.pm/nx/Nx.Serving.html - allows you to serve machine learning models, across nodes and GPUs, with concurrency, batching, and partitioning, and it has zero dependencies

* Livebook - https://livebook.dev - brings truly reproducible workflows (hard to achieve in Python due to mutability), smart cells, and other fresh ideas

* A more cohesive ecosystem - Nx, Scholar, Explorer, etc all play together, zero-copy and all, because they are the only players in town

Of course, there are also things that Python can do, that we cannot. The most obvious ones being:

* In Python, integration with C code is easier, and that matters a lot in this space. Python also allows C to call Python, and that's just not possible in the Erlang VM

* Huge ecosystem, everything happens in Python first

At the end of the day, what drives me is that the Erlang VM offers a unique set of features, and combining them with different problems have historically lead to interesting and elegant solutions. Which drives more people to join, experiment, run in production, and create new things.



Thanks for the great answer! And thanks for your work with Elixir. As a long-time Erlang user, I was impressed at how it wasn't just a slightly nicer syntax, but included genuine innovations and improvements.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: