Learning about processes & supervision with DynamicSupervisor and Registry

I’m in the process of writing a tutorial/guide/blog series implementing a poolboy clone using Elixir 1.6’s DynamicSupervisor (and Registry, although that part hasn’t been written yet).

I didn’t really find any resources on this subject using these tools, so I figured I’d write one in the hopes the Elixir community will find it useful. It’s aimed towards newer members of the Elixir community, but that are already reasonably familiar with the language and concepts (gen servers, etc.).

The table of contents for the series can be found at http://davidsulc.com/blog/2018/07/09/pooltoy-a-toy-process-pool-manager-in-elixir-1-6/ and the accompanying code is at https://github.com/davidsulc/pool_toy. Bear in mind the state of the code matches the state of the blog series: it’s a work in progress and isn’t finished (e.g. certain issues in the code will be explained and fixed in upcoming posts).

Whether you’re a beginner or a more advanced practicioner, your feedback is more than welcome.