herminiotorres

herminiotorres

Concurrent Data Processing in Elixir: various errata

Hi @Margaret ,

On page VII the book tells us the example and snippets will be all using Elixir version 1.11

But on page 3 almost the end of the page when has a print of the IEx console, the version of the Elixir is 1.9.4 instead of 1.11.


So and the most part of the book suggest use the recompile function on IEx, but sometimes after you change your code you continue to receive :noop on IEx, maybe change the approach to use the r function, e.g., r(Sender), will be more efficient, using this way I tell recompile the Sender module on my application and no matter what if I change my code or not.

Most Liked

herminiotorres

herminiotorres

I like to share my thoughts about the book.

Chapter 1:
I like your thoughts and perspective to use Task and Task.Supervisor, but maybe share how to create our own custom Task.Supervisor.

Chapter 2:
I like the idea you use to create the GenServer and use it to improve the application to run Task on Chapter 1. It has good details about GenServer and the callbacks our module needs to implemented and introduce the last instructions about the tuple and the spec each callback receives as params. I feeling missing how to design the application supervisor tree, and how to think in perspective to guarantee our applications weren’t stop, maybe more content about Registry and how to use how to customize it and Supervisor and DynamicSupervisor too, the difference between both supervisors. The last thing is how to observe and debug, introducing this instrumentation when working with the OTP.

Chapter 3:
I like the idea to drop into GenStage after the GenServer chapter because you are very fresh thoughts and very close to using these concepts for most GenServer applications. In this chapter, the knowledge about the supervisor tree is critical because you need to build how your entire stages need at least one process for each stage running. If some stage of my application it’s going down, the next or previous stage will fail. It could be more content about the Dispatcher, and I feel very quickly and small.

I like the application examples and how to use them to explain and conquer this knowledge about this abstract concept; sometimes it’s difficult to understand, a great book, and congrats. I’m very curious/excited about the next chapters and releases.

svilen

svilen

Author of Concurrent Data Processing in Elixir

Thank you for the kind words, and for sharing your ideas, Herminio! I really appreciate it!

Margaret

Margaret

Editor at PragProg

@dimitarvp thanks – we are just in the first beta, so not yet in print. In print date should be August 2021.

Where Next?

Popular Pragmatic Bookshelf topics Top

jimmykiang
This test is broken right out of the box… — FAIL: TestAgent (7.82s) agent_test.go:77: Error Trace: agent_test.go:77 agent_test.go:...
New
GilWright
Working through the steps (checking that the Info,plist matches exactly), run the demo game and what appears is grey but does not fill th...
New
swlaschin
The book has the same “Problem space/Solution space” diagram on page 18 as is on page 17. The correct Problem/Solution space diagrams ar...
New
leba0495
Hello! Thanks for the great book. I was attempting the Trie (chap 17) exercises and for number 4 the solution provided for the autocorre...
New
curtosis
Running mix deps.get in the sensor_hub directory fails with the following error: ** (Mix) No SSH public keys found in ~/.ssh. An ssh aut...
New
digitalbias
Title: Build a Weather Station with Elixir and Nerves: Problem connecting to Postgres with Grafana on (page 64) If you follow the defau...
New
adamwoolhether
Is there any place where we can discuss the solutions to some of the exercises? I can figure most of them out, but am having trouble with...
New
taguniversalmachine
Hi, I am getting an error I cannot figure out on my test. I have what I think is the exact code from the book, other than I changed “us...
New
andreheijstek
After running /bin/setup, the first error was: The foreman' command exists in these Ruby versions: That was easy to fix: gem install fore...
New
dtonhofer
@parrt In the context of Chapter 4.3, the grammar Java.g4, meant to parse Java 6 compilation units, no longer passes ANTLR (currently 4....
New

Other popular topics Top

Exadra37
Please tell us what is your preferred monitor setup for programming(not gaming) and why you have chosen it. Does your monitor have eye p...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me. I think the Planck and the Preonic (o...
New
PragmaticBookshelf
Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex e...
New
AstonJ
If you are experiencing Rails console using 100% CPU on your dev machine, then updating your development and test gems might fix the issu...
New
PragmaticBookshelf
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
AstonJ
We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New
AstonJ
If you want a quick and easy way to block any website on your Mac using Little Snitch simply… File > New Rule: And select Deny, O...
New

Sub Categories: