<?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: Dmitry Truhanovich</title>
    <description>The latest articles on DEV Community by Dmitry Truhanovich (@dmitry-truhanovich).</description>
    <link>https://dev.to/dmitry-truhanovich</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%2F4125040%2Feeb3ea16-57f6-44cc-b680-6101034fefa8.jpg</url>
      <title>DEV Community: Dmitry Truhanovich</title>
      <link>https://dev.to/dmitry-truhanovich</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dmitry-truhanovich"/>
    <language>en</language>
    <item>
      <title>AI Can Build Software Faster Than We Can Use It</title>
      <dc:creator>Dmitry Truhanovich</dc:creator>
      <pubDate>Thu, 22 Oct 2026 13:01:00 +0000</pubDate>
      <link>https://dev.to/dmitry-truhanovich/ai-can-build-software-faster-than-we-can-use-it-45ij</link>
      <guid>https://dev.to/dmitry-truhanovich/ai-can-build-software-faster-than-we-can-use-it-45ij</guid>
      <description>&lt;h2&gt;
  
  
  So Who Are We Building It For?
&lt;/h2&gt;

&lt;p&gt;One day, while playing Battleship, I realized that I liked the game overall, but something was still missing.&lt;/p&gt;

&lt;p&gt;I spent a little time looking online for my ideal version of Battleship, and at some point decided it would be easier to build what I wanted.&lt;/p&gt;

&lt;p&gt;I wrote a prompt and handed it to Codex.&lt;/p&gt;

&lt;p&gt;First run, then a prompt with feedback, another couple of iterations — and I had a working application.&lt;/p&gt;

&lt;p&gt;Then I created an Azure account, set up a free-tier resource, and about an hour later had the application deployed and ready to play.&lt;/p&gt;

&lt;p&gt;Clearly, the world did not need another Battleship game.&lt;/p&gt;

&lt;p&gt;But I did.&lt;/p&gt;

&lt;p&gt;And that turned out to be more interesting than the application itself.&lt;/p&gt;

&lt;p&gt;Sorry, Battleship.&lt;/p&gt;

&lt;p&gt;Other than an AI subscription for twenty dollars a month — fine, twenty-eight — and a few free evenings, almost nothing stood between a fairly trivial personal preference and a working program — and then a deployed application.&lt;/p&gt;

&lt;p&gt;A few years ago, the thought “well, I’d do this part differently” would clearly not have been enough reason to build an entire application around it.&lt;/p&gt;

&lt;p&gt;Now it was.&lt;/p&gt;

&lt;p&gt;That is where this article came from.&lt;/p&gt;

&lt;p&gt;In my first article, &lt;em&gt;&lt;a href="https://dev.to/dmitry-truhanovich/ai-can-write-code-faster-than-i-can-trust-it-1olf"&gt;AI Can Write Code Faster Than I Can Trust It&lt;/a&gt;&lt;/em&gt;, I looked at AI from the developer’s side: an agent can produce code faster than I can verify it well enough to justify accepting it.&lt;/p&gt;

&lt;p&gt;Here, I want to follow that chain one step further.&lt;/p&gt;

&lt;p&gt;Working code does not yet mean code I am prepared to trust.&lt;/p&gt;

&lt;p&gt;And a working application does not yet mean a product people will look for, pay for, and use.&lt;/p&gt;

&lt;p&gt;But there is another question.&lt;/p&gt;

&lt;p&gt;If, for some tasks, software becomes significantly cheaper to create, how much value does an idea need before it becomes rational to build it?&lt;/p&gt;

&lt;p&gt;Because AI does not only change how much software we are capable of producing.&lt;/p&gt;

&lt;p&gt;It may also change the minimum amount of expected value required for that software to be worth creating at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  Implementation as a Filter
&lt;/h2&gt;

&lt;p&gt;Before the current wave of AI, if I wanted to build a startup, an internal tool, or even a reasonably serious prototype, development itself was already a meaningful commitment.&lt;/p&gt;

&lt;p&gt;I had to understand the domain, design a solution, write the code, test it, deploy it. For a commercial product, a team, money, and time tended to appear fairly quickly on that list as well.&lt;/p&gt;

&lt;p&gt;Of course, solo developers existed long before AI.&lt;/p&gt;

