I took 20 real production bugs from open-source projects — segfaults, race conditions, logic errors, memory leaks, off-by-one errors — and raced myself against three AI models. The rules: each contestant gets the failing code, the error message, and 15 minutes. Here is what happened.

The Setup

Twenty bugs, selected from public GitHub issues that were eventually resolved. Each bug was reproduced and confirmed. The AI models received the same context I did: the buggy file, the error output, and a one-sentence description of the expected behavior.

The models were all frontier-class, running through API calls with no fine-tuning or special prompting beyond the bug context. I used my normal debugging workflow: read the error, trace the logic, form hypotheses, test fixes.

The Results

Quick bugs (obvious errors, clear stack traces): AI dominated. All three models identified the fix in under 30 seconds for 12 of the 20 bugs. I solved the same 12 in 2-5 minutes each. Pure speed advantage to the machines.

Medium bugs (requires understanding program state): Split decision. For 5 bugs involving race conditions or state-dependent behavior, I solved 4 and the best model solved 3. The models struggled with bugs where the error message pointed to a symptom rather than the cause.

Hard bugs (architectural issues, subtle logic errors): I won. For 3 bugs that required understanding the broader system design — why a particular approach was chosen, what invariants were being maintained — the models either proposed fixes that would break other functionality or correctly identified the symptom but not the root cause.

What AI Is Good At

What Humans Are Good At

The Verdict

AI wins on speed and breadth. Humans win on depth and judgment. The optimal workflow: let AI take the first pass on every bug. If it solves it in 30 seconds, great — you saved 5 minutes. If its fix looks suspicious, that is your cue to engage your own reasoning.

Frequently Asked Questions

Would results differ with specialized coding models?

Likely. Models fine-tuned on debugging tasks with step-by-step reasoning tend to perform better on medium-difficulty bugs. The general models were handicapped on tasks requiring structured debugging methodology.

Is AI getting better at hard bugs?

Yes, but slowly. The hard bugs require what might be called "software engineering reasoning" — understanding design intent, system invariants, and failure modes. This improves with model scale but remains an area where experienced humans have a clear edge.