I'll share a handful of techniques that can help you avoid runtime errors and shift them to the realm of compile time

You are having a good night's sleep and suddenly your phone rings. You wake up and jump to your feet thinking it’s an incident report, but after a second you calm down because you know that it was only one of those “you won a lottery” texts. Thanks to the latest techniques you have implemented, everything is under control. You fall asleep happy that your smart work during the day lets you sleep safe during the night.
Of course, we will not predict everything but during my talk, I'll share a handful of techniques that can help you avoid runtime errors and shift them to the realm of compile time. We'll talk about Scala, refined types and a declarative approach to HTTP endpoints using Tapir.
Understanding the exact properties that disqualify a data type from being an instance of a given abstraction turns out to be surprisingly helpful
How Libretto, a Scala DSL for concurrent programming, can be used for writing custom stream operators
How to implement fast and cost-effective backend for a multiplayer game using Scala, Akka and GraalVM
As WebAssembly matures and gets more and more traction from the community, you might wonder can Scala join that trend?