---
title: "Simon Willison"
description: "Software engineer, creator of Datasette, co-creator of Django, and prominent authority on LLM tooling, evals, and agentic engineering patterns."
section: "entities"
type: "entity"
created: "2026-08-22"
updated: "2026-08-27"
confidence: "high"
tags: ["person", "authority", "workflow"]
canonical: "https://pyweb.dev/wiki/simon-willison"
---
# Simon Willison

Simon Willison is a software engineer, co-creator of Django, creator of Datasette, and an authority on generative AI tooling, prompt injection security, and agentic engineering patterns.

## Contributions to Agentic Engineering

Willison cataloged the canon of [agentic engineering patterns](/wiki/agentic-engineering-patterns), arguing that writing code has become cheap while software quality, verification, and maintainability remain the primary engineering constraints. [[source: simon-willison-agentic-engineering-patterns-2026]](/wiki/raw/articles/simon-willison-agentic-engineering-patterns-2026)

### Proof-of-Work Doctrine
In "Your job is to deliver code you have proven to work" (2025), Willison established that the developer's role shifts from writing raw syntax to providing rigorous proof of correctness. AI coding agents must be directed to run tests, execute browser verifications, and demonstrate proof before PR submission. [[source: simon-willison-code-proven-to-work-2025]](/wiki/raw/articles/simon-willison-code-proven-to-work-2025)

### Core Patterns
- **First run the tests:** Forcing an agent to execute existing test suites before editing code to seed context and establish baseline invariants.
- **Red/Green TDD for Agents:** Requiring failing reproduction tests before implementation to prevent self-fulfilling test assertions.
- **Agentic Manual Testing:** Utilizing browser automation and runtime tools for interactive verification.

## Related
- [agentic engineering patterns](/wiki/agentic-engineering-patterns) — cataloged patterns
- [agentic code quality](/wiki/agentic-code-quality) — verification controls
- [red green tdd](/wiki/red-green-tdd) — test-driven loops
- [agentic manual testing](/wiki/agentic-manual-testing) — dynamic verification
- [addy osmani](/wiki/addy-osmani) — contemporary in developer tooling

---

## Agent Navigation

cluster: person (170 pages) | betweenness: 1177.8

### References (outbound)
- [Agentic Engineering Patterns](https://pyweb.dev/wiki/agentic-engineering-patterns.md)
- [Agentic Code Quality](https://pyweb.dev/wiki/agentic-code-quality.md)
- [Red/Green TDD](https://pyweb.dev/wiki/red-green-tdd.md)
- [Agentic Manual Testing](https://pyweb.dev/wiki/agentic-manual-testing.md)
- [Addy Osmani](https://pyweb.dev/wiki/addy-osmani.md)

### Referenced by (inbound)
- [Agentic Engineering Patterns](https://pyweb.dev/wiki/agentic-engineering-patterns.md)
- [Agentic Manual Testing](https://pyweb.dev/wiki/agentic-manual-testing.md)
- [Agentic Vulnerability Lifecycle](https://pyweb.dev/wiki/agentic-vulnerability-lifecycle.md)
- [Cognitive Debt and Walkthroughs](https://pyweb.dev/wiki/cognitive-debt-and-walkthroughs.md)
- [Git for Agentic Workflows](https://pyweb.dev/wiki/git-for-agentic-workflows.md)
- [Hoard and Recombine](https://pyweb.dev/wiki/hoard-and-recombine.md)
- [Red/Green TDD](https://pyweb.dev/wiki/red-green-tdd.md)
- [Subagents and Context Management](https://pyweb.dev/wiki/subagents-and-context-management.md)
- [Addy Osmani](https://pyweb.dev/wiki/addy-osmani.md)
- [Anthropic](https://pyweb.dev/wiki/anthropic.md)
- [Armin Ronacher](https://pyweb.dev/wiki/armin-ronacher.md)
- [Cursor](https://pyweb.dev/wiki/cursor.md)
- [Drew Breunig](https://pyweb.dev/wiki/drew-breunig.md)
- [James Shore](https://pyweb.dev/wiki/james-shore.md)
- [Johann Rehberger](https://pyweb.dev/wiki/johann-rehberger.md)
- [Mario Zechner](https://pyweb.dev/wiki/mario-zechner.md)
- [OpenAI](https://pyweb.dev/wiki/openai.md)
- [Shopify](https://pyweb.dev/wiki/shopify.md)
- [Tobias Lütke](https://pyweb.dev/wiki/tobias-lutke.md)
- [Agentic Engineering Entity Accounting](https://pyweb.dev/wiki/agentic-engineering-entity-accounting.md)

### Evidence (verified primary sources)
- [simon-willison-what-is-agentic-engineering-2026](https://pyweb.dev/wiki/raw/articles/simon-willison-what-is-agentic-engineering-2026.md) | origin: https://simonwillison.net/guides/agentic-engineering-patterns/what-is-agentic-engineering/ | ingested: 2026-08-22 | sha256: 4dd39c5ab628a87715e358c1540025971310a6357525852c2e615ce7fab62f4e
- [simon-willison-code-is-cheap-2026](https://pyweb.dev/wiki/raw/articles/simon-willison-code-is-cheap-2026.md) | origin: https://simonwillison.net/guides/agentic-engineering-patterns/code-is-cheap/ | ingested: 2026-08-22 | sha256: 9b7f4c97315264247c4ad1df5d812fc54c5fc3bc932dae6769662828c70e00b7
- [simon-willison-better-code-2026](https://pyweb.dev/wiki/raw/articles/simon-willison-better-code-2026.md) | origin: https://simonwillison.net/guides/agentic-engineering-patterns/better-code/ | ingested: 2026-08-22 | sha256: a7e7686089d5e5d6039e1d363e2265ea1c07f9ccdc9fb2143b6f4575b880cc21
- [simon-willison-agentic-engineering-patterns-2026](https://pyweb.dev/wiki/raw/articles/simon-willison-agentic-engineering-patterns-2026.md) | origin: https://simonwillison.net/guides/agentic-engineering-patterns/ | ingested: 2026-08-27 | sha256: f0fba6d5e10f26597d2b3fbe053cf17a297bbb041dae4b05f49a22ddea494e4c
- [simon-willison-code-proven-to-work-2025](https://pyweb.dev/wiki/raw/articles/simon-willison-code-proven-to-work-2025.md) | origin: https://simonwillison.net/2025/Dec/18/code-proven-to-work/ | ingested: 2026-08-27 | sha256: 7c2bf07e112fdaeac880fdc6dec02a30c0992e0d996162c31fe623f8dbb58ae5

### Machine endpoints
- Knowledge graph: https://pyweb.dev/api/graph.json
- Graph analysis: https://pyweb.dev/api/graph-analysis.json
- Context index: https://pyweb.dev/llms.txt
