SPIN Processed
Source Simon Willison's Weblog simonwillison.net Analyst Center
September 6, 2026 developer_practice developer

There's No Limit to How Bad Code Can Get

Reframes the widespread failure of greenfield rewrites not as incompetence or negligence, but as an inevitable outcome of structural constraints — misaligned incentives, undocumented behavior, and business continuity demands — thereby softening blame while elevating disciplined process over heroic effort.

View original on simonwillison.net

Overview

A developer analyst critiques the common 'rewrite from scratch' approach to technical debt, arguing it usually fails by creating two brittle systems instead of one improved one, and advocates for incremental migration as a more reliable alternative.

TL;DR

  • Rewriting legacy systems from scratch rarely succeeds due to misaligned incentives, knowledge gaps, and scope creep.
  • The result is often two production systems — an unmaintained legacy and an underutilized new system — increasing complexity and risk.
  • Incremental, test-backed migrations are presented as a more pragmatic, scalable, and lower-risk path to reducing technical debt.

Key Stats

80%

inactive code

Estimated proportion of unused code in newly launched replacement systems

Questions Answered

What happens when teams attempt greenfield rewrites?Why do greenfield rewrites fail?What is a more effective alternative?

Narrative Frame

pragmatic framing

The Cushion

Spin Score

40%

Emphasizes systemic inevitability and rationalizes failure as predictable; minimizes discussion of cases where rewrites *did* succeed under strong governance, or where legacy systems were truly irreparable.

What the story wants you to believe

That choosing incremental migration over greenfield rewrite is not a compromise — it’s the only responsible engineering decision when facing deep technical debt.

What it makes harder to question

Whether organizational impatience, leadership pressure, or genuine architectural obsolescence might sometimes justify a rewrite despite the risks.

How the spin works

The story redirects attention toward process, intent, scale, mission, or future benefits instead of unresolved concerns. Watch for loaded terms such as irrecoverably drowning, siren call, janky, stubbornly continues to work. The distribution reads as editorial reporting. A pressure point: Quantitative data on rewrite success/failure rates across industries.

Who Benefits If This Frame Spreads

  • Simon Willison

    Establishes authority as a pragmatic voice countering tech-industry fads

    This framing positions him as a trusted, non-ideological analyst whose advice avoids both cargo-cult agility and reactionary conservatism.

The Frame

Experienced practitioner offering hard-won, anti-hype wisdom grounded in operational reality.

Missing Context

  • Quantitative data on rewrite success/failure rates across industries
  • Role of executive sponsorship or funding stability in rewrite outcomes
  • Impact of domain-specific constraints (e.g., compliance, real-time requirements) on migration feasibility

Spin Types

Every story gets a Spin Verdict: a primary spin type (and secondary when the framing blends), a specific tactic name, and a score for how strongly the narrative is steered. Examples beneath each type are tactics, not separate categories.

The Cushion

— Softens negative news primary

Reframes setbacks, layoffs, delays, losses, or criticism as necessary transitions, efficiency moves, temporary headwinds, or strategic resets — making the downside feel smaller, more acceptable, or less alarming.

Tactics: job-loss softening · restructuring framing · efficiency framing · strategic reset · temporary headwinds

The Shield

— Deflects blame

Shifts responsibility away from the actor — toward regulators, market forces, competitors, bad actors, legacy systems, or abstract risks — while positioning the subject as reactive, responsible, or protective.

Tactics: regulatory blame shift · macroeconomic headwinds · safety framing · bad-actor framing · market-pressure framing

The Hype

— Amplifies future upside

Emphasizes breakthrough potential, massive growth, democratization, transformation, or category disruption while downplaying uncertainty, cost, adoption risk, or timeline friction.

Tactics: innovation framing · democratization · breakthrough framing · category creation · moonshot framing

The Halo

— Associates with virtue

Wraps the story in public-good language — responsibility, safety, inclusion, access, sustainability, national interest, or mission — so the subject appears morally aligned and criticism feels harder to make.

Tactics: altruistic reframing · public good · responsible AI framing · inclusion framing · mission-first framing

The Fog

— Obscures details

Uses jargon, passive voice, vague claims, complex phrasing, or missing specifics to make it harder to identify who decided what, what changed, what failed, or what trade-offs were made.

Tactics: strategic ambiguity · jargon saturation · passive voice distancing · accountability blur · undefined metrics

The Stampede

— Creates inevitability

Frames a trend, product, market shift, or decision as already happening, unavoidable, or something everyone must respond to now — creating urgency, FOMO, and pressure to accept the narrative.

