When writing software, we currently seem to have to choose between an imperative style - easy to read and write, hard to reason about - and a monadic style - hard to read and write, easy to reason about.This talk is about being greedy and getting the best of both worlds, because we deserve it.

When writing software, we currently seem to have to choose between an imperative style - easy to read and write, hard to reason about - and a monadic style - hard to read and write, easy to reason about.
This talk is about being greedy and getting the best of both worlds, because we deserve it.
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.
This talk will explore the use of Scala as a scripting language, replacing the Bash and Python scripts common throughout the industry.
Protobuf is commonly associated with code generation. However, in large projects with tens of thousands of message definitions, this approach can lead to an overwhelming amount of generated code. In this talk, I’ll share my journey in search of a different approach to this problem.
Code generation is one of the most promising applications of large language models (LLMs), offering substantial productivity boosts for developers. However, this benefit is tempered by serious concerns surrounding the correctness and security of the generated code - especially outside the happy path.