Why enable the camera?
The desert photos are 3D: each has a depth map. With your camera on, the scene follows your head like a window, so the near dunes slide against the far ones as you move.
It all happens in this tab. Each frame is shrunk to 32 by 32 pixels and turned into edges; only the direction you moved is kept. Nothing is recorded or sent.
now moving with scroll

CHRISDILGER
software engineer · builds with a fleet of agents
How I build
I plan in beads and ship with a fleet of agents.
Games you play with your phone, a book printed to order, and a digital twin of a house. Scroll for how it gets built.
See the projects Read the writingHow I got here
From one algorithm to a herd of agents.
- 2018 · University
Evolutionary algorithms
Studying at Swinburne. My first research write-up: a genetic algorithm that reduces data sets without losing what matters.
- 2018 · Abroad
Sarawak, Brunei, Boston
A social innovation project in Kampung Stutong Baru, then an exchange to Northeastern. Learning to build for people who are not me.
- 2019 · Hackathons
Checkface
We turned hash checking into something your brain does for free: a hash becomes a generated face you recognise at a glance. It grew into facemorph.me.
- 2020 · Teaching
Explaining things
Data engineering bootcamps and plain-English explainers like "What is an API?". Teaching is how I check I actually understand something.
- 2021 · Measuring
M1 vs i7 4790k
Benchmarking a new Mac against an old desktop, published in English and Chinese. Opinions are cheap, numbers are better.
- 2023 · Consulting
Data and platforms
Data engineering and consulting for teams who need systems that keep working after the consultant leaves.
- 2025 · Agents
Claude in a loop
continuous-claude: an agent running unattended, opening pull requests while I sleep. The bottleneck moved from typing to deciding.
- 2026 · Now
Post SaaS, not prompts
Plans live as beads, a herd of agents builds, I steer. Games, a book, a house twin, all shipping in parallel.
01 · Plan
Every idea becomes a bead first.
Beads (Jeffrey Emanuel's br, beads in Rust) is an issue tracker that lives in git, with real dependencies. br ready lists what is unblocked, so any agent can pick up the next piece without me explaining the plan again.
0 ready to claim
02 · Build
Then a herd picks them up.
herdr and ntm keep eight agent panes running side by side, each claiming a ready bead. I review, steer and merge. They type.
0/8 merged


03 · facemorph.me
A GPU server's job, now done by your phone.
Type any words and facemorph.me turns them into a face that does not exist, then morphs smoothly to the next. It used to need a server with a GTX 1080. The new version runs StyleGAN2 and encoder4editing entirely on your device: nothing is uploaded, and the server can retire. The port was done with autoresearch loops: agents iterating against fidelity checks until the phone matched the server.
04 · Physical Soccer
Anything can be a controller.
Host the match on the TV. Friends join with their phones, a keyboard, a pad, or half a touchscreen: every button is its own player. Each kickoff deals a new mix of footballers or forklifts, walker frames, rain and body quirks, and one button drives whatever you get. Twenty-two playtest rounds and counting.




05 · Joystick Jammers
The TV is the arena. Phones are the pads.
A party racer and demolition derby for sixteen-plus players. Open a room, scan the QR, race before the couch gets cold. The new version takes it to the outback: ink outlines, halftone shading and red dirt, split-screen on the TV, twin sticks on your phone. No installs.
jammers.dilger.dev06 · Dilger Books
26 letters. 26 flying machines.
Aviation ABCs, written by Daniel Dilger and published by me: a 20 × 20 cm hardcover picture book from Air Tractor to Zero, printed to order. Its own storefront, page-by-page peek inside, and Stripe checkout. A little book with a big sky.
books.dilger.au



07 · Dishmate
Small tools that solve a real annoyance.
Dishmate is a set of dishwasher decision trees: a load advisor, a troubleshooter for cloudy glasses and white film, and advice on detergent, rinse aid and hard water. A dependency-free TypeScript library with an offline-capable demo. (Spoiler: use powder, run the hot tap first, and stop pre-rinsing.)
Try the demo08 · House twin (private)
A digital twin of a real house, from the drawings.
Walk the model and its street, switch between slab, frame and finished, mark where the power points should go, and drive a ute and trailer down the side to check it fits, and turn any view into a photographic garden visualisation. It is generated from code, so every element has a stable ID and changes show up as diffs. Rust and Bevy on WebGPU, in the browser. It stays private: a model this detailed would give away where we live.

engine frameAI visualisation · draft proposal


09 · On stage
I talk about weird stuff, in depth.
Hardware wallets and why a secure element is a trade-off. AI that morphs faces in real time. Data governance nobody asked for. Cloud platforms that actually scale. Lately: what happens when you hand a codebase to a swarm of agents and a well-shaped plan. Happy to bring any of it to your meetup or conference.
10 · Writing
Notes with the workings shown.
scroll or drag to turn · 26 posts
2026-10-07 Choosing a quiet fan with jet physics
2026-10-06 A digital twin of our house, built from the drawings
2026-10-01 Planning with beads: how Physical Soccer and Joystick Jammers get built
2026-02-06 · archive Your Prompts Do Not Matter (Anymore)
2021-08-23 · archive New Mac M1 or old Intel i7 4790k - Which would win?
2021-08-12 · archive 新的Mac M1还是老的Intel i7 4790k——哪一个会赢?
文章
2020-07-02 · archive Working From Home: 🔥💻
2020-04-27 · archive What is an API?
2019-08-30 · archive Hashing Faces: How students made hash validation subconscious with machine learning
2019-08-17 · archive Hackathon Starterpack
2019-02-08 · archive Project Ideas
2019-01-21 · archive Hackathons for Melbourners
2018-10-20 · archive Data Science Careers Melbourne
2018-08-31 · archive Social Innovation: Kampung Stutong Baru
2018-07-30 · archive Brunei Bling
2018-06-25 · archive Guide to Visiting Kuala Lumpur
2018-05-24 · archive Travel Insurance from Swinburne to Northeastern
2018-05-11 · archive Implementation of an Evolutionary Algorithm for Data Reduction
2018-05-08 · archive Interpreted vs Compiled - Is There a Difference?
2018-05-03 · archive Efficiency of Tree Data Structures in Data Reduction with an Evolutionary Algorithm
2018-05-02 · archive Overview of OOP
2018-04-30 · archive Structured Programming
2018-04-30 · archive Scholarships for Overseas Travel
2018-04-21 · archive UX Resources
2018-04-17 · archive Canon EOS M6 Review
2018-04-16 · archive Creating a Ghost Blog