> "a small-circulation print or online publication that is produced through noncommercial means and is meant to appeal to a niche audience"
So then, is "causally ordered message delivery", "introduction to choreographic programming", and "Fighting Faults in Distributed Systems" too niche for HN? Hand-crafted with human sweat and tears, no AI. Is that the reason then perhaps for the silent comment thread, i.e. TL;DP, "too long, doesn't prompt"?
... And somewhat disappointed by the conclusions. A Java compiler (sans an overview of limitations/capabilities, but I understand the limitations of the format), and a... Haskell library, which, unfortunately, is incredibly irrelevant to me.
How is this subject approached in practice? I'm fairly familiar with authentication (generally handed off to a bespoke service + library that abstracts away most of this for the end programmer), but my generalist experience with other coordination problems between distributed systems is that programmers tend to not be particularly rigorous about them - and try their best to break down cross-service relationships to very, very simple-to-implement-in-a-bespoke-fashion cases.
A zine (pronounced like the last syllable in “magazine”) is “a small-circulation print or online publication that is produced through noncommercial means and is meant to appeal to a niche audience”. This page collects zines created by my students and me, all free to download, print, and distribute!

This zine is an introduction to causally ordered message delivery, a fundamental abstraction for distributed programming, and is the result of a six-month collaboration between my student collaborator Ayush Manocha and me, published in April 2026. We talk about what exactly causally ordered message delivery is, what problem it solves, and a few ways to implement it: two classic ways and one new way!
If you want a printed zine, download the booklet-formatted version and print double-sided with short edge binding. You’ll get double-sided pages that will be ready to fold into a booklet.

This zine is an introduction to choreographic programming, and is the result of a six-month collaboration between my student collaborator Ali Ali and me, published in December 2024. Choreographic programming lets programmers describe the behavior of a message-passing system as a single, unified program that describes all the participants in the system and how they interact!
If you want a printed zine, download the booklet-formatted version and print double-sided with long edge binding. You’ll get double-sided pages that will be ready to fold into a booklet.
You may also be interested in “Fighting Faults in Distributed Systems”, another zine created by Ali Ali for my winter 2024 undergraduate distributed systems course.
If you want zine creation to be part of your teaching and research practice, I’ve written some things that might be of use to you.
My blog post “My students made zines, and so can you(rs)!” discusses how I’ve experimented with zine creation as an optional assignment in my undergrad distributed systems course – an idea I originally got from Cynthia Taylor at Oberlin College, and which has since been adopted by Peter Peterson as an optional assignment in his computer security and operating systems courses at the University of Minnesota Duluth.
My NSF CAREER grant proposal discussed my plans for integrating zine creation into my research and teaching practice. Feel free to contact me to ask for a copy of the REU supplemental funding request that made the “Communicating Chorrectly” zine possible (by making it possible for me to pay my awesome student collaborator).