Just as Scala has transformed the way we build applications with functional programming, effect systems are changing how we build strong, testable, composable and provably correct code.
In this talk, we will explore the benefits of effect systems in Scala, the different approaches to effects, how effects make our code more modular and powerful, and the tradeoffs we need to make in the code—all with realistic examples from personal experience and the experience of companies using them.
By the end of this talk, you'll know what effects are, how they work, and whether you can (or should) use them in your own code, with the excitement that may come with it.