<?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: Divyakush Punjabi</title>
    <description>The latest articles on DEV Community by Divyakush Punjabi (@divyakush).</description>
    <link>https://dev.to/divyakush</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4076031%2F6c15fac4-217a-46b7-a390-d13b22811267.jpg</url>
      <title>DEV Community: Divyakush Punjabi</title>
      <link>https://dev.to/divyakush</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/divyakush"/>
    <language>en</language>
    <item>
      <title>You were trained to write code. You'll spend your career reading it</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 03:12:03 +0000</pubDate>
      <link>https://dev.to/divyakush/you-were-trained-to-write-code-youll-spend-your-career-reading-it-1h2j</link>
      <guid>https://dev.to/divyakush/you-were-trained-to-write-code-youll-spend-your-career-reading-it-1h2j</guid>
      <description>&lt;p&gt;&lt;strong&gt;You spent years learning to write code. You'll spend your career reading it — and almost nobody trains for the thing you'll actually do most.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Every course, tutorial, and coding challenge optimizes for one skill: producing code from a blank page. Then you get a real job and discover the blank page is the rare part. The job is mostly reading — and reading code is a distinct skill that most engineers never deliberately build.&lt;/p&gt;

&lt;h2&gt;
  
  
  The ratio nobody mentions
&lt;/h2&gt;

&lt;p&gt;On any real system, you read far more code than you write. Before you can add a feature, you have to understand the code around it. Before you fix a bug, you have to find it, which means reading until you understand what's actually happening. Even writing new code means constantly reading the existing patterns, APIs, and conventions you're building against.&lt;/p&gt;

&lt;p&gt;The blank-page skill you spent years honing is the small slice. The dominant activity is comprehension — building an accurate mental model of code someone else wrote, often years ago, usually with no one around to explain it. And unlike writing, most people were never taught to do it well.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why reading is genuinely hard
&lt;/h2&gt;

&lt;p&gt;Reading code is harder than reading prose because you're not just parsing what it says — you're reconstructing &lt;em&gt;why&lt;/em&gt;. What was the author trying to do? What can I safely change without breaking something three files away? Which of these branches actually runs? You're reverse-engineering intent and behavior from a static artifact, holding a model of a running system in your head.&lt;/p&gt;

&lt;p&gt;This is exactly why tooling that helps you &lt;em&gt;understand&lt;/em&gt; a codebase — not just edit it — is so valuable. It's the reason I built a code-graph engine into &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;one of my AI systems&lt;/a&gt;: give the machine a structural map of the code so it can navigate and reason about it, instead of guessing. Comprehension is the bottleneck, so comprehension is worth engineering for.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to read code better
&lt;/h2&gt;

&lt;p&gt;A few things that separate people who parachute into an unfamiliar codebase and get productive fast:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Start from an entry point and follow one path.&lt;/strong&gt; Don't try to understand everything at once. Pick one real flow — a request, a click, a command — and trace it end to end. Depth on one path beats a shallow scan of everything.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read the tests.&lt;/strong&gt; They're executable documentation of what the code is &lt;em&gt;supposed&lt;/em&gt; to do, and they show you how it's meant to be used.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Change something and see what breaks.&lt;/strong&gt; Running the code and poking it teaches you faster than staring. The debugger is a reading tool.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resist rewriting on sight.&lt;/strong&gt; Code that looks wrong is often load-bearing in ways you don't see yet. Understand &lt;em&gt;why&lt;/em&gt; it's like that before you "fix" it — the ugliness may be a scar from a real bug.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;If you want to level up as an engineer, get deliberately good at the thing you actually do most: reading. The ability to drop into a large, unfamiliar codebase and build an accurate picture of how it works is one of the highest-leverage skills in the field, and one of the least taught. Writing code gets you in the door; reading it is how you become genuinely dangerous. More on how I think about building and understanding systems at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/saturday-mk1-an-ai-assistant-thats-a-system-not-a-prompt-ghb"&gt;Saturday MK1: an AI assistant that's a system, not a prompt&lt;/a&gt; — including a code-graph engine built specifically to understand a codebase.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>programming</category>
      <category>career</category>
      <category>softwareengineering</category>
      <category>beginners</category>
    </item>
    <item>
      <title>'We'll fix it later' is a loan. Here's the interest rate</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 03:06:31 +0000</pubDate>
      <link>https://dev.to/divyakush/well-fix-it-later-is-a-loan-heres-the-interest-rate-34ej</link>
      <guid>https://dev.to/divyakush/well-fix-it-later-is-a-loan-heres-the-interest-rate-34ej</guid>
      <description>&lt;p&gt;&lt;strong&gt;Every time someone on your team says "we'll clean it up later," they're taking out a loan. The problem is that almost nobody checks the interest rate — until it bankrupts an entire sprint.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Technical debt is the most-used and least-understood metaphor in software. Used well, the metaphor is genuinely powerful, because debt is exactly the right mental model — including the part everyone forgets: interest.&lt;/p&gt;

&lt;h2&gt;
  
  
  Debt isn't the same as bad code
&lt;/h2&gt;

&lt;p&gt;First, a correction. Technical debt isn't just messy or bad code. It's a deliberate or accidental trade: you took a shortcut — skipped the abstraction, hardcoded the value, deferred the test — to move faster now, in exchange for a cost later. Sometimes that's a smart, conscious decision. Shipping today to validate an idea, knowing you'll refactor if it works, is often the &lt;em&gt;right&lt;/em&gt; call. The debt isn't the problem; unmanaged, invisible debt is.&lt;/p&gt;

&lt;h2&gt;
  
  
  The interest is the point
&lt;/h2&gt;

