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

jimschubert
In Chapter 3, the source for index introduces Config on page 31, followed by more code including tests; Config isn’t introduced until pag...
New
Mmm
Hi, build fails on: bracket-lib = “~0.8.1” when running on Mac Mini M1 Rust version 1.5.0: Compiling winit v0.22.2 error[E0308]: mi...
New
herminiotorres
Hi! I know not the intentions behind this narrative when called, on page XI: mount() |> handle_event() |> render() but the correc...
New
HarryDeveloper
Hi @venkats, It has been mentioned in the description of ‘Supervisory Job’ title that 2 things as mentioned below result in the same eff...
New
brian-m-ops
#book-python-testing-with-pytest-second-edition Hi. Thanks for writing the book. I am just learning so this might just of been an issue ...
New
leonW
I ran this command after installing the sample application: $ cards add do something --owner Brian And got a file not found error: Fil...
New
brunogirin
When installing Cards as an editable package, I get the following error: ERROR: File “setup.py” not found. Directory cannot be installe...
New
oaklandgit
Hi, I completed chapter 6 but am getting the following error when running: thread 'main' panicked at 'Failed to load texture: IoError(O...
New
rainforest
Hi, I’ve got a question about the implementation of PubSub when using a Phoenix.Socket.Transport behaviour rather than channels. Before ...
New
gorkaio
root_layout: {PentoWeb.LayoutView, :root}, This results in the following following error: no “root” html template defined for PentoWeb...
New

Other popular topics Top

Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1045 20596 392
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
AstonJ
Curious to know which languages and frameworks you’re all thinking about learning next :upside_down_face: Perhaps if there’s enough peop...
New
AstonJ
I have seen the keycaps I want - they are due for a group-buy this week but won’t be delivered until October next year!!! :rofl: The Ser...
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
PragmaticBookshelf
Author Spotlight Mike Riley @mriley This month, we turn the spotlight on Mike Riley, author of Portable Python Projects. Mike’s book ...
New
PragmaticBookshelf
Author Spotlight: VM Brasseur @vmbrasseur We have a treat for you today! We turn the spotlight onto Open Source as we sit down with V...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New

Sub Categories: