<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Amar Gupta</title>
    <description>The latest articles on DEV Community by Amar Gupta (@amar_gupta_53ec13017b6ef1).</description>
    <link>https://dev.to/amar_gupta_53ec13017b6ef1</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3949426%2F26623c0a-c600-4ca4-a8a9-a5a24687e072.png</url>
      <title>DEV Community: Amar Gupta</title>
      <link>https://dev.to/amar_gupta_53ec13017b6ef1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/amar_gupta_53ec13017b6ef1"/>
    <language>en</language>
    <item>
      <title>Microsoft Burned Its 2026 AI Budget on Claude Code in Six Months. That's the Real Story.</title>
      <dc:creator>Amar Gupta</dc:creator>
      <pubDate>Sun, 24 May 2026 21:34:59 +0000</pubDate>
      <link>https://dev.to/amar_gupta_53ec13017b6ef1/microsoft-burned-its-2026-ai-budget-on-claude-code-in-six-months-thats-the-real-story-49dp</link>
      <guid>https://dev.to/amar_gupta_53ec13017b6ef1/microsoft-burned-its-2026-ai-budget-on-claude-code-in-six-months-thats-the-real-story-49dp</guid>
      <description>&lt;p&gt;Microsoft is &lt;a href="https://www.theverge.com/tech/930447/microsoft-claude-code-discontinued-notepad" rel="noopener noreferrer"&gt;canceling most internal Claude Code licenses effective June 30&lt;/a&gt; and redirecting developers to GitHub Copilot CLI. The headline reads as a competitive move — Microsoft pushing its own coding agent. That is the second story.&lt;/p&gt;

&lt;p&gt;The first story is in one line from the reporting: a pilot launched in December "accidentally consumed their 2026 yearly target spend on AI" in roughly six months. Microsoft, the company that literally co-owns the cloud Claude runs on through its OpenAI position and Azure, could not afford its own developers using Claude Code at the rate they wanted to use it.&lt;/p&gt;

&lt;p&gt;That should reframe a lot of conversations.&lt;/p&gt;

&lt;h2&gt;
  
  
  The cost curve is not where the marketing puts it
&lt;/h2&gt;

&lt;p&gt;The public discourse on coding agents is anchored on per-token pricing and per-seat subscription tiers. $20 a month, $200 a month, Pro, Max, Team. The implicit story is that the cost is bounded.&lt;/p&gt;

&lt;p&gt;It is not bounded. A coding agent in a real workflow does not consume tokens the way a chat assistant does. Every tool call carries a system prompt, the full transcript, the file context the model needed to read to make the call, and the call result. A single 30-minute Claude Code session with seven file reads, four edits, and a test run can put 200,000 tokens through the model. Do that four times a day, five days a week, and the per-developer monthly cost lands in the high three figures or low four figures, not the $200 the seat tier suggests.&lt;/p&gt;

&lt;p&gt;I have been &lt;a href="https://dev.to/blog/building-sathi-70-tool-mcp-server-claude-personal-os"&gt;running 70+ MCP tools in production for six months&lt;/a&gt;. My own Claude Code usage tracks at roughly $400 to $600 a month of effective compute against the Max plan — well inside the plan envelope, but only because the plan caps me. The moment I move to API pricing and let the agent run on autopilot through a long task, the per-task cost shows up clearly: a single multi-file refactor with full repo context can be $3 to $8 of raw token spend. Multiply by the cadence of a working developer and you get Microsoft's number.&lt;/p&gt;

&lt;p&gt;The reporting also drops a detail that matters: this was not just developers. Microsoft opened the pilot to "project managers, designers, and other employees to experiment with coding for the first time." Non-developers using a coding agent burn tokens differently from developers — more retries, more dead-ends, more context-loaded prompts that ultimately do not ship code. That is the demographic that quietly puts an organization on the wrong side of an unbounded cost curve.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this signals for everyone else
&lt;/h2&gt;