&lt;p&gt;People have always written small programs for themselves.&lt;/p&gt;

&lt;p&gt;Open source, cloud platforms, frameworks, and ready-made libraries have been reducing development costs for years.&lt;/p&gt;

&lt;p&gt;It is not as if this was impossible before.&lt;/p&gt;

&lt;p&gt;But cost mattered.&lt;/p&gt;

&lt;p&gt;The more expensive the implementation, the more expected value had to exist on the other side to justify building it.&lt;/p&gt;

&lt;p&gt;If the potential market is a million users, spending several months on development can still be justified.&lt;/p&gt;

&lt;p&gt;If there are ten users, the same investment becomes much harder to justify.&lt;/p&gt;

&lt;p&gt;If there is one user, and his problem is that he slightly dislikes the existing Battleship games, development usually ends before it starts.&lt;/p&gt;

&lt;p&gt;Yes, value is not simply a function of user count.&lt;/p&gt;

&lt;p&gt;An internal tool for a handful of people can be far more valuable than an application used by thousands.&lt;/p&gt;

&lt;p&gt;But the general principle is the same:&lt;/p&gt;

&lt;p&gt;Expected value has to justify the cost of creation.&lt;/p&gt;

&lt;p&gt;Implementation cost acted as a fairly crude economic filter.&lt;/p&gt;

&lt;p&gt;It did not necessarily filter out bad ideas.&lt;/p&gt;

&lt;p&gt;It filtered out ideas whose expected value was too small relative to the cost of implementing them.&lt;/p&gt;

&lt;p&gt;AI has significantly weakened that filter.&lt;/p&gt;

&lt;p&gt;For some kinds of tasks, it has made the holes in it much larger.&lt;/p&gt;

&lt;p&gt;Something that once needed a mass market to justify building may now need only a niche.&lt;/p&gt;

&lt;p&gt;Then a team.&lt;/p&gt;

&lt;p&gt;Then one person.&lt;/p&gt;

&lt;p&gt;And, at the limit, one specific task.&lt;/p&gt;

&lt;h2&gt;
  
  
  And There Really Is More Software
&lt;/h2&gt;

&lt;p&gt;The most obvious conclusion is roughly this: if software becomes cheaper to create for some tasks, we will create more of it.&lt;/p&gt;

&lt;p&gt;And that seems to be happening.&lt;/p&gt;

&lt;p&gt;In a study by Mert Demirer, Leon Musolff, and Liyuan Yang, the researchers used data from more than 500,000 GitHub developers together with information about their use of AI coding tools.&lt;/p&gt;

&lt;p&gt;For autonomous coding agents, they estimated a cumulative effect on coding activity of roughly +240%.&lt;/p&gt;

&lt;p&gt;But further down the production chain, the effect drops noticeably: the number of projects increases by about 80%, releases by around 30%. An additional analysis across four major software marketplaces found an increase in new applications without a corresponding increase in their aggregate usage.[1]&lt;/p&gt;

&lt;p&gt;That does not mean all of this new software is unwanted.&lt;/p&gt;

&lt;p&gt;But it creates an interesting asymmetry:&lt;/p&gt;

&lt;p&gt;Software production can accelerate much faster than software usage.&lt;/p&gt;

&lt;p&gt;A similar signal appears in the subscription app market.&lt;/p&gt;

&lt;p&gt;RevenueCat, citing AppFigures data, reports that the number of new subscription apps grew from roughly 2,000 per month in early 2022 to more than 14,700 in early 2026 — about seven times as many.[2]&lt;/p&gt;

&lt;p&gt;That, of course, does not prove that AI caused a sevenfold increase.&lt;/p&gt;

&lt;p&gt;But we know who to blame.&lt;/p&gt;

&lt;p&gt;Nor does it prove that all those applications are unwanted.&lt;/p&gt;

&lt;p&gt;And for some reason, this reminded me of the classic school math problem about filling a swimming pool.&lt;/p&gt;

&lt;p&gt;Except now, it seems, we have two different pools.&lt;/p&gt;

&lt;p&gt;In one, there is much more software that still needs to find its users.&lt;/p&gt;

&lt;p&gt;In the other, software may not need a market at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pool One: Commercial Software
&lt;/h2&gt;

