LOADING

Flexible Modeling: Keeping Your Domain Pure with Scala 3

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.

Magda Stożek
Staff Software Engineer, SoftwareMill
About This Talk

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.

more great talks

Might Be Interesting

Day 2
  —  
10:10 am
arrow pointing right icon

Can we have the Standard Library for Macros?

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?

Day 1
  —  
9:35 am
arrow pointing right icon

The world after Scala 3.9 LTS

In this talk, I will introduce the highlights of what to look forward to in Scala 3.9 LTS, as well as how to think about the upcoming new release.

Day 1
  —  
11:50 am
arrow pointing right icon

Scala and C – tight as brothers

Scala Native can interact with C code and libraries, greatly expanding the library ecosystem beyond pure Scala offerings. Let's see the low level and high level tools that make it possible, talk through challenges of encoding various C concepts in Scala, and demonstrate what popular C libraries look like when used alongside idiomatic Scala code.

Day 3
  —  
6:15 pm
arrow pointing right icon

Scalar PreParty

Let's meet before Scalar!

Day 1
  —  
10:10 am
arrow pointing right icon

Migration Without Tears: 2,000 Projects, One New LTS

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.

See All Events
Join us!

We're looking for amazing speakers.
CFP is open till 10.01.2023

Fill in Call for Papers
location icon

Location

Centrum Konferencyjne POLIN, Poland
stay in touch icon

Follow Us

Contact Us