2026-04-10

Simon Willison — 2026-04-10#

Highlight#

Simon points out the non-obvious reality that ChatGPT’s Advanced Voice Mode is actually running on an older, weaker model compared to their flagship developer tools. Drawing on insights from Andrej Karpathy, he highlights the widening capability gap between consumer-facing voice interfaces and B2B-focused reasoning models that benefit from verifiable reinforcement learning.

Posts#

ChatGPT voice mode is a weaker model Simon reflects on the counterintuitive fact that OpenAI’s Advanced Voice Mode runs on a GPT-4o era model with an April 2024 knowledge cutoff. Prompted by a tweet from Andrej Karpathy, he contrasts this consumer feature with top-tier coding models capable of coherently restructuring entire codebases or finding system vulnerabilities. Karpathy notes this divergence in capabilities exists because coding tasks offer explicit, verifiable reward functions ideal for reinforcement learning and hold significantly more B2B value.

2026-04-13

Simon Willison — 2026-04-13#

Highlight#

Today’s standout is Simon’s hands-on research into the newly released servo crate using Claude Code. It perfectly captures his classic approach to AI-assisted exploration, demonstrating how quickly you can prototype a Rust CLI tool and evaluate WebAssembly compatibility with an LLM sidekick.

Posts#

[Exploring the new servo crate] · Source Following the initial release of the embeddable servo browser engine on crates.io, Simon tasked Claude Code for web with exploring its capabilities. The AI successfully generated a working Rust CLI tool called servo-shot for taking web screenshots. While compiling Servo itself to WebAssembly proved unfeasible due to its heavy use of threads and SpiderMonkey dependencies, Claude instead built a playground page utilizing a WebAssembly build of the html5ever and markup5ever_rcdom crates to parse HTML fragments.

2026-04-14

Engineering Reads — 2026-04-14#

The Big Idea#

The defining characteristic of good software engineering isn’t output volume, but the human constraints—specifically “laziness” and “doubt”—that force us to distill complexity into crisp abstractions and exercise restraint. As AI effortlessly generates code and acts on probabilistic certainty, our primary architectural challenge is deliberately designing simplicity and deferral into these systems.

Deep Reads#

[Fragments: April 14] · Martin Fowler · Martin Fowler’s Blog Fowler synthesizes recent reflections on how AI-native development challenges our classical engineering virtues. He draws on Bryan Cantrill to argue that human “laziness”—our finite time and cognitive limits—is the forcing function for elegant abstractions, whereas LLMs inherently lack this constraint and will happily generate endless layers of garbage to solve a problem. Through a personal anecdote about simplifying a playlist generator via YAGNI rather than throwing an AI coding agent at it, he highlights the severe risk of LLM-induced over-complication. The piece then shifts to adapting our practices, touching on Jessitron’s application of Test-Driven Development to multi-agent workflows and Mark Little’s advocacy for AI architectures that value epistemological “doubt” over decisive certainty. Engineers navigating the integration of LLMs into their daily workflows should read this to re-calibrate their mental models around the enduring value of human constraints and system restraint.

2026-04-30

Simon Willison — 2026-04-30#

Highlight#

The most fascinating discussion today centers on the cultural clash between AI-assisted programming and traditional open-source community building, specifically looking at the Zig project’s strict ban on LLM-authored contributions. It perfectly articulates a growing divide: while AI can generate perfect code, it breaks the “contributor poker” investment model that maintainers rely on to grow trusted human collaborators over time.

Posts#

The Zig project’s rationale for their firm anti-AI contribution policy Simon dives into Zig’s stringent anti-LLM policy for issues, PRs, and bug tracker comments. He highlights Loris Cro’s concept of “contributor poker,” which argues that open-source maintainers invest in people, not just their initial code contributions. Because reviewing an LLM-assisted PR doesn’t help the project cultivate a new, confident contributor, the maintainer’s time is wasted. Interestingly, this policy means that Bun—an Anthropic-acquired JavaScript runtime built on a Zig fork—is keeping a massive 4x compile performance improvement un-upstreamed due to their heavy use of AI.

2026-05-04

Simon Willison — 2026-05-04#

Highlight#

Simon’s WASM-compiled Redis Array Playground is today’s standout, showcasing how quickly we can now spin up interactive sandboxes for in-flight C pull requests using AI agents like Claude Code.

Posts#

Redis Array Playground Salvatore Sanfilippo recently submitted a PR adding a new array data type to Redis. To try out the newly proposed commands, including a server-side ARGREP powered by the vendored TRE regex library, Simon utilized Claude Code to build an interactive WASM playground that runs a subset of Redis directly in the browser. The post also points to Salvatore’s own write-up on the AI-assisted development process behind the new array type.