&lt;p&gt;There is the familiar software market.&lt;/p&gt;

&lt;p&gt;A company builds a product for other people.&lt;/p&gt;

&lt;p&gt;Writing a working application is not enough.&lt;/p&gt;

&lt;p&gt;The user first has to know it exists, understand why they need it, choose it over the alternatives, trust it with their data — or at least their time — and figure out how to use it.&lt;/p&gt;

&lt;p&gt;And if this is a business, ideally pay for it.&lt;/p&gt;

&lt;p&gt;Then, preferably, not leave a week later.&lt;/p&gt;

&lt;p&gt;In this segment, cheaper implementation can substantially increase supply.&lt;/p&gt;

&lt;p&gt;If ten teams could previously build ten similar products, and those same teams can now build fifty, the amount of user attention does not automatically increase fivefold with them.&lt;/p&gt;

&lt;p&gt;There is some evidence of this limitation.&lt;/p&gt;

&lt;p&gt;In the Share of Attention study covering 303 users and 2,201 desktop applications, the authors found a negative relationship between the size of a user’s application set and the share of attention received by an individual application.[3]&lt;/p&gt;

&lt;p&gt;Sensor Tower’s 2025 data shows another side of the same asymmetry: downloads across iOS and Google Play grew by 0.8%, time spent in apps by 3.8%, while IAP revenue grew by 10.6%.[4]&lt;/p&gt;

&lt;p&gt;None of this proves a general “overproduction of software.”&lt;/p&gt;

&lt;p&gt;But cheaper implementation does not remove the old product problems: distribution, trust, support, reliability, and retention.&lt;/p&gt;

&lt;p&gt;Working software does not automatically become a working product.&lt;/p&gt;

&lt;p&gt;More than that, if a demo or prototype can now be assembled in an evening, the mere fact that it exists says a little less than it used to.&lt;/p&gt;

&lt;p&gt;The code works.&lt;/p&gt;

&lt;p&gt;Good.&lt;/p&gt;

&lt;p&gt;Why should anyone choose this one?&lt;/p&gt;

&lt;p&gt;There is another side effect here as well.&lt;/p&gt;

&lt;p&gt;When implementation was expensive, functionality that had already been built created a barrier of its own: a competitor still had to implement it, test it, and maintain it.&lt;/p&gt;

&lt;p&gt;If AI substantially reduces that cost for certain classes of problems, “we already wrote this code” becomes a weaker moat on its own.&lt;/p&gt;

&lt;p&gt;But only on its own.&lt;/p&gt;

&lt;p&gt;Distribution, trust, integrations, reputation, data, support, operational history, and user habits do not disappear.&lt;/p&gt;

&lt;p&gt;So cheaper implementation does not automatically make building better than buying.&lt;/p&gt;

&lt;p&gt;It simply makes the choice a little less one-sided.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pool Two: Cheap and Cheerful — Software for One
&lt;/h2&gt;

&lt;p&gt;Which brings me back to Battleship.&lt;/p&gt;

&lt;p&gt;Because the logic of overproduction applies much less cleanly to this second category.&lt;/p&gt;

&lt;p&gt;Suppose I need, exactly once, to parse a few thousand lines in some peculiar format.&lt;/p&gt;

&lt;p&gt;Previously, I would first look for an existing program or library.&lt;/p&gt;

&lt;p&gt;Then try to force it to do almost what I needed.&lt;/p&gt;

&lt;p&gt;Then curse the interface.&lt;/p&gt;

&lt;p&gt;Then write a small script anyway.&lt;/p&gt;

&lt;p&gt;Now I can explain the task to an agent and, an hour later, have a tool built specifically for my workflow.&lt;/p&gt;

&lt;p&gt;It may not have a website, pricing, marketing, onboarding, a polished interface, or even a second user.&lt;/p&gt;

&lt;p&gt;And that does not necessarily make it bad software.&lt;/p&gt;

&lt;p&gt;It simply does not need to be a product.&lt;/p&gt;

&lt;p&gt;I do not need to convince myself to download it — I know exactly why it exists.&lt;/p&gt;

&lt;p&gt;I do not need to separately trust a vendor.&lt;/p&gt;

&lt;p&gt;There is no vendor.&lt;/p&gt;

