2026-06-02

Simon Willison — 2026-06-02#

Highlight#

The most substantive post today is Simon’s commentary on Microsoft’s newly announced MAI models, which stand out not just for their small parameter counts (5B and 35B) but for the surprising claim that they were trained entirely on “clean and commercially licensed data”. This could signal a major shift away from models relying on unlicensed web scrapes.

Posts#

Microsoft’s new MAI models · Source Simon dissects the surprise drop of two new text LLMs at Microsoft Build: MAI-Thinking-1 (a 35B reasoning model) and MAI-Code-1-Flash (a 5B model for Copilot/VS Code). He’s particularly impressed that a 35B model reportedly beats Sonnet 4.6 in human evaluations, given he regularly runs larger models locally. The biggest takeaway, however, is Microsoft’s emphasis on using “appropriately licensed” data—raising the exciting prospect of highly capable code models built without controversial web scraping.

2026-06-03

Simon Willison — 2026-06-03#

Highlight#

Simon’s breakdown of Uber’s new $1,500 monthly cap on AI coding agents is a fascinating look at the real enterprise economics of token-burning tools. It puts a concrete dollar value on developer augmentation, framing AI spend as a direct percentage of software engineer compensation rather than just another standard SaaS subscription.

Posts#

Uber Caps Usage of AI Tools Like Claude Code to Manage Costs · Source Simon comments on a Bloomberg report that Uber is capping employee spending on agentic coding tools like Claude Code and Cursor to $1,500 per tool per month. He calculates that for two actively used tools, this translates to an annual cap of $36,000, which represents roughly 11% of the $330,000 median compensation for an Uber software engineer. Simon views this limit as a highly rational policy to manage token-burning costs, especially compared to gamified usage leaderboards, and notes that even his own heavy usage would still leave him with $500 a month to spare under this cap.

2026-06-04

Engineering Reads — 2026-06-04#

The Big Idea#

The collision between specialized infrastructure and generalized standards often requires pragmatic, albeit ugly, workarounds—whether that means percent-encoding IPv6 zone indices in URLs or wrapping standard S3-compatible APIs to expose proprietary storage features.

Deep Reads#

IPv6 zones in URLs are a mistake · Cadey IPv6 relies on zones (like network interface IDs) to disambiguate identical link-local addresses, such as fe80::. When representing these zoned addresses in URLs, a conflict arises because the % symbol used to denote the zone violates URL grammar and breaks parsers like Go’s net/url. The necessary workaround is to percent-encode the zone identifier itself—turning % into %25—a terrible user experience that ironically complies with RFC 6874. Furthermore, browsers lack support for IPv6 zones entirely because injecting zones breaks the underlying concept of a web “origin”. You should read this if you build networking tools or parsers and want a stark reminder of how edge cases in web standards compound into intractable UX debt.

2026-06-04

Simon Willison — 2026-06-04#

Highlight#

Simon shares a fantastic piece from Charity Majors that articulates the current tug-of-war in engineering teams: the race to leverage AI capabilities versus the threat of unmaintainable, auto-generated code. It is a highly relevant read for any engineering leader struggling to balance the speed of AI-assisted development with the long-term health and comprehensibility of their systems.

Posts#

AI enthusiasts are in a race against time, AI skeptics are in a race against entropy Simon highlights a piece by Charity Majors that perfectly captures the dynamic between fast-moving AI enthusiasts and cautious AI skeptics within software teams. Majors argues that both sides are entirely correct: missing the AI wave is a genuine existential business threat, but shipping code faster than engineers can read it destroys institutional knowledge and creates a separate existential threat of system incoherence. The core organizational design challenge right now is building natural feedback loops to mend the gap between these two realities.

2026-06-05

Engineering Reads — 2026-06-05#

The Big Idea#

The tech industry often obscures the hidden human and systemic costs of our work. Today’s reads surface those costs—from the psychological breakdown of neurodivergent maintainers in the public square to the inevitable rent-seeking lifecycle of beloved developer platforms—urging us to reclaim personal boundaries and infrastructural autonomy.

Deep Reads#

The circus freaks of open source · Drew DeVault The tech community has a toxic habit of voyeuristically exploiting the mental health crises of eccentric open-source maintainers. DeVault examines the tragic trajectories of Terry A. Davis (TempleOS) and Kent Overstreet (bcachefs), illustrating how public spectacle and harassment exacerbate severe psychological struggles like schizophrenia and AI psychosis. He holds a nuanced technical and social line, acknowledging that projects like the Linux kernel must protect their communities from abrasive contributors, while fiercely condemning the “gleeful humiliation rituals” enacted by the broader public. The essay argues that when peers struggle, they are owed compassionate privacy rather than being directed onto a “circus stage” for entertainment. Engineering leaders and open-source participants should read this to confront the ethical responsibilities we hold toward the often-neurodivergent individuals whose code we consume.

