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.
This talk is my slightly expanded version of that statement, and should hopefully understand what "Free" is, what purpose it serves and where it came from.
In this session, I will guide you through two recent additions to Ox that I helped implement: channel operators and retries.
Listen to a story of how we have dealt with 201 obstacles allowing us to run multithreaded programs natively!
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.