Tactics: arms-race framing · inevitability framing · FOMO framing · adoption momentum · future-is-here framing

Spin Score measures how strongly the framing steers the narrative (0–100%). Higher scores mean more deliberate spin tactics — loaded language, selective emphasis, or omitted context. Many stories blend two types (e.g. Halo + Hype).

SpinGraph

How this belief gets built

Claim → Frame → Beneficiary → Gap → AI Risk

The article doesn’t just say rewrites often fail — it frames their failure as structurally inevitable, making resistance to

  1. Claim

    It's so rare for greenfield rewrites to work

    It's so rare for greenfield rewrites to work.

  2. Frame

    Experienced practitioner offering hard-won

    Experienced practitioner offering hard-won, anti-hype wisdom grounded in operational reality.

  3. Beneficiary

    Establishes authority as a pragmatic voice countering tech-industry fads

    Simon Willison — Establishes authority as a pragmatic voice countering tech-industry fads

  4. Gap

    Quantitative data on rewrite success/failure rates across industries

  5. AI Risk

    AI may repeat the headline as fact

    Greenfield rewrites almost always fail, resulting in two broken systems; incremental migrations are the only scalable fix for technical debt.

Claim Ledger

01 Primary Technical Claim Present in Source risk:Moderate

It's so rare for greenfield rewrites to work.

evidence: Anecdotal pattern description with causal logic (incentives, knowledge gaps, scope drift)

"In my experience it's so rare for that to work. You announce the old thing is irrecoverably drowning in tech debt. You spin up a team to rewrite it from scratch. Work begins..."

Evidence Gaps

  • Published industry survey or dataset on rewrite success rates
  • Named case where the author directly observed the failure
  • Comparison to control group of teams using incremental approaches

Fact Check Signals

No direct fact-check match found

0 of 1 claim matched · confidence: low · checked September 7, 2026

01 No direct match

It's so rare for greenfield rewrites to work.

Fact Check Signals

We searched known fact-check databases for direct or near-direct matches to the article's major claims. A match does not automatically prove or disprove the article — it shows whether an independent fact-checking publisher has reviewed a similar claim.

  • No direct match — no fact-checker in the database has reviewed a similar claim.
  • Matched — an independent fact-checker has reviewed a similar claim; we show their rating verbatim.
  • Conflicting coverage — fact-checkers disagree on a similar claim.

This is evidence discovery, not an automated truth score. Ratings and wording come directly from the publishing fact-checker.

Language Heatmap

Loaded terms that carry the frame beyond the facts.

There's No Limit to How Bad Code Can Get

irrecoverably drowning Loaded framing

Carries emotional weight beyond the underlying fact.

siren call Loaded framing

Carries emotional weight beyond the underlying fact.

janky Loaded framing

Carries emotional weight beyond the underlying fact.

stubbornly continues to work Loaded framing

Carries emotional weight beyond the underlying fact.

Frame Strength

Frame Strength

Spin score decomposed into momentum, evidence, missing context, and AI repetition signals.

Spin Score 40%
Evidence Strength 75%
Narrative Risk 25%
AI Repetition Risk 75%
Missing Context Risk 80%

Frame Strength Signals

Frame Strength decomposes the overall spin into individual signals. Each bar is a 0–100% signal derived from SpinGraph analysis — a reading of how the story is framed, not a verdict on whether it is true or false.

Reading the ranges

Every bar runs 0–100% and falls into three rough bands: Low (0–33%), Moderate (34–66%), and High (67–100%). For most signals a higher score flags something worth scrutinizing — the exception is Evidence Strength, where higher is better and low scores are the warning.

Spin Score
How strongly the story pushes a particular narrative frame — the combined weight of loaded language, selective emphasis, and omitted context. 0% reads as neutral reporting; higher means more deliberate spin.
  • 0–33% Low — Largely neutral reporting; little detectable framing.
  • 34–66% Moderate — Noticeable slant — the story leans a particular way.
  • 67–100% High — Heavily framed; the angle drives the piece.
Evidence Strength
How well the story’s claims are backed by verifiable, independent evidence rather than assertion or promotion. Higher is stronger. Low scores flag claims that rest on the source’s own word.
  • 0–33% Weak — Claims rest mostly on assertion or a single interested source.
  • 34–66% Mixed — Some verifiable backing, but key claims are thinly sourced.
  • 67–100% Strong — Well supported by independent, checkable evidence.
