In this talk, we will walk through a concrete example of a boilerplate-heavy domain. By replacing common Scala 2 workarounds with Opaque Types, Extension Methods, Enums, and Union Types, we will demonstrate how to achieve a strictly typed, decoupled architecture without the noise.

A clean Domain Model is hard to maintain. Over time, our core entities often become overloaded, accumulating database logic, infrastructure constraints, and JVM-specific boilerplate. We want a pure, rich domain, but we often settle for leaky abstractions or an explosion of wrappers just to keep the compiler happy.
Scala 3 offers a powerful, pragmatic alternative: you no longer need complex concepts to solve easy problems. By leveraging its modern toolset, we can define behaviors, data shapes, and relationships exactly where they are needed—without polluting the core entities.
In this talk, we will walk through a concrete example of a boilerplate-heavy domain. By replacing common Scala 2 workarounds with Opaque Types, Extension Methods, Enums, and Union Types, we will demonstrate how to achieve a strictly typed, decoupled architecture without the noise.
Drawing from multiple Scala LLM workshops we conducted this past year, I will share insights to significantly enhance your AI experience.
Do you like it when compiler generates the boring code for you? Fast, mundane, boring-but-error-prone code? Do you need to implement such a code generator yourself? Have you found out that Shapeless/Mirrors bend your brain a bit too much?
We'll explore type classes in Scala 3, using its new rules for givens, extension methods, and mechanisms for automatic derivation via mirrors or macros.
In this talk, I’ll guide you through the crossroads where Scala intersects with AI, some applications aimed at boosting developer productivity, others focused on integrating your code with LLMs.
In this talk, I will present insights from running the Open Community Build, where we continuously build and migrate nearly 2,000 open-source projects to the newest Scala Next versions, from scratch, every week.
Learn how to accelerate Scala code by orders of magnitude with Cyfra.