Michael Haddon

Software engineer | Go, languages & infrastructure

Currently building: Floatyboat, a dataflow language and compiler

I build:

  • interpreters and compilers
  • software and developer tools
  • systems that stay up
  • Go services
  • infrastructure that teams rely on

Notable projects include:

  • Pipit, an open-source Go interpreter
  • Piko, the Go framework that renders this page
  • The Replay Lattice, a type system for floating-point reproducibility
  • maintaining the Dutch national ports infrastructure
  • an Audi telemetry platform on 400+ servers
Michael Haddon

Based in

Jersey, Channel Islands

Exploring

Languages, execution and reproducibility

Currently building

Floatyboat, a dataflow language and compiler

Daily driving

Linux (Fedora), since the age of 18

Twenty years of building,
for the love of the game

I've been writing software since I was twelve. Games first, then websites, then the companies and tools around them. At heart I'm a software engineer, programming is the thing I'd do for fun, and mostly do.

For the last decade I've also built and run the infrastructure under other people's products, working with Kubernetes and cloud services and keeping them reliable. That has meant fintechs, the Dutch national ports, an Audi data platform and a run of consultancies. I like owning the whole picture and being the person who still understands it, end to end, at 3am.

About five years ago I started Piko. Its templating system got me into lexers, then an interpreter called Pipit grew out of it. These days I’m also working on Floatyboat, a language and compiler, and writing about what I learn along the way.

The stack I reach for

GoKubernetesCTerraformAWSGCPLinux

Things I've made and run

Tools & independent work

The web framework my wife and I kept rebuilding for client after client, folded into one binary. It powers a lot of the client work I ship and renders this very page, the house and the CV you can download. Server-side rendering, single-file components, its own PDF engine, no build pipeline the size of a small moon.

GoTemplatesDeveloper tooling

An interpreter for the Go programming language: run Go like a scripting language, no compile step, straight from source. It began inside Piko, from wanting a faster feedback loop without leaving Go. Now a separate bytecode compiler and runtime, open source under Apache 2.0.

GoBytecodeInterpreter

Currently, I’m also building Floatyboat, an unreleased dataflow language and compiler.

More about the projects

The studio my wife and I have run since 2022, and the home for the open-source tools I build: Piko, Pipit and the rest. Our projects grow out of practical work and a shared curiosity about how software is made.

Michael Haddon and his wife on a helicopter flight

Say hello!

I enjoy talking about languages, runtimes, and the things underneath software.

Have a question or something interesting to share? Get in touch.