Hello all !
After a long time, I am finally happy to announce Chapter 5: Implementing Simple Business Logic - Part 1 !
When I first started Chapter 5, I really did think separating it into 2 parts would allow for 2 short videos. This however, was not the case, as you can see by this video’s length, over 20 minutes. I usually strife to make my videos smaller than 15 minutes, but there was so much to be said I simply couldn’t cut it.
As the previous chapter, this was also quite the undertaking for me. The more I read into Transaction Script the more things I found. I even did a detour into academia to learn what they had to say about it and I was very happy to learn new information about it and to share it with all of you! For me this is one of the main reasons why I make these videos: not only do I get to summarize the teachings of the author, I also get to add things the author does not know/mention in the book, so everyone wins!
In this episode I am trying something I saw in conferences by the legend Saša Jurić - instead of talking with slides, show people the code running instead ! So for the first time I have created mini projects to exemplify everything the author has to say, so you can see it practice and also test the code yourself (by copying the code I show and running it)!
A very big special thanks goes to the folks in the Elixir forum, who helped me with the code, answered my questions and provided valuable feedback with their experiences!
- Is this usage of Repo.transact an anti-pattern? - Questions / Help - Elixir Programming Language Forum
- Is there an easier way to "Elixirize" this code? - Questions / Help - Elixir Programming Language Forum
This episode is special to me in many ways. First, the reason it took so long: my machine died. I was saved by the backups I had, but even then I had to restart the whole process on a new and fresh operative system. Then to add insult to injury, the video editor I was using was no longer viable, since it has a bug that makes it basically unusable, specific to the operative system (and family) I am using. I wish I was joking. I am not. So I had to relearn and redo my entire process on a new video editor and using new tools. This was no easy undertaking, as you can guess, and you can probably also see that in the video, since I am using DateTime.utc_now for the examples and this video was released in 2026 ![]()
Now I will take a break, while collecting my thoughts and feedback for the next chapter, which I assume will not be that much shorter. I guess I will have to wait and see.
I hope you all share your experiences and opinions here, and as always I’m open to constructive criticism.
I hope you all like this video, enjoy it and learn something!