&lt;p&gt;Three things to take from this, working from the operator side of the question rather than the press-release side.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One — the "AI is more expensive than human employees" framing is wrong, but the shape of the cost concern is correct.&lt;/strong&gt; Fortune ran a separate piece this week reporting Microsoft's executives saying &lt;a href="https://fortune.com/2026/05/22/microsoft-ai-cost-problem-tokens-agents/" rel="noopener noreferrer"&gt;AI agents are now more expensive than the human employees they replace&lt;/a&gt;. The framing is misleading — a human employee with health insurance costs $150,000 a year fully loaded, and no Claude Code seat is at that number. But the &lt;em&gt;direction&lt;/em&gt; is right. A coding agent with no governance and a curious user base can cost an enterprise more than the enterprise budgeted for AI in total. That is what the Microsoft pilot proved.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Two — the "human-in-the-loop" pattern is a cost control mechanism, not just a safety one.&lt;/strong&gt; The HN thread on this story has a comment thread converging on the same point: unsupervised agentic Claude Code burns tokens "like nobody's business." A developer who reviews each edit before applying it uses 30 to 50 percent fewer tokens than one who lets the agent autopilot through a 20-step plan. The plan steps are expensive because each step re-reads context. Human review collapses the plan early when it goes off-course. This is the same pattern that shows up in my own logs — the runs where I let Claude Code go for 40 minutes on a soft task are almost always more expensive &lt;em&gt;and&lt;/em&gt; worse than the runs where I interrupt at 8 minutes and re-scope.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Three — switching to a different vendor's agent does not change the underlying cost driver.&lt;/strong&gt; GitHub Copilot CLI, the replacement Microsoft is pushing internally, runs on a model too. The tokens flow the same way. The reason Microsoft is moving developers there is not that the cost shape is different — it is that the &lt;em&gt;billing&lt;/em&gt; shape is different, because Microsoft owns the meter. Internally a Copilot CLI token is a transfer within Microsoft. A Claude Code token is a check to Anthropic. The cost-to-Microsoft is different even if the cost-to-an-AI-tool-token is roughly the same.&lt;/p&gt;

&lt;p&gt;For an indie operator or a small team, none of those three internal mechanics apply. You pay the bill either way. What does apply is the discipline: cap the per-task autonomy, review every plan that crosses three tool calls, and assume your $200-a-month seat is a soft cap you will hit if the workflow is unscoped.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters
&lt;/h2&gt;

&lt;p&gt;The Microsoft story is going to get told as a vendor switch. That telling buries the lesson.&lt;/p&gt;

&lt;p&gt;The real lesson is that the largest software company in the world tested unscoped coding-agent usage at organizational scale for six months and found that the cost curve outpaces its own AI budget. Every team adopting Claude Code or any peer tool is, at much smaller scale, running the same experiment. The question is not whether your vendor is the best one. The question is whether your workflow has the discipline to stay inside the cost envelope you planned for — because the agent on its own will not.&lt;/p&gt;

&lt;p&gt;That is what Microsoft just learned in public. Worth reading the bill before the next pilot.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>coding</category>
      <category>devtools</category>
    </item>
    <item>
      <title>The "MTTR Is All You Need" Trap</title>
      <dc:creator>Amar Gupta</dc:creator>
      <pubDate>Sun, 24 May 2026 19:18:13 +0000</pubDate>
      <link>https://dev.to/amar_gupta_53ec13017b6ef1/the-mttr-is-all-you-need-trap-1k2d</link>
      <guid>https://dev.to/amar_gupta_53ec13017b6ef1/the-mttr-is-all-you-need-trap-1k2d</guid>
      <description>&lt;p&gt;There is a specific moment in a system's life when the dashboards still look green, the test suite is still passing, the bug report rate is still falling — and the codebase has already become something no human in the room actually understands.&lt;/p&gt;

&lt;p&gt;Mitchell Hashimoto called this out yesterday in a thread that has now passed 487,000 likes. He named it "AI psychosis" — entire companies operating under the implicit belief that "MTTR is all you need," that it's fine to ship bugs because the agents will fix them so quickly. His warning is sharper than the usual AI-skeptic line: "you can automate yourself into a very resilient catastrophe machine."&lt;/p&gt;

&lt;p&gt;I have been shipping production agents for the last six months — Setu, Sandesh, Swayam, Sankalp, a Sutra desktop middleman, all stitched together with MCP tools and a Claude Code instance per channel. The agents write a fair amount of the code. They also reach into the database, fire scheduled routines, post to LinkedIn on a cron. Mitchell's tweet hit me harder than I expected, because the trap he is describing is the exact one I have had to defend against, more than once, in a stack that is mostly me and the model.&lt;/p&gt;

&lt;p&gt;Here is what the trap actually looks like from inside the code, and the three disciplines I have ended up trusting.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "globally incomprehensible" looks like in practice
&lt;/h2&gt;

