How to safely create, compose, and execute effectful Scala programs using the Typelevel Cats Effect library.
Cats Effect is a Scala library that makes it easy to write code that effectively uses multiple cores and doesn’t leak resources. This makes building complex applications, such as highly concurrent services, much more productive. Essential Effects aims to introduce the core concepts in Cats Effect, giving you the knowledge you need to go further with the library in your own applications.
On and off for the past few months, I've dabbled in CE at $work and gotten a basic handle of it. I started reading Adam's book in the beginning and could understand the concepts at a high level, but I didn't finish it because $life.
This past week or so I've been deep in a CE performance investigation. I had consulted the CE official docs for help, but I wasn't fully grokking concepts. I eventually remembered, hey, I have Adam's book, and I love his teaching style. I have since revisited and finished it. After a lot of frustrating moments this past week, concepts from the book and what I am working with stick even better now. Thanks so much, Adam! I'm eager to try another hand at this performance problem at work with my newfound insights from his book.
My review is for the version: "Essential Effects (DRAFT), version 3988131 @ 2021-07-05 19:25:41 UTC" Since the final version is not here yet, although today is 07/20hasnd no new version have been released.
Major complains: - Explanations are not explicative enough, sometimes I felt that I did not completely get the whole concept so I had to google things - Some code examples do not work with cats-effect 3, despite de fact that the book says it's compatible with the latest version
Having said that is a good read if you're completely new to effects, for as I had worked with purescript and other similar libraries I think I did not make a good use of this book