Some experiments end up here.
hark - Multi agent harness
A LangGraph debate harness. Two agents take opposite sides of a claim, a third one reads both and synthesizes.
More of a langraph experiment.
AdPeek - debug the ads you see
A CLI that decodes the ad stack behind any web page - ad servers, targeting, exchanges, and tracking pixels.
Point it at a HAR export from Chrome DevTools and it prints which ad server filled each slot, what targeting was passed, which exchanges bid, and which third-party pixels fired.
Overdrive, built in C++
Overdrive that reacts to how hard you play.
Built with JUCE, runs as a VST3, an Audio Unit, or a standalone Mac app. Drive, Dynamic, Tone, Level. Zero setting modeled like an overdrive. (Per the Spinal Tap spec, the knobs may go to 11 because why stop at 10.)
Mostly an excuse to learn JUCE.
SplitSonic - Stem splitter using demucs
Stem separation with demucs, and filters that can be customized
Python on top of demucs, CLI plus a small Flask page for precision stem removal
Spotimmerse - a Spotify experience, rebuilt
A music explorer that goes behind the track.
A from-scratch take on music discovery using the Spotify API - built to serve my own purpose as someone addicted to a dozen genres at once needing nuanced information sometimes.
MoveAnalyzer - AI feedback for your chess
A Chrome extension that explains why your move was good or bad.
A chess coach that gives plain-language feedback on your games, built for players trying to get better ( like me).
Aristotle - a WhatsApp AI bot in Python
ChatGPT-style answers, delivered where I actually message.
This was built when chatgpt function calling first came out eons ago. A Python + Twilio bot that brings an LLM into WhatsApp, so the assistant lives in the app I already use instead of a browser tab. Served me well on a internet-challenged trip to Peru.
AI Paper Scraper
Keeping up with AI research without drowning in it.
A tool that scrapes and digests the latest AI papers. Needs a lot of work.
Liber Opus - a book recommender fed by my own Goodreads
Rate books, get something back that isn’t just the bestseller list.
FastAPI and React, SQLite underneath, Gemini doing the recommending. I import my Goodreads CSV, rate a pile of books, and it works out what to suggest next. This needs a lot more work and Im still trying to find a customized book reccomender.
My Privacy Diary - your browsing history, read back to you
An LLM profiling you from your own browser export.
Built over a weekend at the Seattle AI OSS Hackathon . You hand it your browsing data and GPT-4o works out the patterns. It runs on the same data adtech uses to profile you, which is most of why I wanted to build it. We didn’t place.
Earlier experiments
Deep-learning music generation (LSTM/RNN shred solos that got featured in an interesting podcast, a character-level RNN that writes Beatles lyrics), a Hugging Face + mlflow text summarizer, and assorted data-engineering utilities. Browse them under Writing → Code.
Audio
I build things like tonellm, an LLM that turns a text prompt or a reference track into amp and preset settings, and run tone tests, playthroughs, and experiments. I’ve spent years as a tone chaser, in bands you’ve never heard of, and AI is helping provide a shortcut ot achieving some of those tones
Recent: Unlocking the Groove, on late-80s and early-90s tones. Playthroughs and tone tests end up on YouTube.
First Principles
An instrumental project built around composition-driven audio engineering and chasing great tones. Mostly dormant now until further notice Listen on Spotify.
Behind the music: Cluster · Replay · Blue Nile
Gear
Mini-glossary of audio production terms · ToneWood amp review · Alesis V49
These are personal projects, built on my own time using only publicly available tools and data - not affiliated with, endorsed by, or built with anything from my employer. Opinions my own.