&lt;p&gt;But I still need enough confidence in the software itself and in what the agent built, particularly when the cost of an error is high.&lt;/p&gt;

&lt;p&gt;I do not need a universal UX.&lt;/p&gt;

&lt;p&gt;I need an interface that makes sense to me.&lt;/p&gt;

&lt;p&gt;And if the task disappears two weeks later, perhaps the rational thing to do is throw the tool away and never open it again.&lt;/p&gt;

&lt;p&gt;For a serious or long-lived problem, an existing product may still often be more rational than building your own.&lt;/p&gt;

&lt;p&gt;AI can reduce the cost of implementation very quickly.&lt;/p&gt;

&lt;p&gt;It does not remove responsibility for the consequences at the same speed.&lt;/p&gt;

&lt;p&gt;But for a one-off or extremely narrow task, the requirements are very different.&lt;/p&gt;

&lt;p&gt;And that changes the economics.&lt;/p&gt;

&lt;p&gt;Software used to need enough expected value to justify the cost of creating it.&lt;/p&gt;

&lt;p&gt;Commercial software usually got that value from many users.&lt;/p&gt;

&lt;p&gt;But if the cost of creation falls far enough, the minimum audience capable of justifying software can shrink as well.&lt;/p&gt;

&lt;p&gt;mass market → niche → team → one person → one task&lt;/p&gt;

&lt;p&gt;And as the audience shrinks, the lifetime of the software may shrink with it.&lt;/p&gt;

&lt;p&gt;In some cases, the user stops being only a user.&lt;/p&gt;

&lt;p&gt;The familiar chain usually runs through a company and its developers before becoming a product. For some tasks, it can now run almost directly from the user through an agent to software.&lt;/p&gt;

&lt;h2&gt;
  
  
  So Is This Actually Overproduction?
&lt;/h2&gt;

&lt;p&gt;I am no longer sure that all the additional software being created should be called “excess.”&lt;/p&gt;

&lt;p&gt;In one pool, the supply shock is quite real.&lt;/p&gt;

&lt;p&gt;More and more commercial products can compete for roughly the same user attention.&lt;/p&gt;

&lt;p&gt;Implementation gets cheaper, but discovery, trust, distribution, retention, and ownership remain.&lt;/p&gt;

&lt;p&gt;In the other pool, almost the opposite is happening.&lt;/p&gt;

&lt;p&gt;Lower development costs make it economical to serve demand that previously was simply not worth serving.&lt;/p&gt;

&lt;p&gt;Not because the problem did not exist.&lt;/p&gt;

&lt;p&gt;It was not large enough to justify the cost of development.&lt;/p&gt;

&lt;p&gt;The world did not need another Battleship game.&lt;/p&gt;

&lt;p&gt;The market did not need it.&lt;/p&gt;

&lt;p&gt;Even a very small niche probably did not need it.&lt;/p&gt;

&lt;p&gt;But I did.&lt;/p&gt;

&lt;p&gt;And that turned out to be enough.&lt;/p&gt;

&lt;p&gt;Perhaps that is the more important change.&lt;/p&gt;

&lt;p&gt;For tasks where AI genuinely reduces implementation cost substantially, it also reduces the minimum amount of expected value required to make creating software rational.&lt;/p&gt;

&lt;p&gt;Which means the same increase in the amount of software can represent two completely different things.&lt;/p&gt;

&lt;p&gt;In some places, we really are producing more and more products competing for limited attention.&lt;/p&gt;

&lt;p&gt;In others, it is becoming rational for the first time to create software that does not need a market at all.&lt;/p&gt;

&lt;p&gt;So perhaps the main question is no longer whether we are producing too much software.&lt;/p&gt;

&lt;p&gt;It is this:&lt;/p&gt;

&lt;p&gt;What counts as sufficient reason for software to exist when the cost of creating it keeps falling?&lt;/p&gt;

&lt;p&gt;And immediately behind that question comes another one.&lt;/p&gt;

&lt;p&gt;A slightly uncomfortable one for me as a developer.&lt;/p&gt;

&lt;p&gt;If users can now create some of the software they need for themselves, what exactly remains valuable in professional software development?&lt;/p&gt;

&lt;p&gt;But that is a very different question...&lt;/p&gt;

