Five studies that are changing how I think about AI in software engineering
Engineering Enablement ยท email ยท 2026-07-10 Reader ๐ฅ๏ธ
Code Was Never the BottleneckCognitive DebtDeveloper Experience & FlowIntent DebtMeasuring AI ImpactOrchestration Tax / Human Review BottleneckTechnical Debt
Five methodologically different studies converge on one story: AI has compressed the upstream code-generation work of software engineering, shifting the binding constraint downstream to review, integration, verification, and shared understanding, while our tools, metrics, and team designs have not yet moved with it.
theoretical ยท mixed โ A research roundup (byline Brian Houck) that summarizes five studies (expository) and then argues, across them, that the binding constraint in software engineering has moved downstream (argumentative synthesis). Its primary intention is to reorient how the reader understands AI's effect on software engineering ('changing how I think'), so it reads as theoretical/interpretive; the closing prescription ('treat understanding as a deliverable'; tools/metrics/team designs must move) gives it a thin practical turn.
Structure
| Part | Role |
|---|---|
| Framing (paras 1-4) | States the overarching thesis and the reframing question |
| Study 1 โ Heilman (Copilot dose-response) | Establishes the empirical anchor that AI genuinely accelerates code production |
| Study 2 โ Demirer (writing vs shipping code) | Turns the argument: gains attenuate through the delivery hierarchy |
| Study 3 โ Vella (longitudinal DevEx) | Adds the lived-experience dimension: productivity and developer experience decouple |
| Study 4 โ Choudhuri (AI Where It Matters / bounded delegation) | Shows practitioners already feel the shift and are asking for downstream (verification) tooling |
| Study 5 โ Storey (technical -> cognitive + intent debt) | Supplies the deepest cost and the reframe of software health |
| Final thoughts | Synthesizes all five into one claim and names the open horizon |
Key terms
- Active Coding Time
How much time a developer spends actively engaging with development tools โ used by Heilman as the control variable so productivity is compared within the same engineer across weeks. - dose-response
A way to do causal analysis once everyone already uses the tool: relate the amount of Copilot usage to PR throughput and look for a monotonic, saturating relationship. - elasticity of substitution
An economics measure of how replaceable human work is with AI output; Demirer's ~0.25 estimate means AI and human effort are largely complements, not substitutes. - productivity-experience paradox
Vella's finding that productivity and developer experience correlate cross-sectionally but their change-scores decouple over time under AI-assisted work. - bounded delegation
Choudhuri's concept: a strict boundary around where developers want AI to stop โ absorb the tedious assembly work (docs, edge-case tests) but never the core logic, architecture, or critical decisions, even for tasks AI could plausibly handle. - right-shift burden
Because AI speeds up code generation, it creates a downstream bottleneck: more code to review, more incidents to debug, documentation falling behind faster. - cognitive debt Cognitive Debt
Storey: debt that 'lives in people' โ accumulates when a team's shared understanding of a system erodes faster than it is replenished, producing 'an accumulation of not knowing'. - intent debt Intent Debt
Storey: debt that 'lives in artifacts' โ accumulates when the goals, constraints, and rationale that humans and AI agents need are unclear, unwritten, or forgotten; becomes a first-order constraint on what AI can do. - treat understanding as a deliverable
Storey's headline prescription: shared understanding should be a first-class product of development, not a side effect of writing code.
Propositions
- explicitcorroboratedAI has compressed the upstream code-generation work of software engineering, shifting the binding constraint downstream to review, integration, verification, and understanding.conf: highsupportsMeasuring AI impact, assessing readiness, and new data trends ยท p1 โ The roundup's thesis that the constraint has moved downstream directly backs the claim that code generation was never the real bottleneck; review, planning, and organizational readiness are.supports โHow Datadog Used Claude and Cursor for Test-Driven Production Migration ยท p5 โ The AI compressed the upstream code-generation (translating each method to the new schema) while the binding work moved downstream to humans who had to review the output and author the query optimizations the model could not discover โ an instance of the constraint shifting downstream to verification and refinement.
- explicitWe are generating code faster than we are generating the systems needed to safely understand, verify, and deliver it.conf: highsupportsSimon Wardley's Post โ Industrialisation of ML: nine notes on what to expect ยท p10 โ 'Generating code faster than the systems needed to understand it' is the same claim as Wardley's 'comprehension and the chain of understanding become the new bottleneck.'
- explicitControlling for active coding time and comparing engineers to themselves, the highest-Copilot-usage weeks were associated with ~40% more completed PRs per hour of coding time, with the strongest effects on larger (7+ file) PRs and gains leveling off at very high usage.conf: high
- explicitcontestedAI's coding-activity gains attenuate as work moves through the delivery hierarchy (lines of code -> files -> commits -> PRs -> repos -> releases): commit increases of +40% (autocomplete) to +180% (autonomous agents) top out at only ~+30% more releases shipped.conf: highsupportsPresentation: The Multi-Agent Approach: Building Reliable and Controllable Software Development Automation ยท p2 โ Demirer's attenuation of gains through the delivery hierarchy empirically confirms that AI 'merely relocates the bottleneck from writing to reviewing/verifying' โ more code, not more end-to-end velocity.contradicts โCo-Existence and the End of Co-Intelligence ยท p3 โ Mollick predicts coding-agent gains will generalize broadly across fields; this cross-study synthesis shows the gains he cites (commit increases up to +180%) attenuate sharply by the time work reaches shipped releases (only +30%), undercutting the generalization even within coding itself.
- explicitcorroboratedA low estimated elasticity of substitution (~0.25) between AI output and human effort implies AI and human work are still largely complements rather than substitutes, because substantial human work is still required to review, integrate, validate, and ship.conf: highsupports โHow Datadog Used Claude and Cursor for Test-Driven Production Migration ยท p2 โ The non-autonomous loop โ humans supplying schema, tests, and validation while the model produces first-pass code โ is concrete field evidence for AI and human work being complements, not substitutes, because substantial human work remains to specify, verify, and integrate.
- explicitProductivity and developer experience are decoupling in AI-assisted workflows: perceived productivity stayed high and stable (84% reported improvement at both time points), yet the share reporting worse DevEx on at least one dimension nearly doubled (14% to 27%) in six months, and productivity change-scores did not correlate with DevEx change-scores.conf: highsupportsThe Future Of Software Engineering ยท p4 โ Vella's longitudinal decoupling of productivity and DevEx is direct evidence for the proposition that productivity and developer experience are decoupling under AI.
- explicitcontestedDevelopers want AI shifted from code generation into verification tasks and impose a strict 'bounded delegation' boundary โ never delegating core logic, architecture, or critical decisions, drawing that line even for tasks they acknowledge AI could handle, so the boundary is normative and will not move as models improve.conf: highcontradicts โThe Pulse: Interesting AI coding stats from Cursor ยท p7 โ p7 claims the developer 'bounded delegation' boundary is normative and 'will not move as models improve.' Cursor's data shows a review-related delegation behavior moving fast (10% to 40% unreviewed commits in one month) precisely as models improved (Opus 4.7 / GPT-5.5). This contradicts the temporal-stability generalization specifically; note that skipping manual review is delegation-adjacent, not identical to p7's 'delegating core logic/architecture,' so it challenges the 'won't move' claim rather than refuting the whole thesis.
- explicitSoftware-health debt has three distinct loci โ technical debt (in code), cognitive debt (in people), intent debt (in artifacts) โ and AI reduces technical debt (refactoring, test generation, automated review) while quietly accelerating cognitive and intent debt.conf: highsupportsThe Intent Debt ยท p1 โ This is the primary-source account of Storey's Triple Debt Model (code/heads/artifacts) that Osmani's post cites.
- explicitIntent debt is the unclear, unwritten, or forgotten goals, constraints, and rationale that both humans and AI agents need to work safely, and it becomes a first-order constraint on what AI can actually do as more development becomes AI-assisted.conf: highsupportsThe Intent Debt ยท p2 โ Storey's 'intent debt lives in artifacts โ goals, constraints, and rationale unclear, unwritten, or forgotten' is a near-identical definition to intent debt as the absence/erosion of externalized rationale.
- explicitcorroboratedCognitive debt accumulates when a team's shared understanding erodes faster than it is replenished, because when AI generates code developers may accept it without building the mental model they would have built by writing it themselves.conf: highsupportsFragments: February 9 ยท p2 โ Storey's cognitive-debt mechanism (accepting AI code without building the mental model) matches Fowler's 'delegating building work to LLMs means the team no longer gains as much understanding โ cognitive debt.'supports โThe Pulse: Interesting AI coding stats from Cursor ยท p7 โ p10 says cognitive debt accumulates when developers accept AI-generated code without building the mental model they would have built by writing it. The 10%-to-40% rise in commits landed without personal review is direct behavioral evidence of exactly that acceptance-without-comprehension pattern.
- explicitThe three debts interact and compound causally โ intent debt causes cognitive debt, cognitive debt causes technical debt, and technical debt amplifies cognitive debt โ so managing system health requires attention to all three layers, not just the one easiest to measure.conf: high
- explicitShared understanding should be treated as a first-class deliverable of software development, not something that happens as a side effect of writing code.conf: high
- implicitThe agreement of five methodologically different studies is treated as strong evidence for a single narrative, even though shared curatorial framing and author overlap (three of five come from people the author knows and works with extensively) could manufacture the appearance of convergence.conf: medium
- implicit'Releases shipped' is used as the terminal proxy for delivered value, assuming that more releases equal more value consumed by users.conf: medium
- implicitThe downstream bottleneck is framed as a defect to be engineered away with new tools, metrics, and team designs, rather than as a healthy rate-limit that protects quality and understanding.conf: medium
Arguments
The binding constraint in software engineering has moved downstream (to review, integration, verification, and understanding), so productivity gains from faster code generation largely fail to convert into shipped value.
Explicit premises:
- Copilot usage is associated with ~40% more PRs per hour of coding time (Heilman).
- Coding-activity gains of +40% to +180% attenuate to only ~+30% more releases shipped (Demirer).
- The elasticity of substitution between AI and human effort is low (~0.25), so humans remain complements who must review, integrate, validate, and ship (Demirer).
- Developers report a downstream flood โ more code to review, more incidents, docs falling behind โ and ask for verification tooling (Choudhuri).
- Developer experience erodes even as throughput perceptions hold (Vella).
Implicit premises:
- The five studies measure the same underlying phenomenon, so their agreement is evidence rather than an artifact of shared framing or overlapping authorship.
- 'Releases shipped' is a valid proxy for value delivered to users.
- The gap between generation and delivery is a bottleneck to be removed rather than a rate-limit that protects quality.
Inferences:
- If gains attenuate through the delivery process, then code-centric productivity metrics (PRs/hour, commits, LOC) systematically overstate AI's impact on delivered value.
- If the craft boundary developers draw is normative rather than capability-bound, then improving model capability alone will not dissolve the downstream bottleneck; only org, process, and metric redesign will.
Managing software-system health in the AI era requires attending to cognitive and intent debt and treating shared understanding as a deliverable, not just paying down technical debt.
Explicit premises:
- AI reduces technical debt but accelerates cognitive and intent debt (Storey).
- The three debts compound causally, so ignoring the harder-to-measure two undermines the whole (Storey).
- Intent debt lives in artifacts and becomes a first-order constraint on what AI can do (Storey).
Implicit premises:
- Cognitive and intent debt are as real and as costly as technical debt despite being far harder to measure.
- Shared understanding is a producible, deliverable artifact rather than a non-transferable byproduct of doing the work oneself.
Inferences:
- If understanding is a deliverable, teams need explicit mechanisms and metrics to produce and verify it โ which the article calls for but does not specify.
Narratives
- Heilman et al.'s observational dose-response study: 16,223 developers over 43 weeks, controlling for active coding time and comparing each engineer to themselves, found ~40% more completed PRs per hour in highest-Copilot weeks, strongest for 7+ file PRs, surviving seven robustness/falsification tests.
โ Study-as-evidence establishing that AI genuinely accelerates code production โ the anchor the rest of the roundup builds on and then qualifies. - Demirer, Musolff & Yang's NBER analysis of 100,000+ GitHub developers traced gains through lines-of-code -> files -> commits -> PRs -> repos -> releases and found large coding-activity gains shrinking to ~+30% more releases, with an inferred elasticity of substitution of ~0.25.
โ Study-as-evidence for the pivot: gains do not survive to shipped software, and humans remain complements โ the empirical heart of 'the bottleneck moved downstream'. - Vella & Blincoe's six-month longitudinal study of 95 professional engineers (two questionnaires, mixed-methods, reflexive thematic analysis) found stable positive productivity perceptions but the worse-DevEx share nearly doubling (14% to 27%), with flow state most vulnerable and change-scores decoupling from productivity.
โ Study-as-evidence for the lived cost: productivity and developer experience are decoupling under AI โ the 'productivity-experience paradox'. - Choudhuri et al.'s 'AI Where It Matters' second paper, from 860 Microsoft developers' survey responses, outlines 22 desired AI tools centered on 'bounded delegation', names the 'right-shift burden', the move to verification, and four non-negotiable guardrails.
โ Study-as-evidence that practitioners already perceive the shifted bottleneck and want downstream (verification) tooling while refusing to delegate craft. - Margaret-Anne Storey's paper 'From Technical Debt to Cognitive and Intent Debt' makes a generational argument that the technical-debt metaphor is insufficient: AI reduces technical debt while accelerating cognitive debt (in people) and intent debt (in artifacts), which compound, so understanding should be treated as a deliverable.
โ Study-as-evidence supplying the deepest cost and the normative reframe of software health โ presented as the most important of the five.
Questions addressed
- โ
Is AI making developers faster at writing code?
Yes โ Heilman's ~40% more PRs/hour and Vella's stable-positive productivity perceptions confirm a real, persistent upstream speedup โ but the author reframes this as the wrong question to fixate on. - โ
Do the coding-speed gains survive all the way to shipped software?
Largely no โ Demirer shows gains attenuate through the delivery hierarchy, topping out at ~+30% more releases despite up to +180% more commits. - โ
Where do the new bottlenecks emerge?
Downstream โ review, integration, verification, and understanding; developers experience this as the 'right-shift burden'. - โ
What are the costs if understanding can't keep pace with generation?
Eroded flow and cognitive load (Vella) and, most deeply, cognitive and intent debt โ the slow erosion of shared understanding that makes systems safe to change (Storey). - โญ Is the observed delivery-process fall-off a fundamental limit of software engineering, or just that organizations have not yet adapted their processes to an agentic world?
Explicitly named as an open question and left unresolved; no criterion is offered to distinguish the two.
Gaps
- incompleteConvergence is asserted, not tested. The five studies use different methods and measure different constructs (PR throughput, release counts, DevEx dimensions, a tooling wishlist, a debt taxonomy), yet their 'convergence' is asserted by the curator, and the disclosure that three of five come from close colleagues is noted but never reconciled with the strength placed on their agreement.
Read next: Read against the same construct-agreement worry raised elsewhere in the corpus: extract-agentic-code-review#g1 questions whether 'independent datasets that agree' truly measure one underlying thing when the metrics differ. Apply that skepticism to whether these five studies measure one phenomenon. - incomplete'Releases shipped' (~+30%) is used as the terminal proxy for delivered value, but Demirer's own chain extends to 'software consumed by users', and the article stops at releases without asking whether more releases equal more value.
Read next: Read extract-elizabeth-ayer-ai-value-delivery, which argues there is no observed flourishing of value delivery despite faster code โ a direct test of whether release throughput tracks value. - incompleteThe author's own open question โ is the delivery fall-off a fundamental limit or merely unadapted org processes? โ is raised but given no criterion, prediction, or evidence that would distinguish the two hypotheses.
Read next: Read extract-fabrice-bernhard-post#g5 (the Lean WIP question: does accelerating non-bottleneck steps free human capacity for the bottleneck or just inflate upstream WIP?) and extract-osmani-orchestration-tax-is-you (the bottleneck as structural rather than motivational). - incomplete'Treat understanding as a deliverable' is the headline prescription but is given no mechanism: how understanding is produced, externalized, measured, or verified as a deliverable is unspecified, and that is the hard part.
Read next: Read extract-osmani-intent-debt for concrete substrate (AGENTS.md as intent ledger, ADRs, learnings files) and brain-food-answers-without-effort#p11 for the objection that understanding is a non-transferable byproduct of effort, not a portable object that can be delivered.
Closes gaps elsewhere
- Finding Comfort in the Uncertainty ยท g4 โ That gap flags that the productivity/developer-experience divergence was raised without evidence, measure, or mechanism. Vella's six-month longitudinal study of 95 engineers supplies the evidence and measure: the worse-DevEx share nearly doubled (14% to 27%) while perceived productivity stayed high (84%), and productivity change-scores did not correlate with DevEx change-scores. (It supplies measurement, not a deep causal mechanism.)
Related documents
- Fragments: February 9
- Presentation: The Multi-Agent Approach: Building Reliable and Controllable Software Development Automation
- The 8 software engineering metrics AI broke
- Agentic Code Review
- Fragments: February 13
- The Intent Debt
- AI coding creates two kinds of debt. You're only measuring one
- AI isn't making developers more productive โ it's making them busier
- AI Enthusiasts Are in a Race Against Time, AI Skeptics Are in a Race Against Entropy
- AI productivity is burning out your best engineers