All Articles

Read my recent thoughts on design, development, and the tech industry.
What Happened When I Measured My Vision Pipeline
7 min read

What Happened When I Measured My Vision Pipeline

I had been saying "roughly 90% accurate" for months without measuring it. The eval showed that effort and model choice both move the result more than I expected, and that one config scored 59.4%, 59.4% and 90.6% on the same page.
Open-Sourcing One Package from a Private Monorepo
9 min read

Open-Sourcing One Package from a Private Monorepo

You want one package public and the rest of the monorepo private, without copy-paste drift and without giving up the monorepo. git subtree split does it, the monorepo stays the source of truth, and the whole thing fits in a script with four guards.
Rendering Bhatkhande Notation Without a Font
6 min read

Rendering Bhatkhande Notation Without a Font

Bhatkhande notation has always needed a custom font on the web, which means the text is not really text. Swarlipi takes an ASCII grammar and renders real Unicode letters in five scripts, with every mark drawn in CSS and inline SVG.
Identifying the Raga from the Notes
7 min read

Identifying the Raga from the Notes

A weighted heuristic gets the raga right 67.3% of the time. Reranking against a corpus of published compositions takes it to 72.7%, which is the version I can actually ship — and on a 55-composition eval that number carries an interval wide enough to be worth writing down. Here is the method and the number, including the unflattering parts.
Scanning Bhatkhande Notation with Claude Vision
11 min read

Scanning Bhatkhande Notation with Claude Vision

Bhatkhande notation isn't a character set, so OCR doesn't apply and no model has meaningful training data on it. Four things took this pipeline from confidently wrong to useful, and the one that mattered most was giving the model a reference in the same modality as the problem.
Building Highlight Reels in the Browser with WebCodecs
5 min read

Building Highlight Reels in the Browser with WebCodecs

A highlight reel needs to know which moments mattered. The scoreboard already knew, so the clips come from replaying the scoring engine over the event log — and the render happens client-side with WebCodecs, no server and no upload.

© 2019-2026 Baljeet Singh. All rights reserved.