This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance.

Contravariance can throw many developers off the first time they run into it. This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance. We'll begin by building up intuition for what it means for a type parameter to be in contraviariant position, before moving on to concrete examples.
Listen to a story of how we have dealt with 201 obstacles allowing us to run multithreaded programs natively!
In this talk, we’ll show first the different techniques we can use to apply constraints is our domains. Then, we’ll present Iron, its features, extensions, and integrations. We’ll finish by showcasing a fully integrated constraint-enforcing app.
I would like to go over the most relevant tools and changes that can improve your developer experience.
Drawing on 25 years of experience as a professional musician and record producer, this will be a beginner focused talk introducing the use of Scala.js and the web audio api for building Scala powered Web Audio Applications.