[{"data":1,"prerenderedAt":388},["ShallowReactive",2],{"post-\u002Fcomprehension-debt-the-bill-comes-due-alone":3},{"page":4,"translation":329,"nav":331,"related":378,"random":381},{"id":5,"title":6,"body":7,"categories":305,"category":308,"date":309,"description":310,"draft":311,"extension":312,"image":313,"kind":314,"lang":315,"meta":316,"navigation":317,"path":318,"readingTime":319,"seo":320,"slug":321,"stem":321,"tags":322,"translationKey":326,"type":327,"updated":308,"__hash__":328},"posts\u002Fcomprehension-debt-the-bill-comes-due-alone.md","Comprehension Debt: The Bill Comes Due Alone",{"type":8,"value":9,"toc":296},"minimark",[10,14,22,60,65,68,79,82,86,89,112,124,141,165,168,172,175,182,185,188,192,195,198,211,217,229,239,242,246,253,283,290,293],[11,12,13],"p",{},"I ship with AI coding agents almost every day. I'm not writing this from the sidelines as someone who tried Copilot once and got spooked. I'm writing it from the opposite position — as a solo founder who has leaned into these tools hard enough to feel exactly where they break.",[11,15,16,17,21],{},"And the thing that breaks isn't the code. The code usually compiles. It passes the tests. It looks clean in the diff. The thing that breaks is ",[18,19,20],"em",{},"understanding"," — and on a solo team, there is no one to absorb the loss but you.",[23,24,25,32],"blockquote",{},[11,26,27,28],{},"💡 ",[29,30,31],"strong",{},"TL;DR: Key Takeaways",[33,34,35,42,48,54],"ul",{},[36,37,38,41],"li",{},[29,39,40],{},"Comprehension Debt:"," The silent gap between the amount of code in your system and what you actually understand.",[36,43,44,47],{},[29,45,46],{},"The Solo Risk:"," Unlike teams, solo developers have no senior review buffer to absorb this debt. You are both the writer and the reviewer.",[36,49,50,53],{},[29,51,52],{},"The Stats:"," AI tools double code churn (to 6-7%) and flatline security pass rates (~55%). Seniors face a 19% productivity hit due to the increased review load.",[36,55,56,59],{},[29,57,58],{},"The Fix:"," Write the specification first, treat AI code as untrusted input, use strong type systems (which catch 94% of LLM compile errors), and automate verification.",[61,62,64],"h2",{"id":63},"the-debt-you-cant-see-in-the-diff","The debt you can't see in the diff",[11,66,67],{},"Technical debt is honest. You can see it. You took a shortcut, you knew it was a shortcut, you made a note to come back. It sits in the open.",[11,69,70,71,74,75,78],{},"There's a second kind of debt that doesn't show up anywhere, and it's the one AI tooling manufactures at scale. Call it ",[29,72,73],{},"comprehension debt",": the gap between how much code now exists in your system and how much of it any human actually understands. Technical debt you logged on purpose. Comprehension debt accrues silently, every time you accept a suggestion that works without ever building the mental model of ",[18,76,77],{},"why"," it works.",[11,80,81],{},"The reason this is dangerous is that the two debts feel identical right up until production breaks. A clean codebase you don't understand and a messy one you understand deeply look the same in a dashboard. They feel very different at 2 a.m.",[61,83,85],{"id":84},"what-the-data-actually-says-and-what-it-doesnt","What the data actually says — and what it doesn't",[11,87,88],{},"This is where most takes on the subject overreach, so let me be precise, because the precise version is alarming enough.",[11,90,91,94,95,107,108,111],{},[29,92,93],{},"Security."," ",[96,97,106],"a",{"className":98,"href":100,"rel":101,"target":105},[99],"dofollow","https:\u002F\u002Fwww.veracode.com\u002Fresources\u002Fanalyst-reports\u002F2025-genai-code-security-report\u002F",[102,103,104],"nofollow","noopener","noreferrer","_blank","Veracode's 2025 GenAI Code Security Report"," ran more than 100 models across 80+ coding tasks. In 45% of cases the model introduced a known security flaw. For cross-site scripting the failure rate was 86%; for log injection, 88%. The detail that matters most: bigger, newer models did ",[18,109,110],{},"not"," score meaningfully better. Syntax pass rates have climbed past 95% over two years while security pass rates sat flat around 55%. That's the signature of a structural problem, not a temporary one you can wait out for the next model release.",[11,113,114,94,117,123],{},[29,115,116],{},"Maintainability.",[96,118,122],{"className":119,"href":120,"rel":121,"target":105},[99],"https:\u002F\u002Fwww.gitclear.com\u002Fai_assistant_code_quality_2025_research",[102,103,104],"GitClear"," analyzed 211 million changed lines from 2020 to 2024. Code churn — lines rewritten or reverted within two weeks of being committed — roughly doubled from its pre-AI baseline (about 3% to between 6 and 7%, depending on the slice). Duplicated code blocks jumped roughly eightfold in 2024, the first year copy-pasted code outpaced refactored code. The pattern is \"add it and move on\" rather than \"consolidate and reuse.\" (One figure worth flagging: you'll see \"5.5% to 7.9%\" churn quoted around the web. It traces to a secondary summary and doesn't match GitClear's own primary numbers. The trend is real; that specific pair of numbers is shaky. Worth knowing if you're going to cite it.)",[11,125,126,129,130,136,137,140],{},[29,127,128],{},"Comprehension, measured directly."," The most interesting study here comes from Anthropic — the company building the tools. In ",[96,131,135],{"className":132,"href":133,"rel":134,"target":105},[99],"https:\u002F\u002Fwww.anthropic.com\u002Fresearch\u002FAI-assistance-coding-skills",[102,103,104],"a randomized controlled trial",", developers who used AI assistance scored 17% lower — about two letter grades — on a quiz covering concepts they'd used minutes earlier. The nuance the headline misses: AI didn't ",[18,138,139],{},"guarantee"," worse retention. The people who held their scores used AI to interrogate the problem — asking why, requesting explanations — not just to emit code. Essentially: those who asked the tool to simply \"write code\" saw their retention drop, while those who pushed it to explain \"why does this work this way?\" held their ground. The tool isn't the variable. How you hold it is.",[11,142,143,146,147,153,154,157,158,164],{},[29,144,145],{},"The team-level redistribution."," Two separate studies get blurred together in the popular version of this argument, and the distinction matters. ",[96,148,152],{"className":149,"href":150,"rel":151,"target":105},[99],"https:\u002F\u002Fmetr.org\u002Fblog\u002F2025-07-10-early-2025-ai-experienced-os-dev-study\u002F",[102,103,104],"METR's RCT"," found that experienced developers were 19% ",[18,155,156],{},"slower"," on their own tasks with AI — and, tellingly, still believed they'd been faster. A different study (",[96,159,163],{"className":160,"href":161,"rel":162,"target":105},[99],"https:\u002F\u002Farxiv.org\u002Fabs\u002F2510.10165",[102,103,104],"a difference-in-differences analysis of Copilot adoption across open-source projects",") found that after AI arrived, the productivity bump went mostly to junior contributors, while senior developers reviewed ~6.5% more code and took a 19% hit to their own output. They became the cleanup crew. Same number, different mechanisms; don't fuse them.",[11,166,167],{},"That second finding is the one I want to sit with, because of what it implies for anyone working alone.",[61,169,171],{"id":170},"the-solo-founder-is-the-canary","The solo founder is the canary",[11,173,174],{},"In a team, comprehension debt has somewhere to go. The juniors generate fast, and the seniors absorb the review load — they catch the broken assumptions, move the misplaced code, ask why the service boundary exists. The data shows this is exactly what happens, and it's why senior productivity drops. It's miserable for the seniors, but the system has a shock absorber.",[11,176,177,178,181],{},"Solo, there is no shock absorber. You are the junior pressing tab and the senior who's supposed to catch it. The same person who was moving fast an hour ago is now expected to review with fresh, skeptical eyes — and they can't, because the only mental model in the building is the borrowed one the AI handed over. There's no second pair of eyes that ",[18,179,180],{},"didn't"," take the shortcut.",[11,183,184],{},"So the redistribution that protects teams doesn't exist for you. The debt doesn't move. It compounds in one head — and a borrowed mental model doesn't survive a production incident, no matter how senior the person holding it.",[11,186,187],{},"This is the part the \"AI is killing engineering teams\" genre misses entirely. The problem isn't worst in big teams. It's worst at the smallest possible scale, where it's quietest, where there's no one to notice you've stopped understanding your own system.",[61,189,191],{"id":190},"what-actually-works-from-someone-still-using-the-tools","What actually works (from someone still using the tools)",[11,193,194],{},"I'm not going to tell you to use less AI. I don't, and the data doesn't support that as the fix either — the people who retained comprehension used AI heavily, just differently. The shift is about what you treat as the thing you protect.",[11,196,197],{},"For me, in practice, that's come down to a few disciplines:",[11,199,200,203,204,207,208,210],{},[29,201,202],{},"Make the specification the primary artifact, not the code."," The default workflow is: AI generates code, human glances at it, it ships. That's backwards. The thing a human owns should be the intent — the ",[18,205,206],{},"what"," and the ",[18,209,77],{}," — written before the agent touches anything. The code is the implementation detail. If I can't state, in plain language, why a piece of code exists, I'm not done, no matter what the test suite says.",[11,212,213,216],{},[29,214,215],{},"Treat AI output in high-risk zones like untrusted input."," Auth, payments, anything touching money or user data, system boundaries — I review these the way I'd review a stranger's pull request, every single time. \"The AI wrote it\" is not a defense; in a regulated domain it's a confession.",[11,218,219,94,222,228],{},[29,220,221],{},"Use type systems as a real guardrail, not a style choice.",[96,223,227],{"className":224,"href":225,"rel":226,"target":105},[99],"https:\u002F\u002Farxiv.org\u002Fabs\u002F2504.09246",[102,103,104],"One study out of ETH Zürich"," found that 94% of LLM compilation errors are type-check failures — meaning a strong type system catches the overwhelming majority of a model's mechanical mistakes before they reach you. In an AI-assisted workflow, types aren't pedantry. They're the cheapest reviewer you'll ever hire.",[11,230,231,234,235,238],{},[29,232,233],{},"Build a verification layer you trust more than your own tired judgment."," Because there's no second human, I've had to externalize the review — checks, audits, automated passes that flag complexity and drift — so that ",[18,236,237],{},"something"," skeptical exists in the loop besides the version of me that just spent three hours vibing with an agent.",[11,240,241],{},"None of this is about distrust of AI. It's calibrated confidence: knowing what the tool is reliably good at, knowing exactly where it fails, and designing the process around both. Blind trust and paranoid rejection are both lazy. The work is in the middle.",[61,243,245],{"id":244},"the-actual-stakes","The actual stakes",[11,247,248,249,252],{},"There's a comforting story going around: don't worry about any of this, because a future, smarter model will clean it up. It won't. A model can refactor syntax. It cannot refactor ",[18,250,251],{},"meaning it never had",". If no human ever understood why a system was built the way it was, an AI \"cleaning it up\" is just stacking new assumptions on top of unexamined old ones. That's not paying down debt. That's borrowing more to cover the interest.",[11,254,255,256,262,263,262,269,275,276,282],{},"You can see where the serious players have landed. SQLite — running on billions of devices — now explicitly rejects AI-generated contributions, because their standard is total accountability and probabilistic output is incompatible with it. ",[96,257,261],{"className":258,"href":259,"rel":260,"target":105},[99],"https:\u002F\u002Fziglang.org\u002Fcode-of-conduct\u002F",[102,103,104],"Zig",", ",[96,264,268],{"className":265,"href":266,"rel":267,"target":105},[99],"https:\u002F\u002Fwww.netbsd.org\u002Fdevelopers\u002Fcommit-guidelines.html",[102,103,104],"NetBSD",[96,270,274],{"className":271,"href":272,"rel":273,"target":105},[99],"https:\u002F\u002Fgitlab.gnome.org\u002FGNOME\u002Fgimp\u002F-\u002Fblob\u002Fmaster\u002F.gitlab\u002Fmerge_request_templates\u002Fdefault.md",[102,103,104],"GIMP",", and ",[96,277,281],{"className":278,"href":279,"rel":280,"target":105},[99],"https:\u002F\u002Fwww.qemu.org\u002Fdocs\u002Fmaster\u002Fdevel\u002Fcode-provenance.html",[102,103,104],"qemu"," have drawn similar lines. These aren't anti-technology cranks. They're the people whose code you depend on, deciding that for systems that truly matter, a human has to understand every line.",[11,284,285,286,289],{},"You don't have to go that far. I haven't. But the underlying judgment is the one to internalize: ",[29,287,288],{},"the scarce, valuable thing is no longer the ability to produce code. It's the ability to vouch for it"," — to know why it exists, and to know when it's wrong.",[11,291,292],{},"For a solo founder, that's not a nice-to-have. It's the whole job. The market is about to be flooded with people who can generate working software and cannot explain it. The ones who survive the transition won't be the ones who generated the most. They'll be the ones who still understood what they shipped.",[11,294,295],{},"Speed without understanding isn't productivity. It's a loan. And when you work alone, you're the only one who ever pays it back.",{"title":297,"searchDepth":298,"depth":298,"links":299},"",2,[300,301,302,303,304],{"id":63,"depth":298,"text":64},{"id":84,"depth":298,"text":85},{"id":170,"depth":298,"text":171},{"id":190,"depth":298,"text":191},{"id":244,"depth":298,"text":245},[306,307],"ai","engineering",null,"2026-06-23","I ship with AI coding agents daily. What breaks isn't the code — it's comprehension. And working solo, there's no one to absorb that debt but you.",false,"md","\u002Fimages\u002Fhero\u002Fcomprehension-debt.avif","Essay","en",{},true,"\u002Fcomprehension-debt-the-bill-comes-due-alone",8,{"title":6,"description":310},"comprehension-debt-the-bill-comes-due-alone",[323,324,325],"ai-coding","technical-debt","solo-founder","comprehension-debt","post","aa-fQaZ4qqd4JIvH-HmIKtQhk27A8-BuHN3zSTamY9Y",{"path":330},"\u002Ftr\u002Fanlama-borcu-fatura-tek-basina-gelir",{"prev":332,"next":335,"others":338,"lucky":377,"readingTime":319},{"path":333,"title":334},"\u002Fthe-job-ai-wont-take-and-the-five-it-prevents","The Job AI Won't Take — and the Five It Quietly Prevents",{"path":336,"title":337},"\u002Fproductlog-the-platform-i-built-for-myself-first","ProductLog: The Platform I Built for Myself First",[339,340,341,344,347,350,353,356,359,362,365,368,371,374],{"path":333,"title":334},{"path":336,"title":337},{"path":342,"title":343},"\u002Fai-visibility-illusion-bing-citation-share","The AI Visibility Illusion: What Bing's Citation Share Data Actually Reveals",{"path":345,"title":346},"\u002Fthe-new-evrenbal-com-a-new-era-and-blogging-philosophy","The New Evrenbal.com: A New Era and Blogging Philosophy",{"path":348,"title":349},"\u002F1m-impressions-per-month-0-revenue-a-programmatic-seo-post-mortem","1M Impressions per Month, $0 Revenue: A Programmatic SEO Post-Mortem",{"path":351,"title":352},"\u002Fthe-end-of-coding-or-a-new-renaissance-the-invisible-crisis-of-ai","The End of Coding or a New Renaissance? The Invisible Crisis of AI",{"path":354,"title":355},"\u002Fraising-children-in-the-age-of-artificial-intelligence","Raising Children in the Age of Artificial Intelligence",{"path":357,"title":358},"\u002Fpesintaksit-cash-vs-installments-a-turkish-inflation-aware-payment-comparison-tool","Cash or Installments? – The Story Behind PeşinTaksit",{"path":360,"title":361},"\u002Fredar-ai-powered-summaries-for-kap-disclosures-and-open-sources","Redar: AI-Powered Summaries for KAP Disclosures and Open Sources",{"path":363,"title":364},"\u002Fbeyond-the-bot-lessons-from-building-a-chat-system-for-global-patients","Beyond the bot: lessons from building a chat system for global patients",{"path":366,"title":367},"\u002Fhow-i-built-a-modern-infrastructure-using-open-source-tools-and-the-power-of-cloudflare","How I Built a Modern Infrastructure Using Open Source Tools and the Power of Cloudflare",{"path":369,"title":370},"\u002Ffrom-rules-to-decisions-the-real-time-sales-intelligence-platform-we-built-at-vanity","From Rules to Decisions: The Real-Time Sales Intelligence Platform We Built at Vanity",{"path":372,"title":373},"\u002Fan-seo-experiment-in-a-low-competition-serp-with-google-maps-and-openai","An SEO Experiment in a Low-Competition SERP with Google Maps and OpenAI",{"path":375,"title":376},"\u002Fwhy-im-building-rankextension-making-google-search-console-actually-make-sense","Why I’m Building RankExtension: Making Google Search Console Actually Make Sense",{"path":363,"title":364},[379],{"path":333,"title":334,"date":380},"2026-06-25",[382,384,386],{"path":372,"title":373,"date":383},"2025-06-05",{"path":366,"title":367,"date":385},"2025-07-02",{"path":348,"title":349,"date":387},"2026-06-21",1782350301866]