Writing

Notes from the projects: what was measured, what broke, and what I changed because of it.

Looking for a method you can follow step by step? See the guides →

  1. How unofficial UET GPT uses retrieved sources, reranker thresholds and refusal instructions, with model fallback and a proposed evaluation method.

    AI & RAG7 min read

  2. How to build scraping and monitoring pipelines that fail loudly instead of quietly: SQLite WAL mode, bounded retries, a first-run baseline and confirmed sends.

    Automation & Monitoring8 min read

  3. Three patterns I use for AI web apps with Next.js 15, React 19 Server Components, streaming UI, and strict TypeScript.

    Full-Stack Web8 min read

  4. Out of the box, Tesseract beat RapidOCR on scanned book spreads and ran 8× faster. With layout handling added, RapidOCR won on characters. Per-page numbers and the script.

    Document Intelligence8 min read