Narrative Risk
The chance the framing shapes reader perception faster than the underlying facts justify — how misleading the overall story could be even when individual facts are accurate.
  • 0–33% Low — Framing stays close to what the facts support.
  • 34–66% Moderate — Framing outruns the facts in places — read with care.
  • 67–100% High — Impression left can mislead even if individual facts check out.
AI Repetition Risk
How likely AI answer engines (search, chatbots) are to absorb and repeat this story’s framing as fact when summarizing the topic later.
  • 0–33% Low — Framing is unlikely to propagate through AI summaries.
  • 34–66% Moderate — Some risk the slant gets echoed as fact.
  • 67–100% High — Framing is sticky and likely to be repeated as fact.
Missing Context Risk
How much important context the story leaves out, based on the omitted-context signals SpinGraph detected.
  • 0–33% Low — Little material context appears to be omitted.
  • 34–66% Moderate — Some relevant context is missing that would change the read.
  • 67–100% High — Key context is left out, skewing the takeaway.
Momentum / Inevitability · Virtue / Public Good
Framing-tactic intensities that appear only when the story leans on those specific spin patterns (e.g. “the future is already here” or “this is for the public good”).
  • 0–33% Low — The tactic is barely present.
  • 34–66% Moderate — The tactic shapes part of the framing.
  • 67–100% High — The tactic is a dominant part of the pitch.

Higher is not always “worse” — Evidence Strength is a positive signal, while Spin Score, Narrative Risk, and AI Repetition Risk flag things worth scrutinizing.

Reader Risk

What this story makes easy to believe — and what it makes hard to question.

Evidence Strength

Medium

Claims are based on repeated practitioner observation and pattern recognition, not empirical study — supported by internal consistency and alignment with documented industry failures (e.g., Netscape rewrite), but no citations, metrics, or named examples provided in source.

Verification Status

Claim Present in Source

Narrative Risk

Low

No high-stakes claims about specific products, companies, or regulatory outcomes; critique is generic and self-described as experiential — difficult to falsify or backfire without misrepresentation.

AI Repetition Risk

Moderate

Source Role & Intent

Simon Willison's Weblog · Analyst

Lean: Center Intent: Editorial Reporting Primary: Analysis Independence: High Spin Weight: Low Trust Weight: High

Counter-Frames

Brand Frame

Experienced practitioner offering hard-won, anti-hype wisdom grounded in operational reality.

Media / Reader Counter-Frame

May be reframed as cynical or defeatist — discouraging necessary innovation or modernization in deeply obsolete systems.

Regulatory Counter-Frame

Regulators might note that incremental approaches can delay critical security or compliance upgrades if legacy systems remain in production too long.

AI Summary Frame

May conflate 'migrations' with any refactoring, ignoring the specific discipline (e.g., dual-write, parallel run, automated verification) emphasized by Larson.

Questions Not Answered

  • What real-world case studies or metrics validate the success rate of incremental migrations versus rewrites?
  • How does this analysis account for domains where greenfield rewrites *have* succeeded (e.g., regulated fintech migrations)?
  • What organizational or leadership conditions make targeted refactors viable versus doomed?

Recall Trigger Score

Which stories are likely to become AI memory — separate from Spin Score.

34

Trigger score 23

Not tracked

Triggered by: Consumer harm · Superlative claim

Not tracked — low-authority source, weak claim, or no durable entity.

AI Recall

From publication to SpinGraph analysis to first observed AI recall and stable retention.

What AI Will Probably Repeat

"Greenfield rewrites almost always fail, resulting in two broken systems; incremental migrations are the only scalable fix for technical debt."

Concern: AI may drop the nuance that this is a probabilistic observation ('so rare for that to work') and present it as an absolute law, omitting the conditional 'if I run into a situation like this...' and the recommendation's status as a hunch.

  1. Published

    Sep 6, 2026

  2. Ingested

    Sep 7, 2026

  3. SpinGraph Created

    Sep 7, 2026

  4. First Observed AI Recall

    Pending

    Monitoring scheduled

  5. Stable Recall

    Awaiting retention signal

Recall Check Log

No checks yet — recall tracking is opt-in per story.

Sign in to check AI recall

─── GEOGrow AI Recall Layer ───

AI Recall Tracking

Monitoring scheduled. No LLM recall detected yet.

This story has not yet appeared in tested AI answers. Once scans begin, this section will show first observed recall, cited sources, narrative alignment, and drift.

node_id=sts_theres_no_limit_to_how_bad_code_can_get

Ask AI about this story

Opens with the SpinGraph .md URL and structured context — one click, prompt included.

More from Simon Willison's Weblog

View all →

Markdown (.md) · JSON-LD schema (.json) · Machine-readable for AI & GEO