May 15th, 2025
We’ve met each of the Scala Days workshop trainers, but here’s some more information on what each workshop will actually include! Continue reading below to review the abstracts to each workshop.
Just as Scala has transformed the way we build applications with functional programming, ZIO makes it easy to build provably correct systems and APIs to connect to them. With a focus on functional Scala and a real world application, this workshop is a practical way to learn full stack Scala 3 with ZIO and related libraries.
One of the shortcomings of Domain Driven Design (DDD) is that it can be a lengthy process to define the bounded contexts (BCs) properly, and subsequently to transcribe the BCs into a code and to introduce them in your codebase.
This workshop aims to demonstrate how to minimize this inconvenience by relying on:
You will learn:
By the end of the workshop, you will have a full stack app with DDD implementations, ready for review.
This workshop presents a toolkit of concepts and coding practices, which I call programming strategies, developed through my fifteen years of Scala experience. The workshop approaches programming primarily through a functional programming lens, emphasizing designs that enhance reasoning and composition, while leveraging Scala’s object-oriented features where appropriate.
The workshop has two primary goals: To develop a coherent framework of program design concepts and the connections between them. For example, we’ll see classic functional programming (FP) and object-oriented (OO) approaches, the tradeoffs of each, and how they are connected by a concept known as duality. To show how we translate these concepts into Scala code, providing a systematic and repeatable way for implementing designs in software. For example, we’ll see how we can translate an abstract API into either FP or OO style code, depending on which is most appropriate for the situation.
This workshop is about the big picture; it is focused on the design or architecture of code, and the implementation of these designs. So, for example, we won’t talk about details such as how you might connect to a database in Scala, but discussing the overall design and implementation of a library for database interaction is definitely on topic. It’s for people who see software libraries as force multipliers, and who want to build libraries that are more productive, flexible, and enjoyable to use.
This workshop is a practical deep-dive into building reliable incremental processes with Scala 3 and fs2.
Modern business applications are moving towards incremental processing. We design real time data pipelines, event-driven architectures, reactive systems, and use stream-based I/O with databases, files and websockets. Just as functional programming has transformed the way we build applications, functional stream processing has enabled us to write simple, safe, scalable incremental processes.
In this workshop, you’ll use functional streams to explore the challenges of incremental processing. By the end, you’ll be able to recognize when a problem needs an incremental solution, ask the right questions about it, choose the right tools to solve it, and avoid pitfalls in memory and concurrency.
Equipped with functional streams in fs2, you’ll discover that designing incremental processes can be easy, enjoyable, and deeply empowering.
The AI landscape is changing rapidly and there are always new tools on the horizon, but how can you actually use them to boost your efficiency in Scala? We’ll go over the possible tools that you can use, how they were made AI friendly and how you can squeeze the most out of it.
Will touch on subjects such as MCP, agents, scripting, migration, refactoring and how best to work with AI tools. Join Tomasz Godzik and Łukasz Biały to boost your effectiveness to the next level.
Each workshop takes place on August 18th and 19th in Lausanne. Upon completion workshop participants will also receive a certificate.
Grab your ticket today before the Early Bird sale ends on May 26th!
Still need help deciding which workshop or ticket option to choose? Contact us at info@scaladays.org, we’ll do our best to answer your questions and welcome you this August.