<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Tim Urista · Writing</title>
    <link>https://timurista.ai/writing/</link>
    <atom:link href="https://timurista.ai/rss.xml" rel="self" type="application/rss+xml" />
    <description>Field notes on managing AI-assisted software delivery: how I scope the work, what I check before anything ships, and the bugs that got through anyway.</description>
    <language>en-us</language>
    <item>
      <title>The evaluator forgot the session</title>
      <link>https://timurista.ai/writing/the-evaluator-forgot-the-session/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/the-evaluator-forgot-the-session/</guid>
      <pubDate>Fri, 13 Nov 2026 00:00:00 GMT</pubDate>
      <description>A saved-state resume exposed a fresh-start assumption in a Socratic Tutor transcript checker. A local regression fix passed 32 synthetic tests, with state validation and tutoring quality explicitly outside its claims.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 11: The rollback that made the new column lie</title>
      <link>https://timurista.ai/writing/the-rollback-that-made-the-new-column-lie/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/the-rollback-that-made-the-new-column-lie/</guid>
      <pubDate>Thu, 12 Nov 2026 00:00:00 GMT</pubDate>
      <description>An old writer can remain compatible with an expanded schema while leaving new-column reads stale. A synthetic, serial, four-row PostgreSQL 16.15 test observed the rollback window: one legacy update and one legacy insert left a new-column-only read wrong on 2 of 4 rows, while the old-column-authoritative read stayed correct on 4 of 4 in this run.</description>
    </item>
    <item>
      <title>Can you still finish when the assistant disappears?</title>
      <link>https://timurista.ai/writing/can-you-still-finish-when-the-assistant-disappears/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/can-you-still-finish-when-the-assistant-disappears/</guid>
      <pubDate>Fri, 06 Nov 2026 00:00:00 GMT</pubDate>
      <description>A structured handoff note for paused AI-assisted work, a stale-claim check, and a proposed synthetic test. No participant study has been run.</description>
    </item>
    <item>
      <title>Juniors without tickets: growing engineers when agents take the starter work</title>
      <link>https://timurista.ai/writing/juniors-without-tickets/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/juniors-without-tickets/</guid>
      <pubDate>Thu, 05 Nov 2026 00:00:00 GMT</pubDate>
      <description>The well-specified ticket was how junior engineers learned, and agents now absorb it. What the research says about learning with an AI assistant, why answer-first beats reveal-first, and the starter work I'd give a junior instead, with the gates I built into my own study tools as the worked example.</description>
    </item>
    <item>
      <title>Any app on your machine can rewrite your agent's rules</title>
      <link>https://timurista.ai/writing/any-app-can-rewrite-your-agents-rules/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/any-app-can-rewrite-your-agents-rules/</guid>
      <pubDate>Wed, 04 Nov 2026 00:00:00 GMT</pubDate>
      <description>Opening Postman's desktop app turned on Claude Code and Codex plugins and wrote a startup hook, without asking. I read the issue, checked my own machine, and built a small open-source tool that notices when anything changes what your coding agents do.</description>
    </item>
    <item>
      <title>Architect of Intent: software engineering isn't ending, the typing is</title>
      <link>https://timurista.ai/writing/architect-of-intent/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/architect-of-intent/</guid>
      <pubDate>Sat, 31 Oct 2026 00:00:00 GMT</pubDate>
      <description>A viral preprint says software engineering is ending and the human becomes an intent architect. I read it: one author, a title softened in six days, and one benchmark number that explains the job better than the headline. What intent architecture looks like in a real repo, and what it changes downstream.</description>
    </item>
    <item>
      <title>Hand the next owner a broken run</title>
      <link>https://timurista.ai/writing/hand-the-next-owner-a-broken-run/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/hand-the-next-owner-a-broken-run/</guid>
      <pubDate>Mon, 26 Oct 2026 00:00:00 GMT</pubDate>
      <description>Reassigning code owners shows who is responsible, not whether they can recover anything. A departure drill: give the next steward one known failed run, no access to the previous owner, and record where it stalls. A synthetic version with six levels of guidance, and what a pass can and can't prove.</description>
    </item>
    <item>
      <title>The row that never reached the comparison</title>
      <link>https://timurista.ai/writing/the-row-that-never-reached-the-comparison/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/the-row-that-never-reached-the-comparison/</guid>
      <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
      <description>A dual-write migration check that compares rows present in both stores can report a clean match while an order is missing entirely. A synthetic two-store demo with a real crash between commits, the audit that catches it, and a reconciler that repairs only from evidence.</description>
    </item>
    <item>
      <title>What happens after you press Stop?</title>
      <link>https://timurista.ai/writing/what-happens-after-you-press-stop/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/what-happens-after-you-press-stop/</guid>
      <pubDate>Mon, 19 Oct 2026 00:00:00 GMT</pubDate>
      <description>A Stop button that ends in one word hides what actually happened. A small synthetic demo of a return summary: one confirmed write, one unknown, one never sent, the actions each one allows, and why a timeout must never turn unknown into failed.</description>
    </item>
    <item>
      <title>Teaching simulated footballers to play like real ones: three review loops</title>
      <link>https://timurista.ai/writing/overtrain-review-loops/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/overtrain-review-loops/</guid>
      <pubDate>Sat, 17 Oct 2026 00:00:00 GMT</pubDate>
      <description>Ten days of Read The Games: 11-a-side matches, a decision trainer, game review on the phone, motion capture, and boxing and sword fights in the headset. The part worth copying is how I checked the AI against reality: replayable seeded games, annotated reviews, and tracked match footage, each one closing a loop with a number.</description>
    </item>
    <item>
      <title>Fitting a soccer pitch into your living room: a week of mixed reality on Quest</title>
      <link>https://timurista.ai/writing/overtrain-mixed-reality-week/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/overtrain-mixed-reality-week/</guid>
      <pubDate>Thu, 08 Oct 2026 00:00:00 GMT</pubDate>
      <description>A week building Overtrain, a mixed-reality soccer trainer for Meta Quest, plus a desktop mode and a phone app from the same code. Most of the hard work was spatial: getting the play area to sit on the real floor, inside the boundary you drew, and stay there. Here's what broke, how each fix worked, and what I'd do differently.</description>
    </item>
    <item>
      <title>When the agent finishes yesterday's task</title>
      <link>https://timurista.ai/writing/when-the-agent-finishes-yesterdays-task/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/when-the-agent-finishes-yesterdays-task/</guid>
      <pubDate>Wed, 07 Oct 2026 00:00:00 GMT</pubDate>
      <description>What should a product do when an async agent's result arrives after the user changed or cancelled the goal? A deterministic demo with 11 synthetic schedules and three admission policies, the race a pre-check misses, and the wording for current, pending, cancelled and conflict states.</description>
    </item>
    <item>
      <title>Riding to war on an indoor bike: three.js, WebXR, and a Rust/WASM renderer</title>
      <link>https://timurista.ai/writing/outrider-three-js-wasm-renderer/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/outrider-three-js-wasm-renderer/</guid>
      <pubDate>Fri, 02 Oct 2026 00:00:00 GMT</pubDate>
      <description>Outrider is a Meta Quest game where your indoor bike is the controller. Where to find its best moments, and what I learned when three.js spent too much CPU on draw calls: I wrote a lean draw loop in TypeScript and again in Rust/WASM, benchmarked all three, and the language mattered less than the leanness.</description>
    </item>
    <item>
      <title>When a weekly rebalance runs every minute: debugging a live ETF agent</title>
      <link>https://timurista.ai/writing/trendvesting-debugging-a-rebalance-loop/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/trendvesting-debugging-a-rebalance-loop/</guid>
      <pubDate>Fri, 25 Sep 2026 00:00:00 GMT</pubDate>
      <description>A live ETF agent sold 9 shares of SGOV and bought them back once a minute, 183 times in a day. How I found the loop, the four bugs behind it, the fixes and tests, and the diagnostics call that now catches all of them.</description>
    </item>
    <item>
      <title>Who pays for the KV cache? Designing showback for shared LLM inference</title>
      <link>https://timurista.ai/writing/unalloc-who-pays-for-the-kv-cache/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/unalloc-who-pays-for-the-kv-cache/</guid>
      <pubDate>Tue, 15 Sep 2026 00:00:00 GMT</pubDate>
      <description>A guide for platform and FinOps leads who have to split shared AI spend: which meter to charge by, where idle capacity goes, how to give every dollar one path into the ledger, and what a joined ledger can answer. Backed by measurements from unalloc, my open-source cost-attribution tool.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 9: timurista.ai: rebuilding this website in a day, with sign-off at every step</title>
      <link>https://timurista.ai/writing/timurista-ai-rebuilding-this-website/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/timurista-ai-rebuilding-this-website/</guid>
      <pubDate>Mon, 14 Sep 2026 00:00:00 GMT</pubDate>
      <description>How I scoped, reviewed and shipped the rebuild of this site: a framing I pulled back within the hour, numbers I deleted because I couldn't source them, a form that showed my phone number to the wrong people, and a retired Worker route that quietly shadowed the new API.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 10: unalloc: checking a cost-attribution tool before anyone quotes its numbers</title>
      <link>https://timurista.ai/writing/unalloc-validating-ai-cost-attribution/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/unalloc-validating-ai-cost-attribution/</guid>
      <pubDate>Mon, 14 Sep 2026 00:00:00 GMT</pubDate>
      <description>How I scoped and checked unalloc, an open-source tool that joins Kubernetes and LLM provider bills: nine defects caught before release, a budget-capped H100 run with a verified teardown, a paper build that refuses silent typos, and a headline I softened because no meter is ground truth.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 1: TendForm: managing a solo SaaS build to production quality</title>
      <link>https://timurista.ai/writing/tendform-managing-a-solo-saas-build/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/tendform-managing-a-solo-saas-build/</guid>
      <pubDate>Sun, 13 Sep 2026 00:00:00 GMT</pubDate>
      <description>How I scoped, reviewed and validated a HIPAA-capable form builder I built alone: the rules I wrote down, the checks I trusted, the 14 bugs that got through anyway, and the process I'd change.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 3: TigerMill: quality gates for an AI content pipeline</title>
      <link>https://timurista.ai/writing/tigermill-quality-gates-for-ai-content/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/tigermill-quality-gates-for-ai-content/</guid>
      <pubDate>Sun, 13 Sep 2026 00:00:00 GMT</pubDate>
      <description>How I defined acceptance for a novel-to-webtoon pipeline: a gate after every stage, approvals that name who made them, spend behind a human trigger, and tests that guard the defects I already paid for once.</description>
    </item>
    <item>
      <title>Human in the Loop, Part 2: TrendVesting: validating 2.5 years of production AI</title>
      <link>https://timurista.ai/writing/trendvesting-validating-production-ai/</link>
      <guid isPermaLink="true">https://timurista.ai/writing/trendvesting-validating-production-ai/</guid>
      <pubDate>Sun, 13 Sep 2026 00:00:00 GMT</pubDate>
      <description>How I review and validate an AI trading system I own: change records with production numbers, invariant tests, reconciliation audits and calibration checks, and the numbers they overturned.</description>
    </item>
  </channel>
</rss>