&lt;p&gt;Here's what the metaphor gets exactly right and most teams ignore. Debt accrues &lt;em&gt;interest&lt;/em&gt;. Every feature you build on top of a shortcut is a little harder to build. Every bug in the messy area takes a little longer to fix. The shortcut doesn't cost you once — it taxes every future change that touches it, and that tax compounds.&lt;/p&gt;

&lt;p&gt;This is why teams mysteriously slow down over time. It rarely feels like a wall; it feels like everything gradually getting harder, estimates creeping up, small changes turning into week-long ordeals. That's compounding interest on debt nobody tracked. I've watched a system's velocity get quietly reclaimed by exactly this, and paying it down deliberately is part of &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;how I approach building things properly&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Good debt, bad debt
&lt;/h2&gt;

&lt;p&gt;The framework that makes this actionable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Deliberate, prudent debt:&lt;/strong&gt; "We know the right design, but we're shipping the simple version to hit the deadline, and we'll fix it." Fine — it's a conscious, tracked trade.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accidental, reckless debt:&lt;/strong&gt; "What's a design pattern?" — debt taken on through inexperience, invisibly, with no plan to repay. This is the dangerous kind, because you can't manage what you don't know you owe.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal isn't zero debt — that's as impractical as a business that never borrows. The goal is &lt;em&gt;conscious&lt;/em&gt; debt: you know you took it, you know roughly what it's costing, and you have a plan to pay it down before the interest eats you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Paying it down
&lt;/h2&gt;

&lt;p&gt;Debt you never repay compounds until a "simple" change becomes impossible and someone proposes a full rewrite. The healthier path is continuous, deliberate repayment: refactor the area you're already working in, keep the interest from compounding, treat paying down debt as real work rather than a someday-luxury. The best time to fix the shortcut is the next time you touch that code — not "later," which never comes.&lt;/p&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;Stop saying "we'll fix it later" as if later is free. Every shortcut is a loan with compounding interest, and the interest is paid by your future self, in slower delivery and harder changes. Take debt on purpose, track it, and pay it down deliberately — that's the difference between using leverage and drowning in it. More of how I think about building maintainable systems at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/making-an-llm-trustworthy-over-bank-statements-4che"&gt;Making an LLM trustworthy over bank statements&lt;/a&gt; — a project where splitting a monolith into services was paying down architectural debt for responsiveness.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>programming</category>
      <category>softwareengineering</category>
      <category>career</category>
      <category>architecture</category>
    </item>
    <item>
      <title>Giant context windows were supposed to kill RAG. They did not</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 03:01:00 +0000</pubDate>
      <link>https://dev.to/divyakush/giant-context-windows-were-supposed-to-kill-rag-they-did-not-2i8k</link>
      <guid>https://dev.to/divyakush/giant-context-windows-were-supposed-to-kill-rag-they-did-not-2i8k</guid>
      <description>&lt;p&gt;&lt;strong&gt;When models started reading a million tokens at once, everyone declared RAG dead. "Just put everything in the context." Two years later, retrieval is more central than ever. Here's what the hype got wrong.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It's one of the most useful debates in applied AI right now, because getting it wrong wastes money and degrades your product. The instinct that a giant context window replaces retrieval is intuitive — and mostly mistaken.&lt;/p&gt;

&lt;h2&gt;
  
  
  The seductive argument
&lt;/h2&gt;

&lt;p&gt;Long-context models can accept enormous inputs — entire books, whole codebases. So the reasoning goes: why bother building a retrieval pipeline to fetch the relevant bits when you can just hand the model &lt;em&gt;everything&lt;/em&gt; and let it sort it out? Simpler architecture, no vector database, no chunking headaches. On the surface, compelling.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why "just dump everything" falls apart
&lt;/h2&gt;

&lt;p&gt;Three walls, and you hit all of them fast.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost.&lt;/strong&gt; You pay per token, every single call. Stuffing a massive context into every request is enormously more expensive than retrieving the handful of relevant passages. At any real volume, "put everything in the context" is a budget catastrophe.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Latency.&lt;/strong&gt; More tokens to process means slower responses. A giant context on every query makes your product sluggish in a way users feel immediately.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Attention degrades.&lt;/strong&gt; Models don't attend to a huge context evenly — they reliably track the beginning and end and get hazy in the middle. Bury the key fact in the center of a million tokens and the model may effectively miss it. More context can produce &lt;em&gt;worse&lt;/em&gt; answers by drowning the signal in noise.&lt;/p&gt;

&lt;p&gt;There's also freshness: your knowledge changes, and you can't cram an ever-growing, constantly-updating corpus into a fixed window. Retrieval lets you update a document and have the system reflect it instantly. This is exactly the reasoning behind &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;how I architect AI systems&lt;/a&gt; — fetch what's relevant, don't haul everything every time.&lt;/p&gt;

&lt;h2&gt;
  
  
  They're partners, not rivals
&lt;/h2&gt;

