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

but if you want explicit any not just use django?


Elixir and Phoenix is a better production platform than Django.. I’m not throwing shade on Django, many production systems use it happily. I’m saying that Phoenix/Elixir is better, partly because of the BEAM and OTP and partly because of the language and the framework. Real concurrency. Better performance. Far more robust in production. The language is pre-compiled, and while not statically typed, that alone provides one more safety layer. It’s functional, which avoids a lot of the ugly patterns in both Rails and Django. It has a built-in fast and reliable KV store. It has distribution between the nodes if you want it (e.g. for a distributed cache). It enables you to debug with a remote shell connected live to the running system. There’s a lot more than I can add here.


if you want true concurrency, why not use goroutines? It provides single binary deployment and static types?


I am a Go dev, too. I consider Go my main language. The BEAM has a very, very similar architecture to the M:N scheduler in Go. Goroutines are not dissimilar to BEAM processes. You can similarly run thousands of processes on the BEAM. But Go does not have a real Phoenix equivalent and there are reasons to use Elixir and BEAM, especially on the web side, including some of what I already mentioned above.


Elixir is very ergonomic when it comes to concurrency, e.g. parallel-map example:

    1..10
    |> Task.async_stream(fn x -> x*2 end, max_concurrency: 2, timeout: 7000, on_timeout: :kill_task)
    |> Enum.to_list()
Equivalent Go code would be very long and very ugly.

Golang has its positives but you also lose a lot. Whole ecosystem is not comparable, like "debug live production cluster" is one-command away for Elixir vs "fuck you" for Golang


Django is not very different than Rails and imo much less ergonomic. Many issues are still there like hidden state/setup needed to call something


django requires more boilerplate and is less magic than rails.




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

Search: