Hacker News new | ask | show | jobs
by pawelduda 1058 days ago
I use Elixir for a long time and wouldn't recommend it for ML over Python. Yes, maybe Elixir has some advantages and solutions for pain points because of VM architecture and other subjective reasons but doesn't come close to what Python offers in terms of tooling, support, community. Also, if you juggle more complex data in Elixir, it's something that you need to get used to coming from Python, it will be much much different and therefore harder to grok for someone not used to the style.

You can always make Elixir app talk to Python ML backend and get the best of both worlds if you desire.

5 comments

Nx solves all of the issues you're citing. That is how you do ML in Elixir
Have you used Numerical Elixir (Nx)?
I can no longer edit parent post so to further elaborate on tooling: even if Elixir was comparable to Python (let's assume it's true as of today), there is a lot going on in AI, so that won't necessarily be true tomorrow. There is no doubt Elixir will always be slower to catch up to recent development because of smaller community. This also applies to how quickly issues will be resolved as they appear. It's likely OK if you're toying with a hobby ML project on your own, but not something you'd want in a startup with stakeholders who have expectations in regards to timeline, and so on...

I like Elixir for web development otherwise, it is a much more stable domain so above doesn't apply (although I've seen some claim otherwise, which is telling how much more of an issue it would be for niche ML use case).

I'd be very happy to be proven wrong by some case studies of how companies leveraged Elixir in real ML projects and concluded it is superior to Python.

If that reasoning would hold true then there would never be a new best/most popular language for a specific domain, but there are many counter examples.

And just as Elixir is (in my opinion) preferable to Python for web development, it's possible that the same may happen with AI.

I agree that it's a better choice for web development purely from technical standpoint (so ignoring things like smaller market for devs), but I'm biased towards it.

And yes, when it comes to AI, things also could change in favour of Elixir - I would be pretty happy about it.

your reasoning is basically "it's not popular enough"

your flaw of reasoning can be trivially pointed out simply by explaining that once upon a time, Python was NOT "the language for machine learning". Essentially, NO "X is the solution for Y" started out that way. Which is why appeals to popularity are a fallacy.

So you wouldn’t recommend it because it’s different than Python?
What ML tooling is better in Python?