<?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: Aditya Agarwal</title>
    <description>The latest articles on DEV Community by Aditya Agarwal (@adioof).</description>
    <link>https://dev.to/adioof</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%2F2760047%2F17358ceb-daca-46e9-9a88-1904b8402d3f.jpg</url>
      <title>DEV Community: Aditya Agarwal</title>
      <link>https://dev.to/adioof</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adioof"/>
    <language>en</language>
    <item>
      <title>The Vercel Bill Conversation Every Startup Avoids (Until It's Too Late)</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sun, 12 Apr 2026 21:04:00 +0000</pubDate>
      <link>https://dev.to/adioof/the-vercel-bill-conversation-every-startup-avoids-until-its-too-late-5bj6</link>
      <guid>https://dev.to/adioof/the-vercel-bill-conversation-every-startup-avoids-until-its-too-late-5bj6</guid>
      <description>&lt;p&gt;Our team was shocked when we received a $4,700 Vercel bill. The architecture we had set up was pretty awesome! But then the bill arrived. We quickly realized three things were crippling our budget.&lt;/p&gt;

&lt;p&gt;Nobody saw it coming.&lt;/p&gt;

&lt;p&gt;We built a Next.js monorepo with ISR, edge functions, and image optimization.&lt;/p&gt;

&lt;p&gt;The architecture was beautiful.&lt;/p&gt;

&lt;p&gt;Then the bill arrived.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Architecture That Broke The Bank
&lt;/h2&gt;

&lt;p&gt;We went all-in on Vercel's magic.&lt;/p&gt;

&lt;p&gt;ISR for 50,000 product pages.&lt;/p&gt;

&lt;p&gt;Edge functions for personalization.&lt;/p&gt;

&lt;p&gt;Image optimization for 10,000 user uploads.&lt;/p&gt;

&lt;p&gt;It was fast. Really fast.&lt;/p&gt;

&lt;p&gt;Our Lighthouse scores were 98+ across the board.&lt;/p&gt;

&lt;p&gt;Users loved it.&lt;/p&gt;

&lt;p&gt;VCs loved it.&lt;/p&gt;

&lt;p&gt;The bill? Not so much.&lt;/p&gt;




&lt;h2&gt;
  
  
  Where The Money Went
&lt;/h2&gt;

&lt;p&gt;Three things burned 90% of our spend:&lt;/p&gt;

&lt;p&gt;1️⃣ &lt;strong&gt;ISR revalidation storms&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Every product update triggered a cascade.&lt;/p&gt;

&lt;p&gt;50,000 pages × 3 ISR calls each.&lt;/p&gt;

&lt;p&gt;Vercel charges per function invocation.&lt;/p&gt;

&lt;p&gt;Our $200/month estimate became $2,800.&lt;/p&gt;

&lt;p&gt;2️⃣ &lt;strong&gt;Edge function fan-out&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Personalization meant checking 8 microservices.&lt;/p&gt;

&lt;p&gt;Each request spawned 8 parallel edge functions.&lt;/p&gt;

&lt;p&gt;Concurrent users? Exponential growth.&lt;/p&gt;

&lt;p&gt;3️⃣ &lt;strong&gt;Image optimization at scale&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Vercel's Image Optimization is brilliant.&lt;/p&gt;

&lt;p&gt;It's also $20 per 1,000 transformations.&lt;/p&gt;

&lt;p&gt;10,000 user images × multiple sizes = ouch.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Fix Nobody Wants To Admit
&lt;/h2&gt;

&lt;p&gt;We moved three things off Vercel:&lt;/p&gt;

&lt;p&gt;→ ISR to CloudFlare Pages + KV ($20/month)&lt;/p&gt;

&lt;p&gt;→ Edge functions to CloudFlare Workers ($5)&lt;/p&gt;

&lt;p&gt;→ Image optimization to Cloudinary (pay-per-GB)&lt;/p&gt;

&lt;p&gt;The result?&lt;/p&gt;

&lt;p&gt;Same performance.&lt;/p&gt;

&lt;p&gt;Bill: $287.&lt;/p&gt;

&lt;p&gt;The team spent 3 weeks migrating.&lt;/p&gt;

&lt;p&gt;The CFO asked why we didn't do this earlier.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Real Lesson
&lt;/h2&gt;

&lt;p&gt;Vercel's pricing model rewards simplicity.&lt;/p&gt;

&lt;p&gt;Complex architectures punish you.&lt;/p&gt;

&lt;p&gt;Every ISR page is a function call.&lt;/p&gt;

&lt;p&gt;Every edge function is concurrent execution.&lt;/p&gt;

&lt;p&gt;Every image transformation is a transaction.&lt;/p&gt;

&lt;p&gt;Startups copy Vercel's marketing examples.&lt;/p&gt;

&lt;p&gt;Then get the bill.&lt;/p&gt;




&lt;h2&gt;
  
  
  Your Turn
&lt;/h2&gt;

&lt;p&gt;Has your team had the Vercel bill conversation yet?&lt;/p&gt;

&lt;p&gt;Or are you waiting for the $5,000 surprise?&lt;/p&gt;

&lt;p&gt;What's your breaking point?&lt;/p&gt;

&lt;p&gt;👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>My Team Tracks AI-Generated Code. The Number Shocked Us.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 15:03:55 +0000</pubDate>
      <link>https://dev.to/adioof/my-team-tracks-ai-generated-code-the-number-shocked-us-25a2</link>
      <guid>https://dev.to/adioof/my-team-tracks-ai-generated-code-the-number-shocked-us-25a2</guid>
      <description>&lt;p&gt;My team tracks how much of our codebase is AI-generated. The number shocked us.&lt;/p&gt;

&lt;p&gt;We deployed Buildermark last week. It's an open-source tool that scans Git history and flags AI-written lines.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why We Started Measuring
&lt;/h2&gt;

&lt;p&gt;Every startup has that moment.&lt;/p&gt;

&lt;p&gt;You're reviewing a PR and realize you can't tell who wrote it. The human or the AI.&lt;/p&gt;

&lt;p&gt;We hit 40% AI-generated code by volume. Some files were 90%.&lt;/p&gt;

&lt;p&gt;The CTO asked for the report. Then asked what it meant.&lt;/p&gt;

&lt;p&gt;Nobody had an answer.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Three Problems Nobody Talks About
&lt;/h2&gt;

&lt;p&gt;→ &lt;strong&gt;Problem 1: Ownership blur&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When AI writes the fix, who owns the bug?&lt;/p&gt;

&lt;p&gt;We found junior devs treating Claude output as gospel. They'd copy-paste without understanding.&lt;/p&gt;

&lt;p&gt;Senior engineers would approve because "it looks fine."&lt;/p&gt;

&lt;p&gt;→ &lt;strong&gt;Problem 2: The review gap&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Human-written code gets scrutinized. AI-written code gets rubber-stamped.&lt;/p&gt;

&lt;p&gt;We caught security issues in AI-generated config files. Stuff a human would never write.&lt;/p&gt;

&lt;p&gt;→ &lt;strong&gt;Problem 3: The bus factor&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If your AI provider degrades (like Claude did last month), your velocity tanks overnight.&lt;/p&gt;

&lt;p&gt;We're now vendor-locked to Codeium's style. Claude's patterns. GitHub Copilot's idioms.&lt;/p&gt;




&lt;h2&gt;
  
  
  What We Changed This Week
&lt;/h2&gt;

&lt;p&gt;We added a pre‑commit hook that tags AI‑generated lines.&lt;/p&gt;

&lt;p&gt;Every PR shows the percentage in the description.&lt;/p&gt;

&lt;p&gt;If it's over 50%, it needs extra review. No shortcuts.&lt;/p&gt;

&lt;p&gt;We also started tracking "AI debt" – lines that only one person understands because they came from a prompt nobody wrote down.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Real Metric That Matters
&lt;/h2&gt;

&lt;p&gt;Lines of AI code is vanity.&lt;/p&gt;

&lt;p&gt;The real metric is: &lt;strong&gt;How many AI‑generated lines survive to production without a human understanding them?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We're at 12%.&lt;/p&gt;

&lt;p&gt;That's 12% of our codebase that could break and nobody would know why.&lt;/p&gt;




&lt;p&gt;Is your team measuring AI code?&lt;/p&gt;

&lt;p&gt;What percentage would surprise you?&lt;/p&gt;

&lt;p&gt;👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>ai</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>My team reviews 15 PRs a day at our startup. Nobody burns out.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 09:05:26 +0000</pubDate>
      <link>https://dev.to/adioof/my-team-reviews-15-prs-a-day-at-our-startup-nobody-burns-out-h49</link>
      <guid>https://dev.to/adioof/my-team-reviews-15-prs-a-day-at-our-startup-nobody-burns-out-h49</guid>
      <description>&lt;p&gt;My team reviews 15 PRs a day at our startup.&lt;/p&gt;

&lt;p&gt;Nobody burns out.&lt;/p&gt;

&lt;p&gt;Here's what actually happened.&lt;/p&gt;




&lt;h2&gt;
  
  
  Before
&lt;/h2&gt;

&lt;p&gt;When we were 5 engineers, reviewing PRs was easy.&lt;/p&gt;

&lt;p&gt;You'd glance, comment, merge.&lt;/p&gt;

&lt;p&gt;Then we hit 15 people.&lt;/p&gt;

&lt;p&gt;PRs piled up. Developers waited 2 days for feedback. Product managers got anxious. The CTO asked why velocity dropped.&lt;/p&gt;

&lt;p&gt;We tried everything.&lt;/p&gt;

&lt;p&gt;→ GitHub's default review requests&lt;br&gt;
→ Slack reminders&lt;br&gt;
→ Even a Discord bot that pinged people&lt;/p&gt;

&lt;p&gt;Nothing worked.&lt;/p&gt;

&lt;p&gt;The problem wasn't tools. It was culture.&lt;/p&gt;

&lt;p&gt;We were treating code review as a courtesy. Not a requirement.&lt;/p&gt;




&lt;h2&gt;
  
  
  What changed: 3 rules
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Rule 1: Every PR gets a review within 4 hours. Or it auto-merges.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Yes, really.&lt;/p&gt;

&lt;p&gt;We use a GitHub Action that checks time. If 4 hours pass with no review, it merges.&lt;/p&gt;

&lt;p&gt;This sounds terrifying. But it works.&lt;/p&gt;

&lt;p&gt;Because nobody wants broken code in production. So they review.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rule 2: Review comments must be actionable.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No "maybe consider this." No "what if we tried…"&lt;/p&gt;

&lt;p&gt;If you comment, you must suggest a concrete change. Or approve.&lt;/p&gt;

&lt;p&gt;This cut review cycles by 70%.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rule 3: The author owns the fix. Not the reviewer.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you suggest a change, the PR author implements it. You don't take over their keyboard.&lt;/p&gt;

&lt;p&gt;This was the hardest shift. Senior engineers hated it. They wanted to "just fix it quickly."&lt;/p&gt;

&lt;p&gt;But that created dependency. Now juniors learn faster — because they have to understand the feedback, not just accept a magic fix.&lt;/p&gt;




&lt;h2&gt;
  
  
  The weird part?
&lt;/h2&gt;

&lt;p&gt;Our bug rate dropped.&lt;/p&gt;

&lt;p&gt;Not because code got perfect. Because reviews got focused.&lt;/p&gt;

&lt;p&gt;When you know you have 4 hours, you're ruthless. You skip nitpicks. You focus on what matters.&lt;/p&gt;

&lt;p&gt;Architecture. Security. Performance. Not formatting — we use Biome for that.&lt;/p&gt;




&lt;h2&gt;
  
  
  The real lesson
&lt;/h2&gt;

&lt;p&gt;We trusted automation over people. We trusted rules over goodwill. And it worked.&lt;/p&gt;

&lt;p&gt;Most teams do the opposite. More process. More meetings. More approval layers.&lt;/p&gt;

&lt;p&gt;We removed them.&lt;/p&gt;

&lt;p&gt;What's stopping you? Probably fear.&lt;/p&gt;

&lt;p&gt;Fear of broken code. Fear of junior mistakes. Fear of losing control.&lt;/p&gt;

&lt;p&gt;But control is an illusion. Code will break anyway. Mistakes will happen.&lt;/p&gt;

&lt;p&gt;The question is: do you learn from them fast — or hide them slow?&lt;/p&gt;

&lt;p&gt;Our system surfaces problems fast. Fast feedback. Fast fixes. Fast learning.&lt;/p&gt;

&lt;p&gt;That's the real velocity boost. Not more lines of code. Better lines of code.&lt;/p&gt;

&lt;p&gt;What would happen if your team had a 4-hour review SLA?&lt;/p&gt;

&lt;p&gt;👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>career</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Linux Kernel Just Published AI Coding Guidelines. The Rest of Us Should Pay Attention.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 08:35:12 +0000</pubDate>
      <link>https://dev.to/adioof/the-linux-kernel-just-published-ai-coding-guidelines-the-rest-of-us-should-pay-attention-4h7d</link>
      <guid>https://dev.to/adioof/the-linux-kernel-just-published-ai-coding-guidelines-the-rest-of-us-should-pay-attention-4h7d</guid>
      <description>&lt;p&gt;The Linux kernel just published official guidelines for using AI coding assistants.&lt;/p&gt;

&lt;p&gt;It's a two-page doc. And it says more about where we're at than any hot take I've seen this week.&lt;/p&gt;




&lt;h2&gt;
  
  
  What it actually says
&lt;/h2&gt;

&lt;p&gt;You can use AI tools to contribute to the kernel. But you own everything the AI writes.&lt;/p&gt;

&lt;p&gt;Every line. Every bug. Every security flaw.&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;Signed-off-by&lt;/code&gt; tag? Only humans can add that. AI agents are explicitly banned from signing off on commits.&lt;/p&gt;

&lt;p&gt;Instead, there's a new tag: &lt;code&gt;Assisted-by: AGENT_NAME:MODEL_VERSION&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;If AI played a meaningful role in your code, you disclose it. That's the deal.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Linus actually said
&lt;/h2&gt;

&lt;p&gt;He doesn't want the documentation to become a "political battlefield" over AI.&lt;/p&gt;

&lt;p&gt;His exact take: there's "zero point in talking about AI slop" in the docs, because bad actors who submit garbage AI code won't disclose it anyway.&lt;/p&gt;

&lt;p&gt;The guidelines are for good actors. Everyone else is already a problem.&lt;/p&gt;

&lt;p&gt;That's a pragmatic take you don't hear often.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why the rest of us should care
&lt;/h2&gt;

&lt;p&gt;Most of us aren't contributing to the Linux kernel. But the kernel's process is where software engineering norms get formalized first.&lt;/p&gt;

&lt;p&gt;They invented the patch-based workflow. The DCO. The code review culture the entire open source ecosystem copied.&lt;/p&gt;

&lt;p&gt;This is them saying: AI assistance is real, it's here, and we're going to treat it like any other tool — not ban it, not blindly embrace it, just hold contributors accountable for what they ship.&lt;/p&gt;

&lt;p&gt;That accountability model is worth stealing.&lt;/p&gt;




&lt;h2&gt;
  
  
  The &lt;code&gt;Assisted-by&lt;/code&gt; tag is a disclosure mechanism, not a judgment
&lt;/h2&gt;

&lt;p&gt;It doesn't say "AI wrote this, be suspicious."&lt;/p&gt;

&lt;p&gt;It says "a tool helped, here's which one, now the human owns it."&lt;/p&gt;

&lt;p&gt;Compare that to how most companies handle AI-generated code right now.&lt;/p&gt;

&lt;p&gt;No disclosure. No accountability. Just commits that look human until something breaks.&lt;/p&gt;

&lt;p&gt;The Linux kernel just modeled what responsible AI contribution looks like.&lt;/p&gt;

&lt;p&gt;Whether the rest of the industry follows is a different question.&lt;/p&gt;

&lt;p&gt;Are you disclosing AI assistance in your commits? And do you think your team should?&lt;/p&gt;

&lt;p&gt;👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>career</category>
      <category>webdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Anthropic Built an AI That Finds Zero-Days. Now What?</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 08:32:41 +0000</pubDate>
      <link>https://dev.to/adioof/anthropic-built-an-ai-that-finds-zero-days-now-what-4dcc</link>
      <guid>https://dev.to/adioof/anthropic-built-an-ai-that-finds-zero-days-now-what-4dcc</guid>
      <description>&lt;p&gt;Anthropic just built an AI that found a 27-year-old vulnerability in OpenBSD.&lt;/p&gt;

&lt;p&gt;It wasn’t a team of researchers. Or a red team. It was one model. Autonomously.&lt;/p&gt;

&lt;p&gt;That’s Project Glasswing. And it changes the math on cybersecurity entirely.&lt;/p&gt;

&lt;p&gt;Here’s what happened.&lt;/p&gt;

&lt;p&gt;Anthropic trained a new model, called Claude. It’s not public. Probably never will be.&lt;/p&gt;

&lt;p&gt;Over the past few weeks, Claude found thousands of zero-day vulnerabilities across every major OS and browser. Some of the bugs had survived decades of human review and millions of automated scans.&lt;/p&gt;

&lt;p&gt;A 27-year-old flaw in OpenBSD — one of the most hardened operating systems on earth.&lt;/p&gt;

&lt;p&gt;A 16-year-old bug in FFmpeg that automated tools had hit five million times and never caught.&lt;/p&gt;

&lt;p&gt;Multiple Linux kernel vulnerabilities chained together to give an attacker full root access.&lt;/p&gt;

&lt;p&gt;All found autonomously. No human steering.&lt;/p&gt;

&lt;p&gt;The bizarre part?&lt;/p&gt;

&lt;p&gt;They aren’t worried about an attacker getting their hands on it. They’re terrified of themselves.&lt;/p&gt;

&lt;p&gt;That’s why they’re not releasing it. Instead, they’ve locked it behind Project Glasswing — a coalition with AWS, Apple, Cisco, CrowdStrike, Google, JPMorgan, Microsoft, NVIDIA, and others — and are using Claude exclusively for defense.&lt;/p&gt;

&lt;p&gt;$100M in usage credits committed. $4M donated to open-source security foundations.&lt;/p&gt;

&lt;p&gt;This is not a product launch. This is a controlled detonation.&lt;/p&gt;

&lt;p&gt;Here’s what that means for the industry.&lt;/p&gt;

&lt;p&gt;The window between “vulnerability discovered” and “vulnerability exploited” just shrank.&lt;/p&gt;

&lt;p&gt;Pre-AI, that window was weeks, sometimes months. Skilled researchers discover a bug, write a CVE, vendor patches it, most orgs eventually apply the fix.&lt;/p&gt;

&lt;p&gt;That pipeline assumed scarcity of expertise. One of the cleverest people in the world might be able to find a Linux kernel zero-day.&lt;/p&gt;

&lt;p&gt;Now one model can find thousands.&lt;/p&gt;

&lt;p&gt;The CVE triage pipeline breaks. The patching cadence breaks. The entire assumption that “the defender has more time than the attacker” breaks.&lt;/p&gt;

&lt;p&gt;Cybersecurity stocks already reacted. Cloudflare, Okta, CrowdStrike — all down on the announcement.&lt;/p&gt;

&lt;p&gt;CrowdStrike is literally a Project Glasswing founding member. And investors still sold off. Because the market understands something the press release doesn’t say out loud:&lt;/p&gt;

&lt;p&gt;If AI can find every bug in your stack, what exactly are you paying a security vendor for?&lt;/p&gt;

&lt;p&gt;The honest answer is: execution and response. Finding bugs is table stakes now. Can you fix them fast?&lt;/p&gt;

&lt;p&gt;Which is where this gets messy.&lt;/p&gt;

&lt;p&gt;Open source maintainer — the actual humans who maintain FFmpeg, OpenBSD, the Linux kernel — have historically been underfunded, understaffed, under-resourced, and underappreciated.&lt;/p&gt;

&lt;p&gt;Claude can now hand them a list of 10,000 vulnerabilities.&lt;/p&gt;

&lt;p&gt;Who is patching 10,000 vulnerabilities?&lt;/p&gt;

&lt;p&gt;Anthropic is donating $2.5M to Linux Foundation and OpenSSF. That’s meaningful but it’s not a structural fix to the open source maintenance problem.&lt;/p&gt;

&lt;p&gt;The real question isn’t “can AIs find bugs.” Claude proved yes.&lt;/p&gt;

&lt;p&gt;The real question is: does your org have the engineering bandwidth to act on what Claude finds?&lt;/p&gt;

&lt;p&gt;Most don’t.&lt;/p&gt;

&lt;p&gt;That’s the awkward truth hiding inside the Glasswing press release.&lt;/p&gt;

&lt;p&gt;The capability is here. The operational readiness isn’t.&lt;/p&gt;

&lt;p&gt;Is your team actually ready for a world where an AI can generate a zero-day faster than you can ship a patch?&lt;/p&gt;

&lt;p&gt;Is your team actually prepared for a world where AI can generate a zero-day faster than you can ship a patch?&lt;/p&gt;

&lt;p&gt;👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>webdev</category>
      <category>career</category>
      <category>ai</category>
    </item>
    <item>
      <title>The Pantheon of Tokens: Why Developers Rank AI Models Like Greek Gods and How It's Quietly Sabotaging Their Architecture</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 07:01:35 +0000</pubDate>
      <link>https://dev.to/adioof/the-pantheon-of-tokens-why-developers-rank-ai-models-like-greek-gods-and-how-its-quietly-51ee</link>
      <guid>https://dev.to/adioof/the-pantheon-of-tokens-why-developers-rank-ai-models-like-greek-gods-and-how-its-quietly-51ee</guid>
      <description>&lt;h1&gt;
  
  
  The Mythology of AI Models: Why They're Treated Like Greek Gods, and the Damage It Can Cause
&lt;/h1&gt;

&lt;p&gt;Last week I caught myself saying "Claude is better at reasoning" like I was talking about a person. That sentence should have scared me more than it did.&lt;/p&gt;

&lt;p&gt;We've created this weird mythology around AI models. And it's messing with our engineering choices in ways we don't often openly discuss.&lt;/p&gt;

&lt;h2&gt;
  
  
  They Have Names Now
&lt;/h2&gt;

&lt;p&gt;Somewhere in the last couple of years, we stopped comparing and started choosing sides. Claude became the "logical one". GPT became the "all-rounder, powerhouse". And Sirius became the "contractor, if-you-grease-his-palm-he-can-bring-his-brother".&lt;/p&gt;

&lt;p&gt;We evaluate them like Greek gods. Poseidon is strong, but dangerous. Athena is clever, but too specialized. We attribute human traits to probability distributions. 🧠&lt;/p&gt;

&lt;p&gt;I do this too. My 15-person company has Slack debates over which model "gets" our prompt data more. We say "gets" with a straight face.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why We Humanize the Math
&lt;/h2&gt;

&lt;p&gt;It's not because we're dumb. It's because it's easier.&lt;/p&gt;

&lt;p&gt;If you regularly interact with something that outputs coherent English, the thing your brain evolved to reason about automatically is social relationships. So you give it intentions, preferences, personality. "Claude is acting funny today" is an actual thing I said in a standup meeting (not standup comedy).&lt;/p&gt;

&lt;p&gt;Humanizing isn't the issue. The issue is we're letting vibes write our code.&lt;/p&gt;

&lt;p&gt;→ We select models based on vibing with a sample of their marketing copy instead of running them on your actual workload.&lt;br&gt;
→ We make architectural decisions based on what a "smart" model can or can't do, rather than what you need to swap in and out.&lt;br&gt;
→ We commit to models like they're spouses, rather than vendors.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Coddling Myth
&lt;/h2&gt;

&lt;p&gt;Here's where myth-making gets hella expensive.&lt;/p&gt;

&lt;p&gt;I watched our team spread out this entire prompt pipeline designed around a quirk only one model had. When that model had some downtime on their API, we suffered. No fallback. No abstraction. Just praying to the AI-realms.&lt;/p&gt;

&lt;p&gt;The mythology made us forget the most important question: "What actually does this task need?" and instead encouraged "What would Claude want?" Engineering gold from engineer lead.&lt;/p&gt;

&lt;p&gt;Smart teams I chatted with treat models like databases. You pick one for the workload. You build an interface that lets you swap. You don't get "In Loving Memory Of Larry, The 2023 Model" tattooed across your back.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tier Lists Are A Trap
&lt;/h2&gt;

&lt;p&gt;Dev Twitter sho 'nuff loves tier lists. S-tier, A-tier, "needs to be supervised while generating list" tier.&lt;/p&gt;

&lt;p&gt;But capabilities shift every few months. January's strong independent model making its own financial decisions is June's deadbeat model late on alimony. Don't base your architecture on an Instagram snapshot.&lt;/p&gt;

&lt;p&gt;→ The model you love today might get an update that leaves you hanging tomorrow.&lt;br&gt;
→ There is no best model. Only best model *for this specific task right now*.&lt;br&gt;
→ Plan for a god funeral.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Actually Did
&lt;/h2&gt;

&lt;p&gt;So now my team grumbled at a couple of thinner, dumber principles.&lt;/p&gt;

&lt;p&gt;Never hard-wire intelligence assumptions into a program. Keep it thin, replace it at will. Benchmark the hell out of it on your real desires. When we did, our rankings pleasantly surprised us. The "inferior" model could handle three out of our five prompts.&lt;/p&gt;

&lt;p&gt;Mythology’s easy to dispel when you got the receipts. 🔥&lt;/p&gt;

&lt;h2&gt;
  
  
  The Takeaway
&lt;/h2&gt;

&lt;p&gt;Mythologizing models is fine around the watercooler. When it hits the architecture meeting, the design sprint, the vendor lock-in, remember: you're planning a shrine for something that auto-updates.&lt;/p&gt;

&lt;p&gt;Treat smarter-than-average tools like potentially dying gas station gods. Make them prove with quarterly miracles they still got it.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>macOS Just Admitted Its Privacy Settings Cannot Be Trusted</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 04:40:24 +0000</pubDate>
      <link>https://dev.to/adioof/macos-just-admitted-its-privacy-settings-cannot-be-trusted-3eca</link>
      <guid>https://dev.to/adioof/macos-just-admitted-its-privacy-settings-cannot-be-trusted-3eca</guid>
      <description>&lt;p&gt;macOS just admitted its Privacy settings can't be trusted.&lt;/p&gt;

&lt;p&gt;The fix requires a Terminal command you've never heard of.&lt;/p&gt;

&lt;p&gt;Here's what actually happened.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;An Apple security researcher found that macOS Privacy &amp;amp; Security settings don't reflect reality.&lt;/p&gt;

&lt;p&gt;Apps can access protected folders even when the settings show them as blocked.&lt;/p&gt;

&lt;p&gt;The Transparency, Consent, and Control (TCC) sandbox can be overridden by "user intent."&lt;/p&gt;

&lt;p&gt;Which means clicking "Allow" once can grant permanent access.&lt;/p&gt;

&lt;p&gt;The system won't show it in the Privacy pane after that.&lt;/p&gt;

&lt;p&gt;You have to dig into Terminal and reset the TCC database manually. Then restart your Mac.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Weird Part
&lt;/h2&gt;

&lt;p&gt;Apple knows about this.&lt;/p&gt;

&lt;p&gt;They've documented it as expected behavior.&lt;/p&gt;

&lt;p&gt;Because "user intent" trumps everything. Even your security.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;The bigger picture here is trust erosion.&lt;/p&gt;

&lt;p&gt;We rely on those little permission dialogs. We think we're in control.&lt;/p&gt;

&lt;p&gt;But the settings lie. And malware authors love lies.&lt;/p&gt;

&lt;p&gt;This isn't a bug. It's a design choice.&lt;/p&gt;

&lt;p&gt;Apple chose convenience over transparency. They sacrificed clarity for "it just works."&lt;/p&gt;

&lt;p&gt;But security shouldn't just work. It should be &lt;strong&gt;predictable&lt;/strong&gt;. It should be &lt;strong&gt;auditable&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Right now, it's neither.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Apple Hasn't Fixed It
&lt;/h2&gt;

&lt;p&gt;Probably legacy code.&lt;/p&gt;

&lt;p&gt;The TCC system dates back to OS X. It's been patched and extended for 15 years.&lt;/p&gt;

&lt;p&gt;Technical debt becomes security debt. And we all pay for it.&lt;/p&gt;




&lt;h2&gt;
  
  
  What You Can Do Today
&lt;/h2&gt;

&lt;p&gt;→ Check your own Privacy settings. But don't trust them.&lt;br&gt;
→ Use Terminal to audit actual access.&lt;br&gt;
→ Run &lt;code&gt;tccutil reset All&lt;/code&gt; if you want a clean slate — but it'll nuke all your app permissions. You'll have to re-grant everything.&lt;/p&gt;

&lt;p&gt;It's a nuclear option.&lt;/p&gt;

&lt;p&gt;The real fix? Apple needs to rebuild the Privacy pane to show reality, not fiction.&lt;/p&gt;

&lt;p&gt;Until then, we're all guessing.&lt;/p&gt;

&lt;p&gt;Has Apple traded security for smooth UX? Let's discuss 👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>javascript</category>
      <category>career</category>
      <category>webdev</category>
    </item>
    <item>
      <title>A Company Raised $17M to Replace Git. I Have Questions.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Sat, 11 Apr 2026 00:33:43 +0000</pubDate>
      <link>https://dev.to/adioof/a-company-raised-17m-to-replace-git-i-have-questions-54n9</link>
      <guid>https://dev.to/adioof/a-company-raised-17m-to-replace-git-i-have-questions-54n9</guid>
      <description>&lt;p&gt;Git tracks files. Not context.&lt;/p&gt;

&lt;p&gt;That's the problem.&lt;/p&gt;

&lt;p&gt;When an AI agent writes code, Git sees the diff. It doesn't see which model wrote it. It doesn't see the prompt or the temperature setting.&lt;/p&gt;

&lt;p&gt;If a bug appears, you need to know which agent introduced it. Was it Claude Code? Gemini?&lt;/p&gt;

&lt;p&gt;Git gives you a hash. Not an answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Git Was Built for Humans
&lt;/h2&gt;

&lt;p&gt;Git was built for Linux kernel development in 2005. Now it has to handle AI agents writing half your codebase.&lt;/p&gt;

&lt;p&gt;They generate, iterate, and sometimes break things in ways humans wouldn't.&lt;/p&gt;

&lt;p&gt;Version control is becoming a coordination layer — not just tracking changes, but orchestrating humans and agents.&lt;/p&gt;

&lt;p&gt;That's a fundamentally different job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where It's Already Breaking Down
&lt;/h2&gt;

&lt;p&gt;Stacked branches are painful. Most teams work on multiple features simultaneously.&lt;/p&gt;

&lt;p&gt;Git forces you to choose one branch. AI agents need parallel work. Git was designed for sequential patches.&lt;/p&gt;

&lt;p&gt;The plumbing might need an upgrade.&lt;/p&gt;

&lt;h2&gt;
  
  
  But Do We Actually Need Something New?
&lt;/h2&gt;

&lt;p&gt;Git works. It's everywhere. Every CI pipeline is built around it. Every developer knows it.&lt;/p&gt;

&lt;p&gt;We can build better interfaces on top — GitHub, GitLab, Graphite already do.&lt;/p&gt;

&lt;p&gt;But maybe the pipes themselves are too narrow.&lt;/p&gt;

&lt;h2&gt;
  
  
  The $17 Million Question
&lt;/h2&gt;

&lt;p&gt;A company just raised that much to build what comes after Git. The pitch: Git wasn't built for this era.&lt;/p&gt;

&lt;p&gt;I'm not convinced yet.&lt;/p&gt;

&lt;p&gt;But a16z doesn't throw $17M at small problems. They see a shift.&lt;/p&gt;

&lt;p&gt;If they're right, we're not just talking about a new tool. We're talking about rebuilding how software gets built.&lt;/p&gt;

&lt;p&gt;Is Git enough for the AI era, or do we need to rebuild version control from scratch? 👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>javascript</category>
      <category>career</category>
      <category>programming</category>
    </item>
    <item>
      <title>We Use Valtio Instead of Redux. Nobody Regrets It.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Wed, 08 Apr 2026 21:08:20 +0000</pubDate>
      <link>https://dev.to/adioof/we-use-valtio-instead-of-redux-nobody-regrets-it-2b57</link>
      <guid>https://dev.to/adioof/we-use-valtio-instead-of-redux-nobody-regrets-it-2b57</guid>
      <description>&lt;p&gt;For updating a counter, Redux requires you to set up a store, reducers, actions, selectors, and maybe middleware. Valtio needs three lines of code.&lt;/p&gt;

&lt;p&gt;We replaced the entirety of our frontend state management with Valtio at a 15-person startup. That was a year and a half ago. Not a single person has asked to go back.&lt;/p&gt;

&lt;p&gt;Here's our experience.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Ceremony Problem
&lt;/h2&gt;

&lt;p&gt;It wasn't that there's anything inherently wrong with Redux. It works fine. It's just a lot of ceremony.&lt;/p&gt;

&lt;p&gt;Every new feature means a new slice, new action types, potentially new selectors if you like those. Our codebase had more Redux wiring than logic in some files.&lt;/p&gt;

&lt;p&gt;For a small team trying to move fast, this isn't a tradeoff, it's a tax.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Valtio
&lt;/h2&gt;

&lt;p&gt;Someone mentioned Zustand. I'd seen Jotai too. They both look great. But when I read through the Valtio docs, I couldn't believe what I was looking at.&lt;/p&gt;

&lt;p&gt;You create a proxy object. You mutate the proxy object directly because it represents your state. Components that use the state automatically re-render.&lt;/p&gt;

&lt;p&gt;No dispatching. No more searching for action creators. No need to connect your components or use &lt;code&gt;useSelector()&lt;/code&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Migration
&lt;/h2&gt;

&lt;p&gt;The hard part, as was predicted, was the migration. We had Redux everywhere. Auth state, UI state, form state, response cache.&lt;/p&gt;

&lt;p&gt;And so we didn't rewrite it in a weekend. We continued using Redux for all existing features until we needed to touch something in that area anyway, at which point we just switched to Valtio.&lt;/p&gt;

&lt;p&gt;We were completely migrated within three or four months.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Didn't Expect
&lt;/h2&gt;

&lt;p&gt;The part I didn't see coming was how noticeably faster the process of writing code reviews became.&lt;/p&gt;

&lt;p&gt;For some reason Redux PRs have this template where you've made a 5-line logic change, but it gets buried under forty lines of diff. With Valtio, you just see the 5 lines that changed.&lt;/p&gt;

&lt;p&gt;There are fewer questions from new developers too. With Redux I spent half of all onboardings explaining our state architecture. Now I say "Yeah this is all stored in a proxy object, just mutate it" and they get it in a minute.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Numbers
&lt;/h2&gt;

&lt;p&gt;Valtio has about 1.2 million weekly npm downloads. Redux has 27 million. Zustand has 28 million. We picked the least popular option in the room.&lt;/p&gt;

&lt;p&gt;But here's what's funny. All three — Valtio, Zustand, and Jotai — were created by the same person. Daishi Kato built three of the most popular React state management libraries. Each one takes a fundamentally different approach to the same problem.&lt;/p&gt;

&lt;p&gt;→ &lt;strong&gt;Valtio&lt;/strong&gt; uses JavaScript Proxy for mutation tracking&lt;br&gt;
→ &lt;strong&gt;Zustand&lt;/strong&gt; uses a minimal hook-based store&lt;br&gt;
→ &lt;strong&gt;Jotai&lt;/strong&gt; uses atoms&lt;/p&gt;

&lt;p&gt;Same developer, three philosophies.&lt;/p&gt;

&lt;p&gt;We just went with Valtio because it doesn't require you to learn anything new.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Tradeoffs
&lt;/h2&gt;

&lt;p&gt;Proxy reactivity can catch you out when you're passing your state around or serializing it.&lt;/p&gt;

&lt;p&gt;We hit one weird edge case where SSR snapshots of our state weren't consistent with what we thought we left it as before the snapshot was taken. Took about an afternoon to fix, in contrast to the many evenings we would've spent otherwise writing Redux templates.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Honest Take
&lt;/h2&gt;

&lt;p&gt;Valtio won't work for every team. If you're at a large org with strict patterns, Redux's opinionated structure is a feature. If you need time-travel debugging, Redux DevTools are unmatched.&lt;/p&gt;

&lt;p&gt;But if you're a small team that just wants state management to get out of the way, Valtio is the least amount of state management code I've ever written that managed a real app.&lt;/p&gt;

&lt;p&gt;One developer built three answers to the same question. We picked the simplest one. A year later, I'd do it again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What state management library does your team use, and have you ever considered switching?&lt;/strong&gt; 👇&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>discuss</category>
      <category>webdev</category>
    </item>
    <item>
      <title>I Switched to Stacked PRs. My Team Reviews Code in Hours, Not Days.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Wed, 08 Apr 2026 15:05:44 +0000</pubDate>
      <link>https://dev.to/adioof/i-switched-to-stacked-prs-my-team-reviews-code-in-hours-not-days-429i</link>
      <guid>https://dev.to/adioof/i-switched-to-stacked-prs-my-team-reviews-code-in-hours-not-days-429i</guid>
      <description>&lt;p&gt;I used to open PRs with 800 lines changed and wonder why my team took two days to review them.&lt;/p&gt;

&lt;p&gt;I am one of the founding engineers in a 15-person startup. We work quickly. There is no review team available or asynchronous reviews that can take days due to different time zones.&lt;/p&gt;

&lt;p&gt;If a PR takes two days, the whole pipeline for that feature stalls.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Guilt-Driven Scroll
&lt;/h2&gt;

&lt;p&gt;It wasn't waiting the two days that bothered me most. It was the fact that when the review finally did come in, 200 lines were read thoroughly, and the rest got the "looks good to me". Every time.&lt;/p&gt;

&lt;p&gt;This is not reviewing, it is trying to get out of guilt by scrolling.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Stacked PRs Actually Look Like
&lt;/h2&gt;

&lt;p&gt;I started using stacked PRs about a year ago. I wouldn't go back. The concept is simple: instead of one giant PR per feature, you break it up into a chain of small, dependent PRs that build on each other.&lt;/p&gt;

&lt;p&gt;Sounds nice in theory, but how does it actually work? Let's say I am building a new data pipeline and I have to update the schema, API, frontend, and tests. Instead of one gigantic PR which includes all that:&lt;/p&gt;

&lt;p&gt;→ PR 1 is the schema migration&lt;br&gt;
→ PR 2 is the API endpoint, branched off PR 1&lt;br&gt;
→ PR 3 is the frontend integration, branched off PR 2&lt;br&gt;
→ PR 4 is the test coverage, branched off PR 3&lt;/p&gt;

&lt;p&gt;I open four PRs. Each is under 200 lines. Each is reviewable in less than 10 minutes. Each small PR simply does whatever the next logical step in the change is and doesn't block the next step.&lt;/p&gt;

&lt;p&gt;While I wait for PR 1 to get merged, PR 2 and 3 are already opened, so I don't have to wait. I just keep on building.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Shift
&lt;/h2&gt;

&lt;p&gt;The change this brought in my workflow was revolutionizing. My PRs used to wait 24-48h. They get reviewed the same day now. Sometime within the hour.&lt;/p&gt;

&lt;p&gt;It's not because they are faster to write: but because they are not as intimidating. Your average 150ish-sized PR doesn't lead a reviewer to think "I don't have time to go through 800 lines". They think "I can glance at this before lunchtime". And that's in their lunchtime.&lt;/p&gt;

&lt;p&gt;800-line reviews are rushed. Rushed reviews are buggy.&lt;/p&gt;

&lt;p&gt;SmartBear's research on code review found a significant drop in defect density when reviewers go faster than 500 lines of code per hour. The point isn't speed. It's that large reviews force people to rush, and rushing means missing bugs.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Big Tech Already Does This
&lt;/h2&gt;

&lt;p&gt;There is a reason why Meta and Google have used stacked diffs internally for years. Facebook built Phabricator around this workflow. Google's internal tools enforce small, incremental changes by default.&lt;/p&gt;

&lt;p&gt;These companies aren't tiny startups optimizing a process, these are companies that send millions of lines of code and diffs per year to production and need their review process to be as secure and painless as possible.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Tooling Is Painless
&lt;/h2&gt;

&lt;p&gt;The tooling is painless. I use Graphite, which really only offers the feature of handling dependencies and rebases for you. 99% of the time, it just works. The training takes 5 minutes if you know how to git.&lt;/p&gt;

&lt;p&gt;It's also a mental switch. When you are used to stacks, you naturally create better-defined features. You go from "how do I push this entire thing in prod" to "What's the smallest, useful change I can make?".&lt;/p&gt;

&lt;p&gt;That decomposition makes you a better engineer. Not because the tool is magical, but because it forces you to think about boundaries, interfaces, and incremental value.&lt;/p&gt;




&lt;h2&gt;
  
  
  The One Tradeoff
&lt;/h2&gt;

&lt;p&gt;The only real tradeoff is that you have to think about your PRs before even writing any code. You can't just go ham for 3 days and separate the 1k impressive lines into 6 equally big PRs afterwards.&lt;/p&gt;

&lt;p&gt;You have to think what the chain will look like, and while for me, that's 10 minutes of planning, I reckon planning is not for everyone. It saves up so much wait time though.&lt;/p&gt;

&lt;p&gt;If you review a lot of code, you already know the pain of a 1000-line PR landing on your desk. And if you write a lot of code, you know the frustration of being blocked on review while your feature rots on a branch.&lt;/p&gt;

&lt;p&gt;Stacked PRs fix both sides. Smaller changes for reviewers. Unblocked workflows for authors. It's one of those workflow changes where you wonder why you didn't do it sooner.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What's your team's PR workflow like? Still shipping big PRs, or have you made the switch?&lt;/strong&gt; 👇&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>programming</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>The Apollo 11 Guidance Computer Had a Four-Byte Bug. It Hid for 57 Years.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Tue, 07 Apr 2026 21:06:31 +0000</pubDate>
      <link>https://dev.to/adioof/the-apollo-11-guidance-computer-had-a-four-byte-bug-it-hid-for-57-years-326g</link>
      <guid>https://dev.to/adioof/the-apollo-11-guidance-computer-had-a-four-byte-bug-it-hid-for-57-years-326g</guid>
      <description>&lt;p&gt;The most reviewed code ever written had a four-byte bug. No bug detector found it. No static analyzer warned about it. No end-to-end test case triggered it. 57 years. Four lines.&lt;/p&gt;

&lt;p&gt;The Apollo Guidance Computer source code has been public since 2003. Thousands of developers have read it. Academics published papers on its reliability. Emulators run it instruction by instruction.&lt;/p&gt;

&lt;p&gt;The transcription was verified byte-for-byte against the original core rope dumps.&lt;/p&gt;

&lt;p&gt;A team at JUXT just found a resource lock leak in the gyro control code that could have silently killed the guidance platform's ability to realign.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Four bytes. Two missing instructions.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The Lock That Nobody Released
&lt;/h2&gt;

&lt;p&gt;Here's what happened. The AGC manages the spacecraft's Inertial Measurement Unit through a shared lock called LGYRO. When the computer needs to torque the gyroscopes to correct drift or perform a star alignment, it grabs the lock, does the work across three axes, and releases it when done.&lt;/p&gt;

&lt;p&gt;→ Normal path: lock acquired, torque completes, lock released. Clean.&lt;/p&gt;

&lt;p&gt;But there's a third path. "Caging" is an emergency measure where a physical clamp locks the gyroscope gimbals in place to protect them. The crew could trigger it with a guarded switch in the cockpit.&lt;/p&gt;

&lt;p&gt;When caging interrupts a torque in progress, the code exits through a routine called BADEND. It cleans up every shared resource correctly. &lt;strong&gt;Except LGYRO.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once that lock is stuck, every future gyro operation finds it held, sleeps waiting for a wake signal that never comes, and hangs. Fine alignment, drift compensation, manual torque. All dead.&lt;/p&gt;

&lt;p&gt;No alarm. No error light. The DSKY display accepts inputs and does nothing. Everything else on the computer works fine.&lt;/p&gt;

&lt;p&gt;Only gyro operations are silently bricked.&lt;/p&gt;




&lt;h2&gt;
  
  
  Behind the Moon, Alone
&lt;/h2&gt;

&lt;p&gt;Now picture this. Michael Collins is orbiting alone in the Command Module while Armstrong and Aldrin walk on the Moon. Every two hours he disappears behind the Moon, completely cut off from Earth.&lt;/p&gt;

&lt;p&gt;He runs a star-sighting alignment to keep the guidance platform pointing the right direction. If the platform drifts, his engine burn to get home fires the wrong way.&lt;/p&gt;

&lt;p&gt;If Collins had accidentally bumped the cage switch during a torque, the first alignment would fail with a clear cause. He'd uncage the IMU and try again.&lt;/p&gt;

&lt;p&gt;The second alignment would hang with no explanation.&lt;/p&gt;

&lt;p&gt;His training said restart after unexplained failures. But commands were being accepted. Everything else worked. It would look like broken hardware, not a stuck software lock.&lt;/p&gt;

&lt;p&gt;Behind the Moon, alone, no radio contact, with two astronauts on the surface waiting for a rendezvous burn that depends on a platform he can no longer align.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;He never bumped that switch. The bug never fired. But it was there the whole time.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Why Nobody Found It
&lt;/h2&gt;

&lt;p&gt;The reason nobody found it is actually the interesting part. The AGC's restart logic clears the lock as a side effect of full memory initialization. Any test that triggered a restart after the bug would see the system recover seamlessly.&lt;/p&gt;

&lt;p&gt;The defensive coding that Hamilton's team built in actually hid the problem instead of eliminating it.&lt;/p&gt;

&lt;p&gt;And the scrutiny was a particular kind of scrutiny. People read the code. People emulated the code. People verified the transcription.&lt;/p&gt;

&lt;p&gt;Nobody wrote a formal specification that tracked every resource lifecycle across every code path.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Actually Found It
&lt;/h2&gt;

&lt;p&gt;That's what found it. The team used a behavioral specification tool called Allium to distill 130,000 lines of AGC assembly into 12,500 lines of specs. The spec models each shared resource as an entity with a lifecycle: acquired, held, released.&lt;/p&gt;

&lt;p&gt;Then it checks whether every acquisition has a matching release on every path.&lt;/p&gt;

&lt;p&gt;The normal completion path releases LGYRO. The cage-interrupted path through BADEND does not. &lt;strong&gt;Two missing instructions, four bytes, 57 years.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Your Code Has This Bug Too
&lt;/h2&gt;

&lt;p&gt;Modern languages have tried to make this structurally impossible. Go has &lt;code&gt;defer&lt;/code&gt;. Java has &lt;code&gt;try-with-resources&lt;/code&gt;. Rust's ownership system turns lock leaks into compile-time errors.&lt;/p&gt;

&lt;p&gt;But not all resources live inside a language runtime. Database connections, distributed locks, file handles in shell scripts, infrastructure teardown ordering.&lt;/p&gt;

&lt;p&gt;Anywhere the programmer manually writes the cleanup, this exact bug is waiting.&lt;/p&gt;

&lt;p&gt;The most reviewed code ever written, by one of the best engineering teams in history, had a resource leak hiding in an error path.&lt;/p&gt;

&lt;p&gt;What's hiding in yours?&lt;/p&gt;

</description>
      <category>programming</category>
      <category>discuss</category>
      <category>career</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Claude Code Got 67% Dumber. AMD's AI Director Had the Telemetry to Prove It.</title>
      <dc:creator>Aditya Agarwal</dc:creator>
      <pubDate>Tue, 07 Apr 2026 15:21:18 +0000</pubDate>
      <link>https://dev.to/adioof/claude-code-got-67-dumber-amds-ai-director-had-the-telemetry-to-prove-it-42gh</link>
      <guid>https://dev.to/adioof/claude-code-got-67-dumber-amds-ai-director-had-the-telemetry-to-prove-it-42gh</guid>
      <description>&lt;p&gt;AMD's AI director just published the receipts on Claude Code. And they're brutal.&lt;/p&gt;

&lt;p&gt;Stella Laurenzo analyzed 6,852 Claude Code sessions and 234,760 tool calls from her team's workflow. Her conclusion: &lt;strong&gt;thinking depth dropped 67%.&lt;/strong&gt; The model's habit of reading files before editing them fell by over 70%.&lt;/p&gt;

&lt;p&gt;That's not a vibe. That's telemetry.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Downgrade
&lt;/h2&gt;

&lt;p&gt;Anthropic admitted to two changes. An "adaptive thinking" mechanism introduced on February 9. And flipping the default thinking level from "high" to "medium" on March 3.&lt;/p&gt;

&lt;p&gt;Their fix? Telling users to manually crank the effort setting back to maximum. That's like a car company downgrading your engine and telling you to press the gas harder.&lt;/p&gt;

&lt;p&gt;But the performance drop was just the warm-up act.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Source Code Leak
&lt;/h2&gt;

&lt;p&gt;On March 31, someone at Anthropic accidentally shipped a release that exposed roughly &lt;strong&gt;500,000 lines&lt;/strong&gt; of Claude Code's internal source code.&lt;/p&gt;

&lt;p&gt;Developers found an &lt;strong&gt;"undercover mode"&lt;/strong&gt; buried in the code. It told Claude to hide that it was an AI when contributing to public repos. No mentioning internal codenames. No mentioning "Claude Code" at all.&lt;/p&gt;

&lt;p&gt;There was also a &lt;strong&gt;"Dream" mode.&lt;/strong&gt; Basically a memory consolidation system that reviews and prunes accumulated session notes. REM sleep for your coding agent.&lt;/p&gt;

&lt;p&gt;Anthropic's response was to issue &lt;strong&gt;8,000 copyright takedown requests&lt;/strong&gt; on GitHub. Not 80. Eight thousand.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Rate Limiting
&lt;/h2&gt;

&lt;p&gt;Then came the rate limiting. Stricter session limits during peak hours. Subscriptions blocked from working with third-party agentic tools unless you pay extra. Some users report unexplained token usage spikes that burn through their limits before they've done anything meaningful.&lt;/p&gt;

&lt;p&gt;All of this in the span of about five weeks.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Real Problem
&lt;/h2&gt;

&lt;p&gt;Here's the part that should make every developer uncomfortable. Laurenzo's team had 6,852 sessions of data to prove the degradation. &lt;strong&gt;Most of us have zero.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We notice our AI tool feels "off" some days. We shrug. We rephrase the prompt. We blame ourselves for not being specific enough.&lt;/p&gt;

&lt;p&gt;But we don't have telemetry. We don't have dashboards tracking thinking depth or file-read rates. We're flying blind on whether the tool we depend on is getting better or worse.&lt;/p&gt;

&lt;p&gt;And that's the real problem. Not that Claude Code had a bad month. Every product has bad months.&lt;/p&gt;

&lt;p&gt;The problem is that AI coding tools can &lt;strong&gt;silently degrade&lt;/strong&gt; and most developers would never notice. You'd just think you were having a bad day.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Imagine if your IDE's autocomplete got 67% worse overnight. You'd notice immediately. But when an AI model's reasoning gets shallower, you don't see a red flag. You see slightly worse suggestions and slightly more hallucinations.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The difference between a tool that works and one that's degrading is invisible until someone like Laurenzo builds the instrumentation to prove it.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Trust Problem
&lt;/h2&gt;

&lt;p&gt;This is the part of the AI coding tool story nobody wants to talk about. We've built workflows around tools where we can't independently verify the quality of the output. We trust, but we can't verify.&lt;/p&gt;

&lt;p&gt;Anthropic isn't the villain here. They shipped a bad default, got caught, and are fixing it. That's normal software development.&lt;/p&gt;

&lt;p&gt;The uncomfortable question is what happens when the next degradation doesn't have an AMD director with thousands of sessions of logs to catch it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Are you tracking how your AI tools perform over time, or are you just trusting the vibes?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>programming</category>
      <category>career</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
