News for hackers. Stuff that matters.
Re:Scaling Erlang Developer Experience at WhatsApp [pdf] by Jtsummers on Friday September 11, 2020 @03:19PM (#24446351)
Erlang is a system and language for distributed (not just concurrent) programming. Go is a language for concurrent (not distributed) programming. Unless things have changed substantially since I last investigated Go, the language does not sit within a system designed for distributed computing. There are libraries you can use, but the language itself does not attempt to solve the same problems as Erlang.

If you use Erlang within one node, it's roughly equivalent to Go. But Erlang is designed so that the same concurrency mechanisms you use on one node also work across a cluster of nodes. There are more differences than this, but this is probably the most critical one.

Re:Scaling Erlang Developer Experience at WhatsApp [pdf] by ericlewis on Friday September 11, 2020 @06:02PM (#24447815)
So you’re saying erlang can automatically distribute async tasks across nodes? Probably too much to comment, but how or where can I learn more about this way of thinking of it?
Re:Scaling Erlang Developer Experience at WhatsApp [pdf] by Jtsummers on Friday September 11, 2020 @06:21PM (#24447959)
Not automatically, but if you connect multiple nodes into a cluster, when you spawn a process you can select which node it will be spawned on. Additionally, once the nodes and processes are running you can send messages across nodes to different processes using the same method you use for processes on a single node. [0] Shows an example of communication across nodes, as well as some preliminary material that would be helpful if you don't know Erlang.

I mostly learned Erlang from Joe Armstrong's book [1], though the first edition. I'm confident the second edition is as good as the first. Learn You Some Erlang [2] is a great free (also available for purchase, but free online) book.

[0] https://erlang.org/doc/getting_started/conc_prog.html

[1] https://pragprog.com/titles/jaerlang2/programming-erlang-2nd...

[2] https://learnyousomeerlang.com/

Re:Scaling Erlang Developer Experience at WhatsApp [pdf] by tonyarkles on Saturday September 12, 2020 @07:29PM (#24456815)
I’m not at home and don’t recall the library name off the top of my head (maybe libcluster?), but I recently inherited an Elixir project where the nodes were run in a k8s cluster and they automatically joined up. I was a little skeptical at first, having always manually managed that before, but... it’s buttery smooth!
Re:Scaling Erlang Developer Experience at WhatsApp [pdf] by darkmarmot on Saturday September 12, 2020 @12:52AM (#24449929)
We are doing this right now at scale for healthcare integration. My team lead gave a keynote on it at CodeBEAM this week!