Writing Is Closer to Thought Than Code
danielmiessler.com ·
Daniel Miessler argues that written articulation of a project’s intended outcome should be the primary reference for AI-assisted development, rather than source code. He disagrees with developer Matt Pocock’s view that code is the central project artifact, contending that code records what was built but cannot fully capture why it was built or what people originally wanted. Miessler says many AI failures in 2026 stem from incomplete communication of intent rather than poor execution by AI systems.
Miessler says he adopted an “Ideal State Artifact” (ISA) at the end of 2025 to document projects. An ISA includes a prose description of the desired state, constraints, dated decisions made during development, and Ideal State Criteria (ISCs): atomic, testable requirements paired with evaluations. Evaluations can range from basic assertions to multi-stage processes involving code execution, question sets, rubrics, tournaments, or an LLM judge.
The ISA is intended to preserve requirements separately from a particular implementation, allowing teams to discard and rebuild inadequate code against the same criteria. Miessler describes two iteration loops: refining the written description as intent becomes clearer, and testing implementations against that description. He argues that increasingly capable AI shifts the main risk from implementation errors toward gaps between a person’s actual intent and the intent captured in writing.
What people are saying
The thread used the article’s writing-versus-code provocation to argue about AI-assisted development, not literary theory.
What readers liked
- Natural-language goals can preserve user priorities and domain meaning that implementation details obscure, giving LLMs a more useful target than…
- Readers see real leverage in LLMs interpreting human-level concepts and translating them into implementation work, especially where business…
Concerns raised
- A confident written intent is not a specification of reality: implementation uncovers missing constraints, failed assumptions, and design changes no…
- A complete enough formal specification collapses into code, so replacing executable artifacts with prose risks merely moving ambiguity upstream.
Read full discussion analysis
Source: Hacker News · Based on 15 sampled comments · Analyzed
Discussion overview
The thread used the article’s writing-versus-code provocation to argue about AI-assisted development, not literary theory. Supporters see natural-language articulation as the missing layer that current codebases erase: code records one implementation, while a durable statement of goals, tradeoffs, data meaning, and user priorities gives LLMs something closer to the actual job. Several readers think this is especially promising because language models can now interpret high-level intent and turn it into useful implementation or evaluation work; databases were singled out as a case where prose about what data means cannot simply be recovered from program logic.
Skeptics pushed back that a polished specification is not reality. Intent is vague, people routinely overestimate how complete their mental model is, and implementation exposes constraints that prose misses. They argue that code already functions as the executable articulation of requirements, while a truly complete formal spec eventually converges on code anyway. The sharp practical concern is delegating validation to agents: deterministic end-to-end and unit tests provide a signal that can be checked, whereas agent-based evaluation may be easier to game and binds a project to probabilistic tools. The broad middle ground is that prose and code serve different jobs: natural language can express goals LLMs can leverage, but iteration through working software remains essential.
Points of disagreement
The central fight is whether natural-language intent should become the primary artifact for AI-driven development, with code treated as a fallible rendering. Advocates say LLMs make rich goals, priorities, and domain meaning operational in ways code alone cannot preserve. Opponents say specifications are underdetermined until implementation meets reality, and reliable deterministic tests beat agent judgment for proving that a system actually works.
What readers liked
- Natural-language goals can preserve user priorities and domain meaning that implementation details obscure, giving LLMs a more useful target than reverse-engineering code alone.
- Readers see real leverage in LLMs interpreting human-level concepts and translating them into implementation work, especially where business semantics matter more than syntax.
- Treating code as one imperfect drawing rather than the whole design could stop teams from endlessly refining an implementation that misunderstood the original problem.
Concerns raised
- A confident written intent is not a specification of reality: implementation uncovers missing constraints, failed assumptions, and design changes no prose draft can wish away.
- A complete enough formal specification collapses into code, so replacing executable artifacts with prose risks merely moving ambiguity upstream.
- Agent-based evaluation worries skeptics because probabilistic judges can be manipulated or drift, while deterministic tests offer a clearer signal that behavior is correct.
- LLMs are useful at transformations such as porting because code carries implicit requirements, but commenters doubt they reliably supply initiative or resolve unstated decisions.
Keep reading
Sources and details
danielmiessler.com · Published
Writing Is Closer to Thought Than Code
Read report →
Community analysis available for 1 of 1 linked discussions.
Additional discussion searches are still incomplete.
Coverage details and dates
Latest available community analysis:
Summaries: 1 current · 0 awaiting update · 0 not verified
Latest summary update:
Hacker News · danielmiessler.com