2026-06-05

Simon Willison — 2026-06-05#

Highlight#

Simon highlights a major shift in open-source maintainership as Andreas Kling announces the Ladybird browser will no longer accept public pull requests. This points to a growing structural challenge in the generative AI era, where the sheer volume of AI-generated patches breaks the traditional open-source proxy of “effort equals good faith”.

Posts#

Quoting Andreas Kling Simon shares a striking quote from Andreas Kling regarding the Ladybird browser project’s decision to halt public pull requests. Kling notes that LLMs and generative AI have decoupled the size of a patch from the effort required to create it, effectively destroying the assumption that large patches automatically represent good-faith contributions. The core takeaway here is that as AI reshapes coding workflows, open-source projects must shift their focus entirely to strict human accountability—ensuring that the people introducing changes are fully responsible for the consequences of that code entering the project.

2026-06-06

Engineering Reads — 2026-06-06#

The Big Idea#

Systems inevitably optimize for what they can measure, and when legible metrics—like engagement time, diagnostic labels, or the mere presentation of wellness—replace meaningful outcomes, the human user becomes secondary to the system’s internal machinery.

Deep Reads#

Self-Hosting Adventures · Kenneth Reitz The fundamental reality of self-hosting is that it is not a project you finish, but a continuous hobby you maintain. The author argues against the illusion of perfect uptime, asserting that a system’s true value lies in its recoverability rather than a fantasy of flawlessness. Moving from managed platforms to self-owned hardware exposes the real economic bottlenecks, notably that storage disks act as the “mortgage” while compute is merely “lunch money”. Ultimately, the tradeoff is paying for honest, understandable failures with your own time rather than trusting opaque corporate platforms. Engineers weighing the migration from managed cloud services to bare metal should read this to understand the hidden operational costs and philosophical gains of owning your own cruft.

2026-06-06

Simon Willison — 2026-06-06#

Highlight#

The single most substantive piece today is Simon’s deep dive into building a safe WebAssembly sandbox for Python, tackling the highly risky business of executing untrusted, AI-generated code. It is a perfect example of using AI coding assistants to quickly prototype complex C and WASM integrations to solve a critical developer tooling problem.

Posts#

Running Python code in a sandbox with MicroPython and WASM · Source Simon tackles the security risks of running fully privileged plugin code in Python applications by embedding MicroPython within a WebAssembly environment. Using AI assistants like GPT-5.5 Pro, Codex Desktop, and Claude, he rapidly prototyped micropython-wasm, an alpha package that maintains persistent interpreter state and strictly controls file, network, and host function access. This vibe-coded sandbox is already powering a new code execution plugin for Datasette Agent, demonstrating a highly practical approach to executing AI-generated code safely without compromising the host system.

2026-06-07

Engineering Reads — 2026-06-07#

The Big Idea#

The integration of LLM agents fundamentally shifts the human developer’s role from writing code to reading, reviewing, and validating it. Whether generating implementation code or automating complex QA passes, maximizing the value of agents requires strict human-in-the-loop oversight and a heavy reliance on robust testing to counteract the structural quality tradeoffs introduced by AI speed.

Deep Reads#

Thoughts on starting new projects with LLM agents · Eli Bendersky · eli.thegreenplace.net The core insight here is that building maintainable software with LLM agents requires optimizing for reading rather than writing. Bendersky argues that for high-importance projects, “vibe-coding” is disastrous; instead, developers must enforce small, reviewable changelists (CLs) and meticulously guide the agent through refactoring rounds using a local CLI agent paired with a visual diff tool. Interestingly, he points out that Go is the ideal language for agent-driven development specifically because of its readability, uniform formatting, and infrequent language changes, which minimizes the human cognitive load during review. He explicitly warns against using agents to learn entirely new subjects from scratch, noting that the struggle of learning cannot be outsourced to a machine. Senior engineers looking to integrate AI into serious, long-term project repositories should read this for a highly practical workflow on human-agent pairing.

2026-06-07

Simon Willison — 2026-06-07#

Highlight#

Simon released an early alpha of a foundational plugin that brings Claude-inspired, agentic text editing tools to the Datasette ecosystem. This creates a reliable, standardized baseline for future plugins that need to safely edit Markdown, SQL, or SVGs.

Posts#

datasette-agent-edit 0.1a0 · Source Simon released datasette-agent-edit 0.1a0 as a base plugin to simplify agentic text modifications, such as collaborative Markdown editing, updating large SQL queries, or tweaking SVG files. Noting that LLM-driven text editing is notoriously tricky to get right, he modeled the core tools—view (with line numbers), strict str_replace (which fails if the string isn’t unique), and line-based insert—directly on the published design of the Claude text editor. Rather than recreating these common patterns for every new tool, future Datasette Agent plugins can simply adapt these proven fundamentals.