EMAH
Ensemble of Machine And Human
This site is a log of what I’m building, and what I learn along the way.
Why this exists
In the last week of January 2025, I was burnt out with work, so I did what I usually do to recover: took my workstation to a small cottage in the countryside and built by myself for a week, with no work or family commitments.
Three or four glorious days of working, sleeping, working out, and a wood heated hot tub. Highly recommended for the borderline-introvert's recovery.
I had OpenAI API access, DeepSeek (when it was all the rage), v0, and Windsurf at the ready.
I'm a constant tinkerer - I explore a lot of product ideas, and I kept hitting the same issue using the models: as context grew, focus drifted.
My documentation was patchy. I knew what good looked like, but I did not want to spend all my time documenting everything manually and maintaining an up to date information source.
So I asked:
- Could I build a tool that auto-scaffolds product docs, then keeps them updated as specs evolve using embeddings + RAG to decide which files to change? (No.)
- Could I develop prompting approaches that gave consistent quality across models and model types? (Also no.)
But I did have fun, and I learned a lot.
I got access to the OpenAI beta in May 2021 and, in hindsight, did not do enough with it. I've used Chat since 2023, Codeium/Windsurf and v0 since 2024, and tried multiple agentic approaches through 2025 with mixed results.
I have used AI to design and deliver real tools for internal teams and external clients, and I have presented across the company on AI for product prototyping.
2026 feels different. Agents are more capable than ever, real progress is now possible, and I have too many ideas and not enough execution time.
EMAH is never going to become a product management platform. (Linear can do that.)
It is simply a place to publish projects, experiments, and working notes as I build.
Projects & Experiments
Some are product-shaped. Some are active probes. Some are dead ends worth documenting.
Kairo
Manifesto and implementation doctrine for the Kairo label.
Kairo Explained
Client-facing explainer of what Kairo is and what it is not.
Critz Arcade
A bluetooth-web enabled retro arcade game you control with your bike's smart trainer.
Critz
Online multiplayer bike racing knockout tournaments in Three.js.
Bumpy
Crowd-sourced road surface quality mapping using phone accelerometer data.
Diamond Handbook
Diamond buying content play with diamond pricing benchmarks.
Oh Zoe
Personalized children's books using the Photoshop API.
wxtxt
Ideal weather notifications from forecasts for outdoor adventure.