Chris Martin

Quick update on our travels:


Julie just spent two days at ZuriHac teaching a fantastic six-hour introduction to Haskell. These classes were live-streamed, but if you missed them you can watch the recordings:

Edited versions will also be coming out later.


This week Julie and I are teaching at Haskell Summer School (aka Monadic Party). The classes will be recorded and released later.

  • Julie will start with an introduction to types, typeclasses, and “thinking algebraically,” because it is so important to have a deep appreciation of these concepts. Then she will go into depth on everybody’s favorite functors – including Applicative, Monad, Bifunctor, Contravariant, and Profunctors – and show how the opaleye library puts profunctors into practice.

  • I’ll be talking about running Haskell on servers, starting with an introduction to the concepts of Nix and NixOS, then introducing the deploy strategy for EC2 that I developed in my first Type Classes project. Then we’ll look at some examples of Haskell server code - a basic web server with Scotty, how to use systemd-activated sockets to deploy with zero downtime, how to write daemons for background jobs, and logging to journald (with emphasis on keeping it simple).

Much of this is already Type Classes content, and much that isn’t yet will be. In particular Julie’s course is going to form the core of our curriculum for students who are just getting started in Haskell.


After this week, we’ll be returning to our normally scheduled programming: Releasing the last lessons of the Validation course, and our next project in which we’ll be building multiple clocks to compare Haskell native GUI libraries.