Hacker News new | ask | show | jobs
by xbhdhdhd 2368 days ago
Just this morning I was pondering the same thing in Elixir.

I wonder if Elixir and Crystal compete for ruby developers to pick up

3 comments

Interestingly apart from the ruby like syntax they seem to be quite different languages from my limited exposure, in terms of the domains they target (elixir - distributed systems, crystal - whatever go/rust are known for minus distributed systems?), the type system (dynamic vs static), deployment story (elixir - mix based, crystal - binary deployment), the standard libraries they leverage etc.

It seems the sum total of them covers a lot of ground from writing quick CLI apps to large distributed systems for developers familiar with Ruby.

I think Ruby developers are a lot more likely to switch to Crystal than Elixir. Elixir encourages a much more functional style than I think Ruby developers are used to.
Probably depends on the type of Ruby developer. As a Rails guy Elixir seems more useful for my day-to-day but Crystal is indeed compelling.
When I did a comparison:

Crystal has 1,209 repos https://github.com/topics/crystal

Ruby has 19,721 https://github.com/topics/ruby

For those who needs performance for specific tasks, the option is easy since it’s a small investment to learn Crystal but Elixir is mature.

If we are targeting DevOp, other languages has several advantage like Go for microservices and could be work within mobile app.

There is definitely a lot of Elixir developers who come from Ruby. I mean José Valim himself was a core RoR team member.

I'm trying to find an Elixir job right now and pretty much all of these comes with a RoR requirement. (also it seems some companies are moving from Elixir to Go).

As I'm mostly a PHP / Symfony guy I feel the disconnect, and at my current place people really don't care about Elixir at all. Basically Go and Node would be much better prospect for me.

¿Por qué no los dos? While I haven't tried it yet, Crystal seems like a viable candidate for writing NIFs/ports for Elixir apps.