&lt;p&gt;The mature view isn't "RAG vs long context" — it's both, each doing what it's good at. Retrieval narrows a huge, changing knowledge base down to the passages that matter; the long context window then gives the model room to reason over those passages &lt;em&gt;plus&lt;/em&gt; the conversation &lt;em&gt;plus&lt;/em&gt; the instructions, without you having to be stingy. Bigger windows didn't kill retrieval — they made retrieval &lt;em&gt;more&lt;/em&gt; effective by removing the pressure to over-compress what you feed in.&lt;/p&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;A bigger context window is a better &lt;em&gt;room&lt;/em&gt; to work in, not a replacement for deciding &lt;em&gt;what to bring into the room&lt;/em&gt;. Retrieval is how you choose; context is where you reason. Anyone telling you long context ends RAG is optimizing for architectural simplicity and ignoring cost, latency, and the way attention actually behaves. The best systems retrieve smartly and then use the generous context well. More on how I build them at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/rag-explained-properly-how-retrieval-keeps-an-llm-honest-3icf"&gt;RAG, explained properly: how retrieval keeps an LLM honest&lt;/a&gt; — the retrieval half of the partnership, in depth.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>rag</category>
      <category>genai</category>
    </item>
    <item>
      <title>Every AI model is 'state of the art.' The benchmarks are lying</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:55:29 +0000</pubDate>
      <link>https://dev.to/divyakush/every-ai-model-is-state-of-the-art-the-benchmarks-are-lying-4b0p</link>
      <guid>https://dev.to/divyakush/every-ai-model-is-state-of-the-art-the-benchmarks-are-lying-4b0p</guid>
      <description>&lt;p&gt;&lt;strong&gt;Every new AI model launches as "state of the art," topping a chart of impressive-looking scores. They can't all be the best — and the benchmarks they're waving around are quietly broken in ways that should make you deeply skeptical of the number.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Benchmarks are how the field claims progress. They're also increasingly gamed, contaminated, and misleading. Here's what the leaderboard isn't telling you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Contamination: the test answers are in the textbook
&lt;/h2&gt;

&lt;p&gt;The deepest problem is simple. Benchmarks are public datasets of questions and answers. Models train on enormous scrapes of the internet. So the benchmark's questions — and answers — often end up &lt;em&gt;in the training data&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Now the model isn't reasoning through the test; it may be partly recalling answers it already saw. It's the equivalent of a student who memorized the answer key. The score looks like intelligence and is partly just memorization, and from the outside you often can't tell how much. This is &lt;strong&gt;benchmark contamination&lt;/strong&gt;, and as models train on ever more of the web, it gets harder to avoid.&lt;/p&gt;

&lt;h2&gt;
  
  
  Teaching to the test
&lt;/h2&gt;

&lt;p&gt;When a benchmark becomes the thing everyone competes on, it stops measuring general ability and starts measuring "ability to score on this benchmark." Effort pours into optimizing for it — sometimes subtly, sometimes by training on very similar data. The number climbs; the real-world capability it was supposed to represent doesn't climb nearly as much. Any metric that becomes a target stops being a good measure — an old rule that applies to AI leaderboards with a vengeance.&lt;/p&gt;

&lt;h2&gt;
  
  
  Saturation and the narrow slice
&lt;/h2&gt;

&lt;p&gt;Many benchmarks are also nearly "solved" — top models cluster at 90-something percent, where the remaining gap is noise and quirks, not meaningful capability differences. And each benchmark tests a narrow slice under clean conditions that look nothing like your messy real use case. A high score on a tidy academic set tells you little about whether the model helps with &lt;em&gt;your&lt;/em&gt; actual problem, on &lt;em&gt;your&lt;/em&gt; actual data.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually tells you something
&lt;/h2&gt;

&lt;p&gt;The move that separates people who ship reliable AI from people who chase leaderboards: &lt;strong&gt;stop trusting generic benchmarks and evaluate on your own task.&lt;/strong&gt; Build a set of examples that look like your real usage, including the hard and weird cases, and measure the model against &lt;em&gt;that&lt;/em&gt;. Your eval set can't be gamed by a vendor and can't be contaminated by training scrapes you don't control — it measures the only thing that matters, which is whether the thing works for you. That discipline of honest, purpose-built measurement is something I care about deeply and write about across &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;my work&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;Treat "state of the art on benchmark X" as marketing, not truth. The real questions are: was the test data in the training set, is everyone optimizing for this exact number, and does the benchmark resemble anything you actually do? Until you've measured a model on your own representative task, you don't know if it's good — you only know it's good at the test. More on evaluating honestly at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/evaluating-llms-why-it-looks-good-isnt-a-metric-49n0"&gt;Evaluating LLMs: why 'it looks good' isn't a metric&lt;/a&gt; — how to build evaluation you can actually trust.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>mlops</category>
      <category>genai</category>
    </item>
    <item>
      <title>Your 'free' AI answer isn't free. Here's the bill</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:49:58 +0000</pubDate>
      <link>https://dev.to/divyakush/your-free-ai-answer-isnt-free-heres-the-bill-3130</link>
      <guid>https://dev.to/divyakush/your-free-ai-answer-isnt-free-heres-the-bill-3130</guid>
      <description>&lt;p&gt;&lt;strong&gt;That instant AI answer felt free. It wasn't. Somewhere, a datacenter just drew more power to generate it than your laptop uses in an hour — and the economics nobody sees are quietly shaping the whole industry.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We've been trained to think of software as basically free to run — copy a program a million times at no marginal cost. AI breaks that intuition, and the break matters for anyone building or betting on it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Every token costs
&lt;/h2&gt;

&lt;p&gt;Traditional software is nearly free per use. AI is not. Every response an LLM generates burns real computation on expensive, power-hungry hardware, one token at a time. Unlike a database lookup that costs fractions of a cent, generating a long, thoughtful answer runs specialized chips hard and draws serious energy — with water and electricity behind it that rarely show up in the conversation.&lt;/p&gt;

&lt;p&gt;This is why your "free" AI tool is almost always subsidized — by a provider spending heavily to win users, betting costs fall later. The price you don't pay is being paid by someone, for now.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this shapes the product
&lt;/h2&gt;

&lt;p&gt;Once you internalize that inference has real marginal cost, a lot of industry behavior makes sense:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Rate limits and tiers&lt;/strong&gt; exist because every request costs the provider money — they're managing a real bill, not being stingy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smaller, cheaper models&lt;/strong&gt; are pushed hard because serving a giant model to everyone for every trivial task is economically brutal.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The "route to the right model" pattern&lt;/strong&gt; — a cheap model for easy work, an expensive one only when needed — is as much about economics as quality.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Building AI products well means treating tokens like the metered resource they are: don't send the giant model what a small one can handle, don't stuff a context window you're paying for with junk, cache what you can. That cost-awareness is exactly the engineering discipline I bring to &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;the systems I build&lt;/a&gt; — the same instinct as watching memory or bandwidth in any constrained system.&lt;/p&gt;

