krisleech

krisleech

Hey folks, I’ve been using Elixir for over a couple of years (phx, ecto, broadway, oban).

For this kind of work you do not tend, in my experience, to actually use OTP directly, i.e. write GenServer’s.

The libraries use them and you use the libraries.

You could program web apps in Elixir without needing to really know a great deal about processes/OTP.

Now I want to start learning OTP in depth, I’ve read a few Elixir books (Elixir in Action etc) in the past and just started reading an Erlang book. So I know the basics, what processes are, how to build something like a GenServer by hand, but not how to structure a topology for different use cases,

Are there any books or resources you would recommend which have common erlang/elixir patterns in terms of how to structure processes for different use cases?

It can be Elixir or Erlang, or indeed any BEAM language.

Cheers.

First 9 of 9 Posts Switch mode

LostKobrakai

LostKobrakai

I’ve do not really have resources for like blueprints - even though there’s for sure ones like the manager and dynamic workers example of elixir in action.

However I think the usecases define the guarantees you need around isolation and startup/restart/shutdown ordering and usually those translate quite well to supervision trees.

This talk goes especially into the startup side of guarantees (mostly the second half), which often also neatly translate into the shutdown side.

I’d also study the supervision setup of e.g. cowboy(ranch) / bandit(thousand islands) / phoenix channels if you want some real world applications.

AstonJ

AstonJ

Some of the Erlang ones you might want to look at include:

There are loads of good Elixir books in our Learning Resources > Books section - many have reviews - well worth checking out just for the comments :023:

manhvu

manhvu

I came from the Erlang ecosystem, so I haven’t found many good OTP resources for Elixir (or maybe I just missed them). Most of the OTP documentation and books I recommend are written for Erlang, and they’re still highly relevant because Elixir runs on the BEAM and uses the same OTP principles.

My recommended resources for advanced OTP programming:

manhvu

manhvu

I really enjoyed Learn You Some Erlang for Great Good!. It explains concepts in a fun and easy-to-understand way.

akoutmos

akoutmos

Author of Build a Weather Station with Elixir and Nerves

@hugobarauna and I wrote a book on this exact topic :wink:

alvinkatojr

alvinkatojr

Seconded. I’m currently reading this book, albeit slowly. Thank you, @akoutmos. You and @hugobarauna did a great job!

akoutmos

akoutmos

Author of Build a Weather Station with Elixir and Nerves

Happy to hear that you are enjoying the book!

Hermanverschooten

Hermanverschooten

I liked this one very much, Designing Elixir Systems with OTP, by Bruce (from @GroxioLearning) and James @JEG2

— All posts loaded —

Where Next? Top

Trending in Chat/Questions Top

krisleech
Hey folks, I’ve been using Elixir for over a couple of years (phx, ecto, broadway, oban). For this kind of work you do not tend, in my e...
New
mhindujadheerajsudan
Hi, I’m Dheeraj Sudan from the UK. I’m a software developer and also run a business with my wife Meenu Hinduja. I’m interested in getting...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New

We're in Beta

About us Mission Statement