Sabotaging projects by overthinking, scope creep, and structural diffing

Article format and focus

  • Several commenters note the piece reads more like a personal newsletter than a focused blog post, which explains its multiple topics and meandering structure.
  • Some think it should have been split into two: one on overthinking/scope creep, another on structural diffing.
  • Many comments focus only on over-engineering, even though a large part of the piece was about diff tools.

Scope creep, overthinking, and finishing projects

  • Common pattern: start with a simple goal → do lots of research → keep expanding scope → never ship.
  • Counter-strategy: lock scope early, ignore most “better ideas”, ship a minimal v1, then iterate.
  • Others warn against swinging too far: thoughtful upfront modeling and domain knowledge can prevent costly redesigns.
  • Scope creep can sometimes reveal the “real” problem being solved, so not all expansion is bad.
  • Deadlines (e.g., game jams) are seen as very effective constraints against endless expansion.
  • Advice for side projects: clarify “why” (learning, personal itch, business) and match the level of research/engineering to that goal.

PhD and academic research parallels

  • Many PhD experiences mirror the article: broad literature review leads to scope bloat, loss of excitement, and a brutal final 20–30% push.
  • One line of advice: treat finishing and narrowing scope as the core skill; keep the work small, replicable, and just novel enough.
  • Others argue that if narrowing makes the work uninteresting to the field, that is a serious problem.
  • Disagreement on literature strategy: some advocate exhaustive early review to avoid duplicating work; others suggest reading only a few key papers first, then deep review later to protect novelty.
  • There is concern about misaligned incentives: pressure for novelty discourages replications, contributes to the replication crisis, and makes “accidental duplication” career-threatening.

Perfectionism, “better,” and LLMs

  • Multiple comments frame overthinking as perfectionism: refusing to accept “good enough” leads to paralysis rather than excellence.
  • Incremental “better than before” is recommended over chasing an ideal design.
  • LLMs are seen as amplifying scope creep: faster coding encourages adding features and complexity, so gains in speed get canceled by expanding ambitions.

Structural diffing and tools

  • Some discussion notes that structural diffing was a major topic in the article but under-discussed in comments.
  • Specific tools mentioned include RefactoringMiner (for code-aware diffs) and Difftastic (syntax-aware, even for plaintext treated as a language).