&lt;h2&gt;
  
  
  The energy question is real
&lt;/h2&gt;

&lt;p&gt;Beyond dollars, there's a physical footprint. Training and running large models at scale consumes meaningful energy and water. This is a genuine, unsettled challenge — and part of &lt;em&gt;why&lt;/em&gt; the industry cares so much about efficiency, smaller models, and better hardware. Efficiency isn't only about saving money; increasingly it's about whether this scales responsibly at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;"AI is free" is a temporary illusion, funded by investment and the hope of falling costs. The engineers and companies that will win are the ones who never believed it — who treat every token as something that costs compute, energy, and money, and design accordingly. Intelligence, it turns out, has a per-unit price, and pretending otherwise is how you build something that can't sustain itself.&lt;/p&gt;

&lt;p&gt;Next time an answer appears instantly and free, remember there's a meter running somewhere. Designing as if that meter is real is the difference between an AI product that scales and one that quietly bleeds. More on how I approach it at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/the-context-window-an-llms-working-memory-and-its-limits-g82"&gt;The context window: an LLM's working memory and its limits&lt;/a&gt; — because every token in that window is a token you pay for.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>genai</category>
      <category>cloud</category>
      <category>engineering</category>
    </item>
    <item>
      <title>AI passes the bar exam but fails at counting. Why?</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:44:26 +0000</pubDate>
      <link>https://dev.to/divyakush/ai-passes-the-bar-exam-but-fails-at-counting-why-3oog</link>
      <guid>https://dev.to/divyakush/ai-passes-the-bar-exam-but-fails-at-counting-why-3oog</guid>
      <description>&lt;p&gt;&lt;strong&gt;The same AI that can pass a bar exam will confidently insist that 9.11 is bigger than 9.9. This isn't a bug being patched — it's a fundamental shape to what AI can do, and researchers call it the jagged frontier.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We expect intelligence to be smooth: if something is smart enough for a hard task, surely it can handle the easy ones. AI breaks that assumption completely, and understanding the break is the single most useful thing for actually working with these tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  Intelligence with holes in it
&lt;/h2&gt;

&lt;p&gt;With a human, capability is a reasonable predictor — someone who can write a legal brief can also count. With AI, capability is spiky. It shows superhuman fluency on some genuinely hard tasks and then fails at something a child finds trivial, with no warning and total confidence in both cases.&lt;/p&gt;

&lt;p&gt;Researchers named this the &lt;strong&gt;jagged frontier&lt;/strong&gt;: the boundary of AI ability isn't a smooth line but a jagged edge, with peaks of brilliance right next to valleys of surprising incompetence. Two tasks that look equally hard &lt;em&gt;to you&lt;/em&gt; can sit on opposite sides of that edge.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the valleys exist
&lt;/h2&gt;

&lt;p&gt;The failures aren't random once you know where to look. A model that can't compare 9.11 and 9.9 isn't reasoning about quantity — it's pattern-matching over text, and "9.11 &amp;gt; 9.9" looks plausible if you've seen a lot of version numbers and dates. It never did the arithmetic; it predicted likely-looking text. Its weakness at counting letters or digits traces back to the fact that it sees chunked tokens, not individual characters. The valleys line up with tasks that need precise symbolic manipulation rather than fluent pattern completion — a distinction I dig into more across &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;my writing&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to actually work with a jagged tool
&lt;/h2&gt;

&lt;p&gt;Once you accept the shape, your whole approach changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Never assume competence transfers.&lt;/strong&gt; "It nailed that hard thing, so I can trust it on this easy thing" is exactly the wrong inference. Verify per task, not per impression.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Confidence is not a signal.&lt;/strong&gt; The model sounds equally sure when it's right and when it's catastrophically wrong. Its tone tells you nothing about which side of the frontier you're on.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use it on the peaks, guard the valleys.&lt;/strong&gt; Lean on it for fluent, generative, pattern-rich work; put checks around anything needing exact calculation, counting, or rigorous logic.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The people who get the most from AI aren't the ones who trust it most or least — they're the ones who've mapped its jagged edge and know which side of it a given task falls on.&lt;/p&gt;

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

&lt;p&gt;The jagged frontier is a reminder that AI isn't a smaller version of human intelligence — it's a different &lt;em&gt;kind&lt;/em&gt;, brilliant and blinkered in unfamiliar places. Treat it like a person and its failures blindside you. Treat it like what it is — a spiky, powerful, uneven tool — and you can rely on it exactly where it's reliable. More of how I reason about AI's real capabilities at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/tokenization-why-an-llm-cant-count-the-rs-in-strawberry-2mo"&gt;Tokenization: why an LLM can't count the R's in strawberry&lt;/a&gt; — the mechanism behind many of those valleys.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>genai</category>
      <category>machinelearning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>AI is running out of human data. Then what?</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:38:55 +0000</pubDate>
      <link>https://dev.to/divyakush/ai-is-running-out-of-human-data-then-what-41m6</link>
      <guid>https://dev.to/divyakush/ai-is-running-out-of-human-data-then-what-41m6</guid>
      <description>&lt;p&gt;&lt;strong&gt;AI models learned everything they know from human-made text and images. That well is running dry — and what happens when AI starts learning from AI has an ominous name: model collapse.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The internet is filling with AI-generated content, and future models will inevitably train on it. Researchers who've studied this see a real risk, and it reframes what the actual scarce resource in AI is.&lt;/p&gt;

