Professional

Professional

Production-grade patterns from real systems. Architecture decisions, debugging stories, and hard-won lessons.

Building an AI Dungeon Master That Lives Inside Minecraft
Professional ai ml 14 min

Building an AI Dungeon Master That Lives Inside Minecraft

How I built Player2 — a Fabric mod + Python daemon that puts a tool-calling LLM inside Minecraft as a real in-game companion with world manipulation and memory.

minecraft ai llm
Agent Core v5.4: When Data Augmentation Backfires
Professional ai ml 24 min

Agent Core v5.4: When Data Augmentation Backfires

We 6.5x'd our training data and made the model safer but less capable. Here's the root cause, the numbers, and the v5.5 fix plan.

lora fine-tuning tool-calling
Agent Core v5.3: What We Learned Training a Tool-Calling LoRA on Real Data
Professional ai ml 22 min

Agent Core v5.3: What We Learned Training a Tool-Calling LoRA on Real Data

Concrete training results comparing v5.2 and v5.3 of Agent Core — a universal tool-calling LoRA for 8B models. What improved, what regressed, and why SFT has a ceiling.

lora fine-tuning tool-calling
Self-Distillation: Mining Your AI Conversations for LoRA Data
Professional ai ml 20 min

Self-Distillation: Mining Your AI Conversations for LoRA Data

Your real coding agent interactions are the highest-quality training data you'll ever have. Here's the 4-stage pipeline that converts conversation histories into structured LoRA training data — zero cost until Stage 3.

lora fine-tuning training-data
Debugging AudioContext Memory Leaks in React
Professional javascript typescript 15 min

Debugging AudioContext Memory Leaks in React

The app leaked 2MB every mode switch. The culprit: an AudioContext nobody was closing. Here's the full debugging story — from symptom to fix.

react debugging memory-leaks
Credential Bridging: How AI Agents Access Secrets Safely
Professional cybersecurity 16 min

Credential Bridging: How AI Agents Access Secrets Safely

AI agents need API keys to work. But handing over your .env file is a security nightmare. Here's how I built a zero-knowledge credential bridge.

security credentials ai-agents
Mechanistic Interpretability: How Language Models Say 'No'
Professional ai ml 18 min

Mechanistic Interpretability: How Language Models Say 'No'

When an AI refuses a harmful request, what's actually happening inside? I built a toolkit to find out — and the answer is more mechanical than you'd think.

interpretability abliteration safety
Semantic Search Across a 28TB Personal Archive
Professional ai ml 18 min

Semantic Search Across a 28TB Personal Archive

Finding a specific moment in 28TB of media used to mean hours of scrubbing. Now I type a question and the system finds it. Here's the architecture.

semantic-search qdrant embeddings
Time-Decay Signals in Real-Time Trading Systems
Professional javascript typescript 17 min

Time-Decay Signals in Real-Time Trading Systems

A signal from 5 minutes ago might be noise now. Here's how I built a time-decay scoring system that separates actionable intelligence from stale data.

trading signals sse
Building a Video Intelligence Pipeline: Scene Detection + Audio + Face Recognition
Professional ai ml 22 min

Building a Video Intelligence Pipeline: Scene Detection + Audio + Face Recognition

Three standalone tools — SaySee, Cairn, and Tactical ID — combine into a full video intelligence pipeline. Here's how they fit together.

video-intelligence scene-detection audio-classification
Documentary Beat Indexing — 17-Class Scene Taxonomy with FCP XML
Professional ai ml 16 min

Documentary Beat Indexing — 17-Class Scene Taxonomy with FCP XML

ScorsAI classifies documentary footage into 17 scene types and generates Final Cut Pro XML markers — turning hours of raw footage into a searchable beat sheet.

documentary scene-classification fcp
SaaS Billing with Stripe — Checkout, Webhooks, Tier Sync
Professional web development 18 min

SaaS Billing with Stripe — Checkout, Webhooks, Tier Sync

I wired Stripe into a market data service: checkout sessions, webhook handlers, and tier synchronization with Supabase. Here's the production setup.

stripe saas billing
Multi-Stage Dockerfile: From 1.2GB to 180MB
Professional devops 14 min

Multi-Stage Dockerfile: From 1.2GB to 180MB

OMNI's Docker image was 1.2GB. Three stages — deps, build, runtime — brought it to 180MB. Here's the exact Dockerfile with annotations.

docker dockerfile optimization
Fusing 25 Live Data Feeds on a 3D Globe — Layer Pipeline Architecture
Professional web development 25 min

Fusing 25 Live Data Feeds on a 3D Globe — Layer Pipeline Architecture

OMNI renders 25 real-time data layers on a CesiumJS globe — AIS ships, aircraft, weather, earthquakes, wildfires. Here's the layer pipeline that makes it work without melting the browser.

cesium geospatial real-time
Natural Language Commanding: Building an NLP Action Dispatcher
Professional ai ml 20 min

Natural Language Commanding: Building an NLP Action Dispatcher

OMNI's LENS command palette lets users type natural language to control 84 platform actions — fly to locations, toggle layers, run queries. Here's how the dispatcher works.

nlp command-palette ai
Building a Production API Proxy: Rate Limiting, Caching, and SSRF Protection
Professional cybersecurity 16 min

Building a Production API Proxy: Rate Limiting, Caching, and SSRF Protection

OMNI proxies 13+ external APIs through Next.js API routes. Here's how I built rate limiting, response caching, and SSRF protection into the proxy layer.

api-proxy security rate-limiting
Zustand at Scale: 4-Slice Architecture for a Real-Time Platform
Professional web development 16 min

Zustand at Scale: 4-Slice Architecture for a Real-Time Platform

OMNI manages globe state, layer toggles, panel visibility, and user preferences across 25+ data sources. Here's the 4-slice Zustand architecture that keeps it sane.

zustand state-management react
Race Conditions in Cesium Click Handlers — A Three-Week Bug Story
Professional web development 14 min

Race Conditions in Cesium Click Handlers — A Three-Week Bug Story

Clicking an entity on the OMNI globe sometimes selected the wrong one. The bug lived in a closure over stale state. It took three weeks to find.

cesium race-condition debugging
Imperative vs Declarative 3D: Why CesiumJS Crashes at Scale
Professional web development 12 min

Imperative vs Declarative 3D: Why CesiumJS Crashes at Scale

CesiumJS has a React wrapper called Resium. It works fine for demos. It will destroy your production app. Here's why I went fully imperative.

cesium resium react