Projects
Small games I'm making for fun, and software I've written and given away.
Games
Clutch
Four quick sports challenges you can finish in about a minute: hit 4 home runs in 10 pitches, score 16 points in 8 shots before the buzzer, keep a 10-shot tennis rally alive, and score 4 of 5 penalties against a keeper with habits. A new daily challenge every day, or practice whenever you like. Keyboard or touch; bests stay on your device.
Lantern Barge
Three rounds with Tamsin “Tugboat” Rourke on a lantern-lit river barge. Punch and guard with your real fists in front of the webcam, or play with the keyboard (F/J straights, D/K hooks, Space to guard). Hand tracking runs in your browser; video never leaves your device.
Open source
My main open-source work is agent infrastructure at Norvia Labs, starting with Forge, a terminal AI coding environment in Rust. It has its own home; this page is for everything else.
OpenLemma
Teaches complex concepts visually. Ask about a concept, or bring a paper, article or chapter, and it builds a short, hands-on lesson: a live model for each idea, an explanation with an exact quote from a real source, and a chance to try it yourself. The source is on GitHub.
pydgraph
The first Python client for the Dgraph graph database. I wrote the first versions and packaged it for pip; Dgraph Labs later took it over, and it is now their official Python client.
Earlier
- TwitterSentimentTweet sentiment-analysis toolkit from early NLP experiments, with its training corpora.
- SpeechifyBrowser helper that adds speech-to-text to every input field.
- async_http_proxyAsync Python HTTP proxy with Docker, tests and a live
/statspage. - mDataRecoveryTiny command-line backup utility in Python.
- goloxThe Lox language from Crafting Interpreters, in Go.
- collectionsYet another Go collections package.
- angelicaPython wrapper over Riak and memcached.
- BundlerExecutable bundle generator.