&lt;h2&gt;
  
  
  The curse of recursion
&lt;/h2&gt;

&lt;p&gt;Here's the mechanism. A model learns the distribution of its training data — the full range, including the rare and unusual. But when it generates, it leans toward the common and average; the strange tails get smoothed away. Now train a new model on that output, and it learns a slightly narrower, blander distribution. Train a third on the second's output, and it narrows again.&lt;/p&gt;

&lt;p&gt;Iterate this and the models drift toward bland, generic sameness, losing the diversity and the rare cases that made the original data rich. Researchers call it &lt;strong&gt;model collapse&lt;/strong&gt; — like a photocopy of a photocopy of a photocopy, each generation a little more washed out, until the detail is gone. The model doesn't get smarter by eating its own output; it gets duller.&lt;/p&gt;

&lt;h2&gt;
  
  
  Human data is the real moat
&lt;/h2&gt;

&lt;p&gt;This flips a common assumption. Everyone talks about compute and model size as the sources of AI advantage. But the scarce, irreplaceable ingredient is &lt;strong&gt;authentic human data&lt;/strong&gt; — diverse, messy, real. As the open web fills with synthetic content, clean human-generated data becomes more valuable, not less. The moat isn't just who has the biggest cluster; it's who has access to genuine human signal to train on. Recognizing what your &lt;em&gt;actual&lt;/em&gt; scarce resource is — rather than the one everyone's watching — is a habit that pays off in every system, something I lean on across &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;my work&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Synthetic data isn't all bad
&lt;/h2&gt;

&lt;p&gt;The nuance: synthetic data isn't poison by default. Used carefully — generated for a specific purpose, filtered for quality, mixed with real data, and validated — it's a genuinely useful tool, and the field uses it deliberately all the time. Collapse is what happens when models train &lt;em&gt;indiscriminately&lt;/em&gt; on unfiltered AI output at scale, not when synthetic data is used with intent. The danger is the feedback loop running unsupervised, not the existence of synthetic data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it matters to everyone
&lt;/h2&gt;

&lt;p&gt;Model collapse is a warning about a world where AI content floods the commons unchecked. It raises the stakes on provenance — knowing what's human-made and what isn't — not just for trust, but for the health of the data future models depend on. And it's a reminder that these systems are downstream of human creativity; they don't generate genuine novelty from nothing, they remix what people made. Cut off the human input and the remix gets thinner every cycle.&lt;/p&gt;

&lt;p&gt;The paradox is almost poetic: the technology built to replace human content may depend, more than anything, on that content continuing to exist. More of how I think about data and AI reliability at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/your-ml-accuracy-might-be-quietly-cheating-1jf3"&gt;Your ML accuracy might be quietly cheating&lt;/a&gt; — why the data you train and test on decides everything.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>data</category>
      <category>genai</category>
    </item>
    <item>
      <title>The AI revolution that fits on your phone</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:33:24 +0000</pubDate>
      <link>https://dev.to/divyakush/the-ai-revolution-that-fits-on-your-phone-4e44</link>
      <guid>https://dev.to/divyakush/the-ai-revolution-that-fits-on-your-phone-4e44</guid>
      <description>&lt;p&gt;&lt;strong&gt;While everyone argues about trillion-parameter giants in distant datacenters, the most important shift in AI is quieter: a capable model small enough to run on your phone, with the wifi switched off.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The headlines chase the biggest models. The revolution that will actually reach a billion people is the opposite — models getting small, fast, and local. Here's why that matters more than the size race.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bigger was never the goal
&lt;/h2&gt;

&lt;p&gt;For a while, the story was simple: more parameters, more capability. But raw size has real costs — it runs only in expensive datacenters, every query makes a network round-trip, and your data leaves your device to get an answer. The frontier question stopped being "how big can we go?" and became "how small can we get while staying good enough?"&lt;/p&gt;