&lt;p&gt;P.S. Some evenings, I still play a round or two of my Battleship game.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;p&gt;[1] &lt;a href="https://www.nber.org/papers/w35275" rel="noopener noreferrer"&gt;Mert Demirer, Leon Musolff, Liyuan Yang — &lt;em&gt;Writing Code vs. Shipping Code: Productivity Effects Across Generations of AI Coding Tools&lt;/em&gt;. NBER Working Paper 35275, revised September 2026.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[2] &lt;a href="https://www.revenuecat.com/state-of-subscription-apps" rel="noopener noreferrer"&gt;RevenueCat — &lt;em&gt;State of Subscription Apps 2026&lt;/em&gt;. New app launch figures sourced from AppFigures; RevenueCat dataset covers 115,000+ subscription apps and more than $16 billion in revenue.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[3] &lt;a href="https://www.sciencedirect.com/science/article/pii/S0747563221003290" rel="noopener noreferrer"&gt;Lars Rieser, Brent Furneaux — &lt;em&gt;Share of Attention: Exploring the Allocation of User Attention to Consumer Applications&lt;/em&gt;. Computers in Human Behavior, Vol. 126, 2022.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[4] &lt;a href="https://sensortower.com/blog/state-of-mobile-2026" rel="noopener noreferrer"&gt;Sensor Tower — &lt;em&gt;2026 State of Mobile: AI Moves Mobile into Its Next Phase&lt;/em&gt;.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>discuss</category>
    </item>
    <item>
      <title>AI Can Write Code Faster Than I Can Trust It</title>
      <dc:creator>Dmitry Truhanovich</dc:creator>
      <pubDate>Wed, 16 Sep 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/dmitry-truhanovich/ai-can-write-code-faster-than-i-can-trust-it-1olf</link>
      <guid>https://dev.to/dmitry-truhanovich/ai-can-write-code-faster-than-i-can-trust-it-1olf</guid>
      <description>&lt;h2&gt;
  
  
  Will I still understand a project I (didn't quite) write?
&lt;/h2&gt;

&lt;p&gt;A couple of years ago, I decided to build a simple application for cleaning up unnecessary folders in C# projects.&lt;/p&gt;

&lt;p&gt;As every programmer is apparently required to write their own logger, DI container, and ORM at least once, I decided to write my own utility.&lt;/p&gt;

&lt;p&gt;It did one fairly simple thing: found temporary bin and obj directories in .NET projects and deleted them.&lt;/p&gt;

&lt;p&gt;AI wasn’t quite the cool kid yet, so eventually I abandoned the WinForms application. Mostly because I couldn’t be bothered to figure out how to turn it into a proper Visual Studio extension.&lt;/p&gt;

&lt;p&gt;Then Codex arrived.&lt;/p&gt;

&lt;p&gt;Or, more accurately, I started using it seriously.&lt;/p&gt;

&lt;p&gt;I handed it the repository and asked it to turn the application into a proper extension.&lt;/p&gt;

&lt;p&gt;GPT-5.2 was still a bit green and didn’t quite get there.&lt;/p&gt;

&lt;p&gt;Not that it failed completely. It produced something. Code appeared.&lt;/p&gt;

&lt;p&gt;But I couldn’t turn what it produced into a solid working solution, so I abandoned the idea again.&lt;/p&gt;

&lt;p&gt;Some time later, GPT-5.4 came out. After some ritual troubleshooting, I finally managed to port the application.&lt;/p&gt;

&lt;p&gt;The actual task, meanwhile, had barely changed.&lt;/p&gt;

&lt;p&gt;It still deleted bin and obj.&lt;/p&gt;

&lt;h2&gt;
  
  
  So what now?
&lt;/h2&gt;

&lt;p&gt;From that point on, I started using the same prompt — remember prompt engineering? Very 2025 — and the same instruction with every new model:&lt;/p&gt;

&lt;p&gt;Do a code review of the project.&lt;/p&gt;

&lt;p&gt;Every new model, at the same effort level, found a fresh list of problems.&lt;/p&gt;

&lt;p&gt;And not just cosmetic ones.&lt;/p&gt;

&lt;p&gt;Another P0.&lt;/p&gt;

&lt;p&gt;P1s and P2s were never far behind.&lt;/p&gt;

&lt;p&gt;After each review, I asked the model to fix everything.&lt;/p&gt;

&lt;p&gt;The fix would turn into hundreds of lines of changed and newly added code.&lt;/p&gt;

&lt;p&gt;The project became “better.”&lt;/p&gt;

&lt;p&gt;Then the next model came out.&lt;/p&gt;

&lt;p&gt;And found critical problems again.&lt;/p&gt;

&lt;p&gt;And so the cycle continued.&lt;/p&gt;

&lt;p&gt;I can think of several explanations for this:&lt;/p&gt;

&lt;p&gt;The original code genuinely had some code smells, and several generations of models have simply been finding more and more problems in it. I don’t write bugs, obviously.&lt;br&gt;
New models really are getting so much better at code review that they see things previous models simply missed. Questionable, but fine.&lt;br&gt;
Some of the new problems are introduced by the previous fixes.&lt;br&gt;
Models are simply getting more inventive at finding the next P0 in places where nobody saw one yesterday.&lt;/p&gt;

&lt;p&gt;And if that is the case, the problem is no longer just the code.&lt;/p&gt;

&lt;p&gt;It is also the process.&lt;/p&gt;

&lt;p&gt;If you ask an AI to perform a review, it is almost required to find something worth fixing.&lt;/p&gt;

&lt;p&gt;Preferably something “critical.”&lt;/p&gt;

&lt;p&gt;There is also no obvious stopping condition for this loop:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;review → fix → review → fix&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;At what point is the project good enough?&lt;/p&gt;

&lt;p&gt;When does the next fix add less value than the complexity it introduces?&lt;/p&gt;

&lt;p&gt;The funniest part is that the actual task has not changed this entire time.&lt;/p&gt;

&lt;p&gt;The program still just deletes bin and obj.&lt;/p&gt;

&lt;p&gt;The project, however, gets larger after every new review.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where do I go from here?
&lt;/h2&gt;

&lt;p&gt;By now, this small project has grown noticeably.&lt;/p&gt;

&lt;p&gt;There is much more code, even though the actual task is still the same.&lt;/p&gt;

&lt;p&gt;It still deletes temporary folders from C# projects.&lt;/p&gt;

&lt;p&gt;And the issue is not just the number of lines.&lt;/p&gt;

&lt;p&gt;The issue is me.&lt;/p&gt;

&lt;p&gt;I still roughly know how the project works.&lt;/p&gt;

&lt;p&gt;I know which patterns different classes follow. I roughly know where things live.&lt;/p&gt;

&lt;p&gt;But if I had to make a substantial change manually, I would probably need to learn large parts of the repository almost from scratch.&lt;/p&gt;

&lt;p&gt;In the past, a significant part of my mental model of a project formed naturally while I was writing it.&lt;/p&gt;

&lt;p&gt;When you write a class yourself, you usually remember why it exists.&lt;/p&gt;

&lt;p&gt;You remember why you implemented it that way.&lt;/p&gt;

&lt;p&gt;You remember the alternatives you tried and discarded.&lt;/p&gt;

&lt;p&gt;You remember where you made a compromise, and what other code is quietly holding that workaround together.&lt;/p&gt;

&lt;p&gt;With an agent, that connection breaks.&lt;/p&gt;

&lt;p&gt;It can produce a finished implementation in minutes.&lt;/p&gt;

&lt;p&gt;The code already exists.&lt;/p&gt;

&lt;p&gt;My understanding of that code does not.&lt;/p&gt;

&lt;p&gt;And if AI really does remove the constraint on implementation speed, then in my own tiny project I have run into what is increasingly called the verification bottleneck:&lt;/p&gt;

&lt;p&gt;The agent can produce code faster than I can verify it well enough to justify accepting it.&lt;/p&gt;

&lt;p&gt;Which raises another question:&lt;/p&gt;

&lt;p&gt;Do I even need to understand all of it?&lt;/p&gt;

&lt;p&gt;We never understood every line of our systems before AI either.&lt;/p&gt;

&lt;p&gt;I don’t know the internal implementation of the entire .NET runtime.&lt;/p&gt;

&lt;p&gt;I don’t read the source code of every NuGet dependency.&lt;/p&gt;

&lt;p&gt;I don’t go line by line through everything another developer writes.&lt;/p&gt;

&lt;p&gt;We constantly work through abstractions, contracts, tests, and trust in code written by other people.&lt;/p&gt;

&lt;p&gt;So what changes with AI?&lt;/p&gt;

&lt;p&gt;This is where it gets more complicated.&lt;/p&gt;

&lt;p&gt;With code written by another developer, I can at least try to recover the intent.&lt;/p&gt;

&lt;p&gt;I can ask why they chose that particular solution, what alternatives they considered, and where they deliberately accepted a trade-off.&lt;/p&gt;

&lt;p&gt;More importantly, I can usually try to understand their line of reasoning.&lt;/p&gt;

&lt;p&gt;We are both human.&lt;/p&gt;

&lt;p&gt;We have roughly similar constraints, ways of reasoning, and professional experience.&lt;/p&gt;

&lt;p&gt;Even when I disagree with a decision, I can often reconstruct why another developer arrived at it.&lt;/p&gt;

&lt;p&gt;With an agent, it is different.&lt;/p&gt;

&lt;p&gt;Its internal process is fundamentally not a human line of thought that I can reconstruct from my own experience.&lt;/p&gt;

&lt;p&gt;I can analyze the result, the prompt, the context, and the changes it made.&lt;/p&gt;

&lt;p&gt;But I cannot treat them exactly like another developer’s decision and simply “understand what they were thinking.”&lt;/p&gt;

&lt;p&gt;That context is also much easier to lose.&lt;/p&gt;

&lt;p&gt;The diff stays in the repository.&lt;/p&gt;

&lt;p&gt;The reasons why that diff ended up looking exactly the way it does may remain somewhere in the history of an agent session.&lt;/p&gt;

&lt;p&gt;Or disappear with it.&lt;/p&gt;

&lt;p&gt;On the other hand, if I try to understand every line of generated code, I lose a significant part of the productivity gain AI gives me.&lt;/p&gt;

&lt;p&gt;While I carefully read several hundred lines of the latest diff, someone else will already have their agent building the next feature.&lt;/p&gt;

&lt;p&gt;And then another one.&lt;/p&gt;

&lt;p&gt;In the job market, they will look much faster and more productive.&lt;/p&gt;

&lt;p&gt;But if I stop understanding generated code altogether, sooner or later I will end up owning a system that I am formally responsible for but do not actually know.&lt;/p&gt;

&lt;p&gt;So the question of whether a developer needs to understand every line has probably become rhetorical.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where's the Boundary?
&lt;/h2&gt;

&lt;p&gt;AI can already produce code faster than I can properly read it.&lt;/p&gt;

&lt;p&gt;So how well does a developer need to understand a repository to still genuinely own it?&lt;/p&gt;

&lt;p&gt;Is understanding the architecture enough?&lt;/p&gt;

&lt;p&gt;The main contracts?&lt;/p&gt;

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

&lt;p&gt;The failure modes?&lt;/p&gt;

&lt;p&gt;Or will there come a point when saying, “I built this feature,” means roughly the same thing as saying, “I used a library whose internals I have never read”?&lt;/p&gt;

&lt;p&gt;In the past, authorship of code and understanding of code tended to develop together.&lt;/p&gt;

&lt;p&gt;Now they are starting to separate.&lt;/p&gt;

&lt;p&gt;You can get the code almost immediately.&lt;/p&gt;

&lt;p&gt;Trust still has to be built.&lt;/p&gt;

&lt;p&gt;And the developer is still responsible for the code the agent generates.&lt;/p&gt;

&lt;p&gt;So perhaps the real constraint on agentic development will not be how quickly AI can write code.&lt;/p&gt;

&lt;p&gt;It will be how quickly a human can determine what, exactly, they have enough reason to trust in that code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instead of a postscript
&lt;/h2&gt;

&lt;p&gt;New models will keep coming.&lt;/p&gt;

&lt;p&gt;They will keep getting smarter.&lt;/p&gt;

&lt;p&gt;And I am quite sure the next generation of AI will once again find a critical P0 in my little project that still just deletes bin and obj.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>softwaredevelopment</category>
      <category>dotnet</category>
    </item>
  </channel>
</rss>
