Agentic coding: No effect on my development speed
Posted: 2026-03-11
Summary
Giving an AI agent a natural-language description of small programming tasks takes me longer than trying to accomplish them directly.
Overview
By the geometric mean (most meaningful metric), AI is slower: Tasks take 34% longer than predicted (vs 1% without AI).
Predictability (by stddev and MAD) is slightly worse with AI.
Observations and caveats
When giving tasks to AI, I still fully review the outputs. I often end up reworking significant portions of the AI-generated code.
Data
| Metric | ai | human |
|---|---|---|
| Samples | 27 | 25 |
| Median | 1.533 | 0.867 |
| Geo Mean | 1.343 | 1.083 |
| Mean | 1.678 | 1.347 |
| Min | 0.300 | 0.400 |
| Max | 4.800 | 4.500 |
| StdDev | 1.119 | 0.982 |
| MAD | 0.617 | 0.367 |
The mean/median values are based on the ratio of actual time to estimated time.
Open questions
Does Spec-driven development (e.g., where in Duende I’m already generating 11K+ LOC) impact my productivity? This data doesn’t inform that question.
Even if the method doesn’t directly impact development speed, does it still impact my productivity, by allowing me to conserve mental energy? For example, does it enable me to remain in flow longer? I don’t have any data for this hypothesis.
Have the ratios changed over time?
Would using different models change the distribution? I should gather data with other models.
Methodology
Source data
This is based on 52 observations from 2025-10-07 to 2026-03-23 corresponding to individual development tasks. For each, I estimated the time it would take me to accomplish
Development method
“ai” means I gave an agent a natural-language description of the task. I used Duende’s agent with Gemini 2.5 Flash.
“human” means I mostly implemented the task myself. In some cases I asked LLMs a few simple question (e.g., “show me the API to concatenate lists”).
Estimate before method selection
I estimate the time required before selecting development method: my estimates reflect how much time I think it would take me to implement the task manually (i.e., “human” method).
Random method selection
I select the method randomly with a coin flip:
(( RANDOM % 2 )) && echo ai || echo human