<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://bharath.sh/</id>
    <title>thinking out loud</title>
    <updated>2026-07-30T17:02:58.419Z</updated>
    <generator>Feed for Node.js</generator>
    <link rel="alternate" href="https://bharath.sh/"/>
    <link rel="self" href="https://bharath.sh/atom.xml"/>
    <subtitle>Product @ Okta | Developer Experience &amp; Tooling | Identity Platform Strategy</subtitle>
    <rights>All rights reserved 2026, thinking out loud</rights>
    <entry>
        <title type="html"><![CDATA[the agent surface map: pick the cell before the prompt]]></title>
        <id>https://bharath.sh/writing/agent-surface-map</id>
        <link href="https://bharath.sh/writing/agent-surface-map"/>
        <updated>2026-07-29T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Most "agent" products fail by shipping the wrong cell's interface and credentials. Surface and autonomy choose the product before the model does.]]></summary>
        <category label="ai agents" term="ai agents"/>
        <category label="product management" term="product management"/>
        <category label="agent experience" term="agent experience"/>
        <category label="developer tools" term="developer tools"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[the one line 95% of agent skills are missing]]></title>
        <id>https://bharath.sh/writing/agent-skills-missing-line</id>
        <link href="https://bharath.sh/writing/agent-skills-missing-line"/>
        <updated>2026-07-06T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I scanned 200 public SKILL.md files. 96% fail lint, and 95% of the valid ones omit the "Use when…" line that routes activation.]]></summary>
        <category label="ai agents" term="ai agents"/>
        <category label="agent skills" term="agent skills"/>
        <category label="developer tools" term="developer tools"/>
        <category label="open source" term="open source"/>
        <category label="agent experience" term="agent experience"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[you can't charm an agent]]></title>
        <id>https://bharath.sh/writing/you-cant-charm-an-agent</id>
        <link href="https://bharath.sh/writing/you-cant-charm-an-agent"/>
        <updated>2026-06-13T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Agents retry, fail, and disappear without a complaint. Their behavior creates a product discipline I call agent experience.]]></summary>
        <category label="ai agents" term="ai agents"/>
        <category label="agent experience" term="agent experience"/>
        <category label="developer experience" term="developer experience"/>
        <category label="devtools" term="devtools"/>
        <category label="product management" term="product management"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[your 404 page has a blind spot]]></title>
        <id>https://bharath.sh/writing/agent-404</id>
        <link href="https://bharath.sh/writing/agent-404"/>
        <updated>2026-03-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Mintlify says AI agents account for 48% of docs traffic. A normal 404 gives them no useful recovery path.]]></summary>
        <category label="ai agents" term="ai agents"/>
        <category label="developer tools" term="developer tools"/>
        <category label="open source" term="open source"/>
        <category label="404" term="404"/>
        <category label="web infrastructure" term="web infrastructure"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[is your 'insight' trivia?]]></title>
        <id>https://bharath.sh/writing/insights</id>
        <link href="https://bharath.sh/writing/insights"/>
        <updated>2026-01-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[An observation becomes an insight when you can explain the mechanism, predict a different outcome, and change a decision.]]></summary>
        <category label="Product Management" term="Product Management"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[claude code's DX is too good. and that's a problem.]]></title>
        <id>https://bharath.sh/writing/claude-code-dx</id>
        <link href="https://bharath.sh/writing/claude-code-dx"/>
        <updated>2025-12-14T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Claude Code nails developer experience. But as capabilities grow, so does complexity. The best tools disappear - they don't become things you have to manage.]]></summary>
        <category label="B2B" term="B2B"/>
        <category label="Tech" term="Tech"/>
        <category label="AI" term="AI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[vercel vs cloudflare: two philosophies of building for developers]]></title>
        <id>https://bharath.sh/writing/vercel-vs-cloudflare</id>
        <link href="https://bharath.sh/writing/vercel-vs-cloudflare"/>
        <updated>2025-10-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Neutral observations on the Vercel vs Cloudflare race to win the edge and developer mindshare]]></summary>
        <category label="Tech" term="Tech"/>
        <category label="Competition" term="Competition"/>
        <category label="DX" term="DX"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[why you shouldn't outsource your thinking to AI]]></title>
        <id>https://bharath.sh/writing/ai-thinking-trap</id>
        <link href="https://bharath.sh/writing/ai-thinking-trap"/>
        <updated>2025-10-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[AI speeds up execution. Letting it frame the problem before you do can weaken the judgment product teams are paid to develop.]]></summary>
        <category label="Product Management" term="Product Management"/>
        <category label="AI" term="AI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[building at the edges]]></title>
        <id>https://bharath.sh/writing/building-at-the-edges</id>
        <link href="https://bharath.sh/writing/building-at-the-edges"/>
        <updated>2025-09-10T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Large B2B platforms own broad categories. Smaller teams can win workflows those platforms neglect.]]></summary>
        <category label="B2B" term="B2B"/>
        <category label="Tech" term="Tech"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[borrowed happiness]]></title>
        <id>https://bharath.sh/writing/borrowed-happiness</id>
        <link href="https://bharath.sh/writing/borrowed-happiness"/>
        <updated>2025-07-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Social feeds turn other people's milestones into instructions. You can spend years chasing goals that someone else chose.]]></summary>
        <category label="life" term="life"/>
        <category label="happiness" term="happiness"/>
        <category label="philosophy" term="philosophy"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[product strategy trap]]></title>
        <id>https://bharath.sh/writing/product-strategy</id>
        <link href="https://bharath.sh/writing/product-strategy"/>
        <updated>2025-06-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[A polished strategy document cannot replace contact with users, competitor tradeoffs, and command of the domain.]]></summary>
        <category label="product strategy" term="product strategy"/>
        <category label="product management" term="product management"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[the MCP anti-pattern]]></title>
        <id>https://bharath.sh/writing/mcp</id>
        <link href="https://bharath.sh/writing/mcp"/>
        <updated>2025-05-29T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Thin API wrappers dump orchestration onto the model. Useful MCP servers encode a workflow, its domain rules, and its safety boundaries.]]></summary>
        <category label="MCP" term="MCP"/>
        <category label="AI" term="AI"/>
        <category label="Product Management" term="Product Management"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[f1 strategists can teach you to make better product decisions]]></title>
        <id>https://bharath.sh/writing/product-pitwall</id>
        <link href="https://bharath.sh/writing/product-pitwall"/>
        <updated>2025-05-18T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[F1 teams prepare branches, triggers, and decision windows before the race. Product teams can use the same discipline under uncertainty.]]></summary>
        <category label="F1" term="F1"/>
        <category label="Product Leadership" term="Product Leadership"/>
    </entry>
</feed>