Blog
Writing
Notes on building AI agents, apps and products, written from the work.
-
Keeping a fleet of wearables synced through phones that want to sleep
BLE reconnection, iOS background modes and Android Doze, device buffering, idempotent uploads, clock drift, and fleet monitoring that catches a quiet device.
-
Building an evaluation set from past cases, and keeping it alive
How we build and keep an evaluation set for an LLM feature: choosing cases, labelling with the people who do the job, size, and growing it from production.
-
Classifying messages at line rate
Putting a classifier inline in a messaging platform: the millisecond budget, small models on your own traffic, the uncertain tail, fail-open versus fail-closed.
-
Computing a personal HRV baseline that a coach can act on
Why population norms fail for HRV, how to choose the night-time window, how many nights a baseline needs, what to exclude, and how a deviation becomes an alert.
-
Consent and access logs in a health platform
Consent as a versioned record, roles for client, coach, clinic and admin, an access log the user can read, deletion that reaches backups, and audit trails.
-
Five POS integrations and one definition of a sale
What integrating Toast, Square, Clover, Lightspeed and Syrve taught us about tokens, backfill, what counts as a sale, time zones and reconciliation.
-
How a mobile proxy on an Android phone rotates its IP
Carrier-grade NAT, how an Android phone gets a new public address, scheduled and remote rotation, sticky sessions, and serving proxy and VPN traffic from it.
-
How this site is built, from Markdown to a Cloudflare Worker
Astro pages served as Worker assets, validated content, a build audit, a generated sitemap and llms.txt, a hashed CSP and a deploy that tells IndexNow.
-
Matching invoice lines to inventory items is harder than reading them
Why matching invoice lines to inventory items is harder than reading them: supplier naming, pack sizes, candidates, scoring, thresholds and corrections.
-
Reading supplier invoices with an LLM, from photo to structured lines
The pipeline from a photographed or PDF invoice to structured lines: capture, pages, vision versus OCR, the schema, citations and accuracy per field.
-
How to put an AI agent inside a workflow you already run
Pick the workflow by its exceptions, build an evaluation set from past cases, run in shadow mode, widen permissions slowly, and what goes wrong.
-
Where LLMs fit in SMS, voice and messaging platforms
Traffic classification, abuse detection, support agents and provisioning in messaging platforms, and how latency and volume decide which model goes where.
-
One person with AI agents can build what used to take a department
Why one person who writes code and runs agents can now ship products that needed a team of ten, what still needs people, and how S12V Labs is set up around it.
-
What an AI MVP costs in 2026, and where the money goes
Ranges for an AI MVP in 2026, in weeks and tens of thousands of dollars, where the budget goes, what to cut and what you cannot cut.
-
What medical-grade wearable data means for the app you build on it
What CE-MDR and FDA clearance change versus consumer wearables, what continuous HRV, blood pressure and sleep data look like in practice, and what to build.