&lt;p&gt;The first time I felt it was when a routine fired at 8:30 AM and silently posted nothing. The dashboard said "ran successfully." The logs said "ran successfully." The next routine fired at 2 PM and did the same. By evening I had three "successful" runs and zero output. The cron was healthy. The MCP server was healthy. The Realtime broadcast was healthy. Each individual subsystem was passing its own test.&lt;/p&gt;

&lt;p&gt;The bug was a SSE bridge that re-subscribed to the wrong channel on restart. Each piece was locally correct; the system was globally lying. No agent could have found that bug by reading the green checks. I found it by sitting with three terminals open for an hour and watching what the broadcast actually carried versus what the bridge actually filtered. The fix took five lines. The diagnosis took ninety minutes.&lt;/p&gt;

&lt;p&gt;If I had been operating under "MTTR is all you need," I would have shipped the next ten routines, the bridge would have collected ten more silent misses, and by the time anyone noticed, the failure surface would be a different shape entirely. That is the catastrophe machine. The MTTR for each individual incident keeps falling. The system keeps becoming less describable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Discipline 1: Keep the failure mode in writing
&lt;/h2&gt;

&lt;p&gt;Every multi-hour debug session in this stack ends with two artifacts: a fix, and a paragraph in a CLAUDE.md somewhere that says "this looks like a normal X, it is actually a Y, here is the tell." If I do not write that paragraph, the model will rediscover the failure mode the next time it touches that code, and I will pay the diagnosis cost again.&lt;/p&gt;

&lt;p&gt;The agent is genuinely fast at fixing bugs. It is not faster than me at remembering bugs I have already seen. That asymmetry is the whole game.&lt;/p&gt;

&lt;h2&gt;
  
  
  Discipline 2: Treat "the test suite passes" as evidence about the test suite, not the system
&lt;/h2&gt;

&lt;p&gt;Mitchell's complaint about declining bug reports as a metric lands here. In a stack where the agent writes most of the code AND most of the tests, a green suite tells you the agent's model of correctness is internally consistent. It does not tell you that the model's idea of correctness matches yours.&lt;/p&gt;

&lt;p&gt;I now require the test failure modes to be designed by me even when the test code is written by the agent. What can break? What would it look like when it breaks? Which specific user surface goes silent? Those questions are mine to answer before the agent writes a single &lt;code&gt;expect&lt;/code&gt;. The agent then implements; I verify the failure space, not just the test code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Discipline 3: Read the diff before you run it, even when it is small
&lt;/h2&gt;

&lt;p&gt;The cheapest, most boring discipline. The agent will hand you a 12-line patch that looks obviously correct, and 11 of those lines actually are. The 12th will quietly drop a &lt;code&gt;WHERE user_id = ...&lt;/code&gt; because the agent's mental model of the function didn't carry that constraint forward. Reading 12 lines costs forty seconds. Recovering from a forgotten &lt;code&gt;WHERE&lt;/code&gt; clause in production costs a weekend.&lt;/p&gt;

&lt;p&gt;This is the one rule that comes up cleanest in &lt;a href="https://twitter.com/mitchellh/status/2055380239711457578" rel="noopener noreferrer"&gt;Hashimoto's follow-up&lt;/a&gt;: when someone asked what to do instead, his answer was three words — "Think (use AI, but think)." That is not anti-AI. It is anti-handing-the-system-to-the-AI-and-stepping-away.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters for an Indian indie builder
&lt;/h2&gt;

&lt;p&gt;The Indian SaaS layer is being told the loudest version of the AI-native story right now. Layoffs are being narrated as agent-substitution. Funding decks have "AI-native" headers that two years ago said "mobile-first." Founders running with two engineers and one agent will absorb the "MTTR is all you need" mindset by osmosis, because it sounds like leverage.&lt;/p&gt;

&lt;p&gt;It is leverage, right up until it isn't. The companies that quietly survive this cycle will be the ones that kept human comprehension as the gating function — not the ones that optimized for time-to-merge. The dashboards will lie convincingly until they don't, and the recovery cost from a globally incomprehensible system is not three engineers; it is a rewrite.&lt;/p&gt;

&lt;p&gt;Use the agent. Keep the failure modes in writing. Read the diff. The trap is real, and the way out of it is unglamorous in exactly the way the SV pitch deck never admits.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>devops</category>
      <category>softwareengineering</category>
    </item>
  </channel>
</rss>
