In this talk, we will start with the basics, understanding what build caching is and why it can be a bit tricky to handle in real projects.

In this talk, we will start with the basics, understanding what build caching is and why it can be a bit tricky to handle in real projects. Looking at a quick history of build caching in Scala, we will see how it has evolved and how you can leverage existing build caching capabilities in sbt today. I’ll share some practical insights on making the most of build caching when using sbt. Finally, we’ll look at what the future holds for build caching with sbt 1 and 2 and see how you can prepare for it.
In this talk, we will demonstrate some elegant applications of functional programming in Scala, with even more elegant visual results - all with live code and real-time output.
This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance.
I propose that we can extend Mirrors to operations, and use the most natural DSL of all - plain trait definitions.