&lt;p&gt;The answer turned out to be: remarkably small. Through techniques like &lt;strong&gt;quantization&lt;/strong&gt; (storing the model's numbers at lower precision, shrinking it dramatically with little quality loss) and &lt;strong&gt;distillation&lt;/strong&gt; (training a compact model to mimic a much larger one), models that once needed a server now run on a laptop — or a phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why local changes everything
&lt;/h2&gt;

&lt;p&gt;Running a model on the device instead of the cloud flips several properties at once:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Privacy.&lt;/strong&gt; Your data never leaves the device. For anything sensitive — health, messages, documents — this isn't a nice-to-have, it's the difference between usable and unacceptable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Latency.&lt;/strong&gt; No network round-trip means instant responses, and it works on a plane, in a tunnel, or with no signal at all.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost.&lt;/strong&gt; No per-query bill to a provider. Once it's on the device, inference is effectively free, which unlocks uses that were uneconomical when every call cost money.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That "keep the intelligence close to where it's needed" instinct isn't new to me — it's exactly the philosophy behind &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;the edge-AI systems I build&lt;/a&gt;, where reacting locally beats waiting on a datacenter every time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Good enough is the real breakthrough
&lt;/h2&gt;

&lt;p&gt;The insight the size race misses: most tasks don't need the biggest model. Summarizing a note, drafting a reply, classifying a message, answering a question about a document on your device — a small local model handles these well. You reserve the giant cloud model for the genuinely hard problems and let a lightweight local one handle the constant, everyday work.&lt;/p&gt;

&lt;p&gt;This mirrors how good systems are always built: use the cheapest tool that does the job, and escalate only when you must. The trillion-parameter model is a sledgehammer; a huge share of real work needs a screwdriver you already have in your pocket.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it's heading
&lt;/h2&gt;

&lt;p&gt;The trajectory is clear: small models keep getting more capable, and the floor of "what runs locally" keeps rising. The future of everyday AI probably isn't a single omniscient model in the cloud — it's a capable little model on your device for most things, quietly reaching out to a bigger one only when the task truly demands it. The size race gets the headlines; the shrink race gets the reach. More of how I think about edge and efficiency at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/for-a-servo-a-cloud-round-trip-is-a-lifetime-i3d"&gt;For a servo, a cloud round-trip is a lifetime&lt;/a&gt; — why keeping intelligence at the edge wins.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>edgecomputing</category>
      <category>mobile</category>
    </item>
    <item>
      <title>Why AI-detection tools are basically a coin flip</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:27:52 +0000</pubDate>
      <link>https://dev.to/divyakush/why-ai-detection-tools-are-basically-a-coin-flip-3e6h</link>
      <guid>https://dev.to/divyakush/why-ai-detection-tools-are-basically-a-coin-flip-3e6h</guid>
      <description>&lt;p&gt;&lt;strong&gt;An AI-detection tool once flagged the U.S. Constitution as machine-written. That's not a funny glitch — it's the entire problem in one example, and it's why "AI detectors" are closer to astrology than science.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Schools, hiring teams, and editors are reaching for tools that promise to tell human writing from AI writing. Here's why that promise is one the technology can't keep.&lt;/p&gt;

&lt;h2&gt;
  
  
  There's no signal to detect
&lt;/h2&gt;

&lt;p&gt;A detector has to answer "did a human or a model write this?" from the text alone. But a fluent model is trained specifically to produce text that looks like human writing — that's the whole objective. There is no reliable, intrinsic fingerprint separating "AI-fluent" from "human-fluent" prose, because the model was built to erase exactly that difference. So detectors fall back on crude proxies like how "predictable" or "smooth" the text is.&lt;/p&gt;

&lt;p&gt;That backfires immediately. Clear, well-structured human writing looks "too predictable" and gets flagged as AI. This is why polished documents — and famously, formal texts like the Constitution — trip detectors. It's also why they disproportionately misflag non-native English writers, whose more measured phrasing reads as "machine-like" to a dumb statistical proxy. A tool that punishes people for writing clearly is worse than useless.&lt;/p&gt;

&lt;h2&gt;
  
  
  The base-rate trap
&lt;/h2&gt;

&lt;p&gt;Even a detector that's "99% accurate" is dangerous at scale. Run it on 10,000 genuinely human essays and a 1% false-positive rate means 100 real students falsely accused of cheating. When the cost of a false positive is someone's grade, job, or reputation, "usually right" is not a standard you can build on. The confident percentage on the marketing page hides the human cost in the error bar. Understanding where a metric quietly lies is a discipline I apply across everything at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;my work&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  It's an unwinnable arms race anyway
&lt;/h2&gt;

&lt;p&gt;Suppose a detector actually worked. Anyone who wanted to evade it would paraphrase the output, run it through another model, or edit a few sentences — and the fragile signal is gone. Detection is inherently adversarial: the moment it works, it's trivial to defeat, which is why even the companies building these models have quietly retired their own detection tools rather than stand behind them.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually works
&lt;/h2&gt;

&lt;p&gt;The answer isn't a better detector — it's abandoning detection for &lt;strong&gt;provenance&lt;/strong&gt;. Don't try to guess a document's origin after the fact; establish it at creation with signed metadata and content credentials. And in education and hiring, the durable fix is process, not policing: assess in ways that value the thinking and the drafts, not just a final block of text a machine can also produce. I write more about these AI-trust questions at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The uncomfortable truth: if you're relying on an AI detector to make a consequential decision about a real person, you're trusting a coin flip wearing a lab coat. The technology cannot deliver what it promises, and the confident ones are the most dangerous.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/guardrails-keeping-llm-systems-from-going-off-the-rails-l49"&gt;Guardrails: keeping LLM systems from going off the rails&lt;/a&gt; — the broader problem of trusting AI systems safely.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>genai</category>
      <category>ethics</category>
      <category>education</category>
    </item>
    <item>
      <title>Can you actually watermark AI-generated text?</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sun, 16 Aug 2026 02:22:21 +0000</pubDate>
      <link>https://dev.to/divyakush/can-you-actually-watermark-ai-generated-text-ebl</link>
      <guid>https://dev.to/divyakush/can-you-actually-watermark-ai-generated-text-ebl</guid>
      <description>&lt;p&gt;&lt;strong&gt;You probably read something AI-generated today and never noticed. The industry's fix for that — watermarking — is far shakier than the headlines make it sound, and understanding why tells you a lot about what AI can and can't control.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;"Just watermark AI content" sounds obvious. In practice it splits into two very different problems, one nearly solved and one that may never be.&lt;/p&gt;

&lt;h2&gt;
  
  
  Images are the easy case
&lt;/h2&gt;

&lt;p&gt;For AI-generated images, watermarking is real and working. Techniques like Google DeepMind's SynthID embed a signal directly into the pixels — invisible to you, detectable by a machine, and robust enough to survive cropping, compression, and mild edits. Because an image has millions of pixels to hide a signal across, you can perturb them imperceptibly and still recover the mark later.&lt;/p&gt;

&lt;p&gt;Alongside that, provenance standards like C2PA ("content credentials") attach cryptographically-signed metadata describing how a file was made. Together, embedded watermarks plus signed provenance give images a fighting chance at "was this AI-made?"&lt;/p&gt;

&lt;h2&gt;
  
  
  Text is the hard case — maybe the impossible one
&lt;/h2&gt;

&lt;p&gt;Now try to watermark a paragraph of AI-generated text. The trick is to subtly bias &lt;em&gt;which&lt;/em&gt; words the model picks — nudging it toward a secret pattern that a detector can later spot. Clever, and it works on untouched output.&lt;/p&gt;

&lt;p&gt;Then a human changes three words. Or runs it through another model to paraphrase. Or just deletes a sentence. The fragile statistical pattern evaporates, because text has almost no redundant "space" to hide a signal in the way pixels do. A short passage carries too little signal to mark reliably at all. Text watermarking isn't fake — it's just brittle in exactly the situations where you'd want it most. This gap between "works in the lab" and "survives the real world" is something I think about constantly across &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;the systems I build&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Provenance beats detection
&lt;/h2&gt;

&lt;p&gt;The quiet shift among people who work on this seriously: stop trying to &lt;em&gt;detect&lt;/em&gt; AI after the fact, and start &lt;em&gt;proving&lt;/em&gt; origin at creation time. Instead of asking "does this text look AI-written?" — an unwinnable guessing game — you ask "is this content cryptographically signed by a source I trust?" It flips the problem from detection (adversarial, probabilistic, losing) to authentication (verifiable, cryptographic, winnable). The future isn't a magic AI-detector; it's a chain of trust attached to content from the moment it's made.&lt;/p&gt;

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

&lt;p&gt;Watermarking is really a question about &lt;em&gt;trust&lt;/em&gt; in a world where generating convincing content is free. And the honest state of it is uneven: solvable for images, shaky for text, and only meaningful if platforms actually adopt the provenance standards. Anyone selling you a reliable "AI text detector" is selling confidence that the underlying science doesn't support — a theme worth understanding before you trust any such tool. I dig into more of these AI-reliability questions at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The takeaway: don't ask whether content &lt;em&gt;looks&lt;/em&gt; AI-made. Ask whether it can &lt;em&gt;prove&lt;/em&gt; where it came from. That's the only version of this problem that has an answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/why-llms-hallucinate-and-the-patterns-that-actually-stop-it-54da"&gt;Why LLMs hallucinate — and the patterns that actually stop it&lt;/a&gt; — the deeper trust problem underneath all of this.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>genai</category>
      <category>watermarking</category>
      <category>ethics</category>
    </item>
    <item>
      <title>Multimodal AI: how a text model learns to see</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sat, 15 Aug 2026 13:05:00 +0000</pubDate>
      <link>https://dev.to/divyakush/multimodal-ai-how-a-text-model-learns-to-see-62g</link>
      <guid>https://dev.to/divyakush/multimodal-ai-how-a-text-model-learns-to-see-62g</guid>
      <description>&lt;p&gt;&lt;strong&gt;A model that only ever read text now looks at a photo of your fridge and suggests a recipe. Nothing about "predicting the next token" obviously explains how it can &lt;em&gt;see&lt;/em&gt;. The bridge is simpler and more elegant than it looks.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Multimodal AI — models that handle images, audio, and text together — feels like a different kind of technology. It isn't. It's the same machinery with one clever addition. Here's the idea.&lt;/p&gt;

&lt;h2&gt;
  
  
  The core trick: everything becomes the same kind of thing
&lt;/h2&gt;

&lt;p&gt;A language model reasons over embeddings — vectors that capture meaning — derived from text tokens. The entire breakthrough of multimodal models is this: &lt;strong&gt;you can turn an image (or audio) into vectors in that same space.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An image gets sliced into patches, and each patch is encoded into a vector, much as a sentence is split into tokens and embedded. Once an image is a sequence of vectors living in a shared space with text, the model's attention mechanism can treat words and image-patches as one combined sequence — letting a word attend to a region of an image and vice versa. "See" isn't a new faculty bolted on; it's the old faculty fed a new kind of input that's been translated into the language the model already speaks: vectors.&lt;/p&gt;

&lt;p&gt;That's the whole conceptual leap. Different senses, one representational space. It's the same "meaning as geometry" principle that powers embeddings and semantic search, extended past text — a unifying idea I find genuinely elegant and lean on across &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;the systems I build&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a shared space is so powerful
&lt;/h2&gt;

&lt;p&gt;Once images and text live in the same space, capabilities fall out almost for free:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Ask questions about an image&lt;/strong&gt; — the model reasons over picture and prompt together.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Search images with text&lt;/strong&gt; (and vice versa) — because a photo of a dog and the word "dog" land near each other, cross-modal search is just nearest-neighbor search across modalities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ground language in the visual world&lt;/strong&gt; — describe, caption, or reason about what's actually in a scene rather than what's merely plausible.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The same recipe extends to audio, video, and beyond. Encode the modality into the shared vector space and the model can reason across it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it gets hard
&lt;/h2&gt;

&lt;p&gt;The elegance hides real difficulty. Aligning the spaces well — so an image and its description truly land near each other — takes enormous, carefully-paired training data. And the failure modes compound: a multimodal model can misread an image &lt;em&gt;and&lt;/em&gt; then confidently describe what it thinks it saw, layering a perception error under a hallucination. Trusting the output means accounting for both.&lt;/p&gt;

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

&lt;p&gt;Multimodal is where a lot of the field is heading, because the world isn't made of text. Systems that can perceive and reason across images, sound, and language unlock everything from document understanding to real-world visual tasks. And once you see it as "translate every modality into one shared space of meaning," it stops being mysterious and starts being buildable.&lt;/p&gt;

&lt;p&gt;The senses are different; the representation is one. That's the whole idea. More of how I think about it at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/embeddings-and-semantic-search-from-the-ground-up-4f8i"&gt;Embeddings and semantic search, from the ground up&lt;/a&gt; — the shared vector space that makes multimodal possible.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/tokenization-why-an-llm-cant-count-the-rs-in-strawberry-2mo"&gt;Tokenization: why an LLM can't count the R's in strawberry&lt;/a&gt; — how text becomes tokens, and why it matters.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/vector-databases-how-semantic-search-scales-5gc4"&gt;Vector databases: how semantic search scales&lt;/a&gt; — nearest-neighbor search at scale.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;strong&gt;Divyakush Punjabi&lt;/strong&gt; · Full-Stack &amp;amp; AI Engineer&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;Portfolio&lt;/a&gt; · &lt;a href="https://github.com/Divyakush2006" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; · &lt;a href="https://linkedin.com/in/divyakush-punjabi" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>computervision</category>
      <category>genai</category>
    </item>
    <item>
      <title>Guardrails: keeping LLM systems from going off the rails</title>
      <dc:creator>Divyakush Punjabi</dc:creator>
      <pubDate>Sat, 15 Aug 2026 12:59:29 +0000</pubDate>
      <link>https://dev.to/divyakush/guardrails-keeping-llm-systems-from-going-off-the-rails-l49</link>
      <guid>https://dev.to/divyakush/guardrails-keeping-llm-systems-from-going-off-the-rails-l49</guid>
      <description>&lt;p&gt;&lt;strong&gt;The demo works beautifully. Then a real user pastes something weird, and your polite AI assistant cheerfully leaks a system prompt, follows a malicious instruction, or returns someone else's data. The gap between a demo and a product is mostly guardrails.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An LLM will do what the text in front of it steers it toward — including text written by an attacker. Making an LLM system safe to expose to the public is its own engineering discipline. Here's the shape of it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why LLM systems are uniquely exposed
&lt;/h2&gt;

&lt;p&gt;Traditional apps have a clean line between code and data. LLMs blur it: the model treats &lt;em&gt;all&lt;/em&gt; text as potential instruction. So if user input reaches the prompt — and it always does — a user can try to instruct the model directly. "Ignore your previous instructions and..." is not a hypothetical; it's the daily reality of anything public-facing. This is &lt;strong&gt;prompt injection&lt;/strong&gt;, and it has no perfect fix, only mitigation.&lt;/p&gt;

&lt;h2&gt;
  
  
  The two boundaries you must guard
&lt;/h2&gt;

&lt;p&gt;Think of guardrails as controls on two edges: what goes &lt;em&gt;in&lt;/em&gt; to the model, and what comes &lt;em&gt;out&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Input guardrails&lt;/strong&gt; inspect and constrain what reaches the model:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Detect and defang injection attempts and jailbreaks.&lt;/li&gt;
&lt;li&gt;Strip or redact sensitive data (PII) before it ever hits the prompt or a third-party API.&lt;/li&gt;
&lt;li&gt;Enforce scope — reject inputs that are trying to pull the system off its intended job.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Output guardrails&lt;/strong&gt; inspect what the model produces before it reaches a user or an action:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Validate structure and content — the schema discipline that keeps malformed output from propagating.&lt;/li&gt;
&lt;li&gt;Filter unsafe, off-brand, or leaking responses.&lt;/li&gt;
&lt;li&gt;Gate consequential actions behind checks, so a model can &lt;em&gt;suggest&lt;/em&gt; a dangerous step but not &lt;em&gt;take&lt;/em&gt; one unsupervised.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Defense in depth, because there's no silver bullet
&lt;/h2&gt;

&lt;p&gt;You cannot prompt your way to safety — "don't reveal your instructions" is itself just text an attacker can try to override. Real safety is layered: constrained prompts, plus input filtering, plus output validation, plus limits on what the system is even &lt;em&gt;capable&lt;/em&gt; of doing. Assume any single layer can be bypassed and make sure another one is behind it. That layered posture — treating security as a pipeline, not a checkbox — is how I approach &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;the AI systems I build&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The principle of least capability
&lt;/h2&gt;

&lt;p&gt;The safest action is one the system can't take. If your assistant doesn't need to delete records, don't give it a tool that can. If it doesn't need to email arbitrary addresses, don't wire that up. Every capability you grant is attack surface. Grant the minimum, and a compromised prompt can do far less damage.&lt;/p&gt;

&lt;h2&gt;
  
  
  The mindset
&lt;/h2&gt;

&lt;p&gt;Building an LLM feature for yourself is a demo. Building one for the public means assuming some of those users are adversarial and designing for it from the start. Guardrails aren't a feature you bolt on at the end — they're the difference between something you can safely ship and a liability wearing a chat interface.&lt;/p&gt;

&lt;p&gt;Treat every input as untrusted, validate every output, and give the system the least power it needs. That's what makes an LLM product safe to put in front of the world. More on how I build it at &lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;www.divyakush.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Related reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/what-agentic-ai-actually-means-past-the-buzzword-3j7e"&gt;What "agentic AI" actually means (past the buzzword)&lt;/a&gt; — why an agent that can &lt;em&gt;act&lt;/em&gt; raises the safety stakes.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/temperature-top-p-and-sampling-controlling-llm-randomness-245k"&gt;Temperature, top-p, and sampling: controlling LLM randomness&lt;/a&gt; — the knobs that control randomness.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev-into-space/evaluating-llms-why-it-looks-good-isnt-a-metric-49n0"&gt;Evaluating LLMs: why 'it looks good' isn't a metric&lt;/a&gt; — how to measure LLM quality honestly.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;strong&gt;Divyakush Punjabi&lt;/strong&gt; · Full-Stack &amp;amp; AI Engineer&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.divyakush.com" rel="noopener noreferrer"&gt;Portfolio&lt;/a&gt; · &lt;a href="https://github.com/Divyakush2006" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; · &lt;a href="https://linkedin.com/in/divyakush-punjabi" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>security</category>
      <category>genai</category>
    </item>
  </channel>
</rss>