2026-05-08

Simon Willison — 2026-05-08#

Highlight#

Simon re-evaluates his long-standing habit of asking LLMs for Markdown output, sparked by Anthropic’s Thariq Shihipar advocating for the rich capabilities of HTML. He tests this out practically by using his llm CLI to generate an interactive HTML explanation of a newly discovered Linux security exploit.

Posts#

[Using Claude Code: The Unreasonable Effectiveness of HTML] · Source Simon reflects on a piece by Thariq Shihipar (from Anthropic’s Claude Code team) that argues for requesting HTML instead of Markdown from Claude. While Markdown’s token-efficiency was a strict necessity during the 8,192-token GPT-4 days, modern LLMs can leverage HTML to output SVG diagrams, interactive widgets, and rich in-page navigation. Simon tests this technique by piping an obfuscated Python exploit from copy.fail into gpt-5.5 via his llm CLI tool, successfully prompting the model to generate a fully styled, interactive HTML explanation of the code.

2026-05-11

Simon Willison — 2026-05-11#

Highlight#

Today’s dispatches heavily focus on the macro consequences of the “agentic era” on the software industry, exploring everything from how coding agents are forcing massive corporate restructurings at GitLab to the stark mathematical reality of AI-generated codebase maintenance debt.

Posts#

GitLab Act 2 · Source Simon unpacks GitLab’s recent workforce reduction and structural flattening, which reorganizes their R&D into roughly 60 independent, empowered teams tailored for the agentic era. He highlights GitLab’s Jevons-paradox-inspired outlook: as AI agents collapse the cost and time of producing software, the overall market demand for software—and the builders who make it—will radically multiply. However, Simon pragmatically notes that GitLab has a strong financial incentive to project this optimism, given a recent 50% drop in their stock price and a business model heavily reliant on growing seat-based licenses.

2026-05-12

Engineering Reads — 2026-05-12#

The Big Idea#

The defining characteristic of successful software isn’t just the syntax—it’s how the code rigorously models the human domain and how the architecture maps to the social incentives of its contributors. As we automate the mechanical aspects of programming, our primary engineering constraints shift toward capturing precise conceptual models and aligning system boundaries with organizational psychology.

Deep Reads#

What is Code · Unmesh Joshi · Source With LLMs increasingly generating our boilerplate, we are forced to re-evaluate what source code actually does. Joshi argues that code serves an intertwined dual purpose: it is both an execution instruction for a machine and a rigorous conceptual model of the problem domain. Programming languages act as vital thinking tools that shape how we reason about systems, not just as syntax to be emitted. As agentic coding tools become mainstream, building a precise domain vocabulary remains the critical bottleneck for communicating intent. Practitioners relying heavily on LLMs should read this to understand why deep domain modeling will outlive manual syntax generation.

2026-05-14

Simon Willison — 2026-05-14#

Highlight#

The single most interesting theme today is the changing paradigm of programming languages from being a permanent “lock-in” to fungible, replaceable assets, driven by AI coding agents. Simon highlights this shift through Mitchell Hashimoto’s commentary on Bun’s recent language rewrite and a real-world anecdote of agent-assisted mobile app migration.

Posts#

[Not so locked in any more] · Source Expanding on thoughts about modern software architecture, Simon shares an anecdote from a recent conference about a tech company that used coding agents to rewrite their legacy iPhone and Android apps into React Native. The development team wasn’t overly concerned about committing to React Native, reasoning that if it turned out to be the wrong choice, the lowered cost of agent-driven development means they could just port it back to native code later. This underscores a major industry shift where programming language choices are increasingly no longer the permanent lock-in they once were.

2026-05-19

Simon Willison — 2026-05-19#

Highlight#

Simon’s annotated PyCon US 2026 lightning talk provides a sharp, insightful retrospective on the “November 2025 inflection point,” identifying exactly when coding agents became reliable daily drivers and laptop-grade local models started wildly overperforming. It is a quintessential Willison post that perfectly frames the recent tectonic shifts in AI developer tooling.

Posts#

[The last six months in LLMs in five minutes] · Source Simon shares his annotated slides from a PyCon US 2026 lightning talk summarizing the past six months of LLM developments. He zeroes in on two main themes: coding agents crossing the threshold from “often-work” to “mostly-work” driven by Reinforcement Learning from Verifiable Rewards, and the astonishing capability of local models like the 20.9GB Qwen3.6-35B-A3B and Gemma 4. The post also tracks the recent surge of “Claws” (personal AI assistants running locally on Mac Minis) and features his ongoing “pelican riding a bicycle” SVG visual benchmark to compare models.