Skip to main content

Simon Willison

Articles about AI Agents, software-development, coding-agents.
173 articles · Last updated: 04/04/2026

Articles

A quote from Kyle Daigle

explanation · 04/04/2026 · github, platform-activity, software-development

Vulnerability Research Is Cooked

explanation · 03/04/2026 · vulnerability-research, ai-agents, exploit-development

The cognitive impact of coding agents

explanation · 03/04/2026 · coding-agents, ai-ethics, podcast-appearances

A quote from Daniel Stenberg

explanation · 03/04/2026 · ai-security, open-source, curl

Research: Can JavaScript Escape a CSP Meta Tag Inside an Iframe?

explanation · 03/04/2026 · javascript, content-security-policy, iframes

A quote from Willy Tarreau

explanation · 03/04/2026 · kernel-security, software-development, ai-impacts

A quote from Greg Kroah-Hartman

explanation · 03/04/2026 · ai-security, open-source, linux-kernel

The Axios supply chain attack used individually targeted social engineering

explanation · 03/04/2026 · supply-chain-attacks, social-engineering, malware

March 2026 sponsors-only newsletter

reference · 02/04/2026 · agentic-engineering, streaming-experts, supply-chain-attacks

Highlights from my conversation about agentic engineering on Lenny’s Podcast

explanation · 02/04/2026 · ai-engineering, automation, software-development

Release: llm-gemini 0.30

reference · 02/04/2026 · llm-development, gemini-release, monthly-briefing

Gemma 4: Byte for byte, the most capable open models

explanation · 02/04/2026 · llms, google-deepmind, ai-research

Release: datasette-extract 0.3a0

reference · 01/04/2026 · data-import, datasette, machine-learning

A quote from Soohoon Choi

explanation · 01/04/2026 · ai-development, software-engineering, economic-incentives

Release: datasette-llm-usage 0.2a0

reference · 01/04/2026 · datasette, llm-usage, logging

Release: datasette-llm 0.1a6

reference · 01/04/2026 · llm-integration, python-api, datasette

Release: datasette-llm 0.1a5

reference · 01/04/2026 · llm-integration, plugin-development, datasette

Release: datasette-enrichments-llm 0.2a0

reference · 01/04/2026 · datasette, llm, release-notes

Release: datasette-enrichments-llm 0.2a1

reference · 01/04/2026 · datasette, llm, enrichments

Supply Chain Attack on Axios Pulls Malicious Dependency from npm

explanation · 31/03/2026 · supply-chain-attacks, npm-security, axios

Release: llm 0.30

reference · 31/03/2026 · large-language-models, plugin-development, documentation

Release: datasette-llm 0.1a4

reference · 31/03/2026 · datasette, llm, release-notes

Release: llm-echo 0.4

reference · 31/03/2026 · llm-echo, sponsorship, monthly-briefing

Release: llm-all-models-async 0.1

reference · 31/03/2026 · llm-plugins, async-models, datasette

Release: llm-mrchatterbox 0.1

reference · 30/03/2026 · llm-release, sponsorship, email-digest

Mr. Chatterbox is a (weak) Victorian-era ethically trained model you can run on your own computer

how-to · 30/03/2026 · language-models, victorian-literature, ai-development

A quote from Georgi Gerganov

explanation · 30/03/2026 · local-models, ai-challenges, model-inference

Release: datasette-files 0.1a3

reference · 30/03/2026 · datasette, plugin-development, file-management

Release: datasette-llm 0.1a3

reference · 30/03/2026 · datasette, llm, release-notes

Pretext

explanation · 29/03/2026 · browser-library, text-rendering, performance-optimization

Tool: Python Vulnerability Lookup

how-to · 29/03/2026 · python, security, vulnerabilities

Tool: Pretext — Under the Hood

explanation · 29/03/2026 · llm-developments, tool-overview, sponsorship

A quote from Matt Webb

explanation · 28/03/2026 · ai-agents, coding-architecture, software-development

Vibe coding SwiftUI apps is a lot of fun

how-to · 27/03/2026 · swiftui, vibe-coding, macos-apps

A quote from Richard Fontana

explanation · 27/03/2026 · licensing, chardet, open-source

Release: datasette-showboat 0.1a2

reference · 27/03/2026 · datasette, software-release, llm-developments

We Rewrote JSONata with AI in a Day, Saved $500K/Year

explanation · 27/03/2026 · ai-development, jsonata, cost-savings

Quantization from the ground up

explanation · 26/03/2026 · quantization, large-language-models, model-accuracy

My minute-by-minute response to the LiteLLM malware attack

how-to · 26/03/2026 · malware, pypi, security

Thoughts on slowing the fuck down

explanation · 25/03/2026 · agentic-engineering, cognitive-debt, software-development

LiteLLM Hack: Were You One of the 47,000?

explanation · 25/03/2026 · security, supply-chain, python

Release: datasette-llm 0.1a1

reference · 25/03/2026 · llm-integration, datasette-plugins, data-enrichment

Release: datasette-files-s3 0.1a1

reference · 25/03/2026 · datasette, s3, file-storage

A quote from Christopher Mims

explanation · 24/03/2026 · ai, technology, critique

Streaming experts

explanation · 24/03/2026 · streaming-experts, mixture-of-experts, ai-optimization

Auto mode for Claude Code

explanation · 24/03/2026 · ai-agents, permissions, safeguards

Malicious litellm_init.pth in litellm 1.82.8 — credential stealer

explanation · 24/03/2026 · supply-chain-attacks, credential-theft, python-packages

Package Managers Need to Cool Down

explanation · 24/03/2026 · package-managers, dependency-management, supply-chain-security

Release: datasette-files 0.1a2

reference · 23/03/2026 · datasette, file-upload, plugins

Research: Starlette 1.0 skill

tutorial · 23/03/2026 · web-development, asgi-frameworks, starlette

A quote from David Abram

explanation · 23/03/2026 · software-development, llms, decision-making

A quote from Neurotica

explanation · 23/03/2026 · ai-ethics, generative-ai, slop

Beats now have notes

explanation · 23/03/2026 · blogging, content-creation, web-development

Tool: Merge State Visualizer

explanation · 22/03/2026 · version-control, crdts, interactive-ui

Experimenting with Starlette 1.0 with Claude skills

how-to · 22/03/2026 · python-frameworks, starlette, ai-agents

Research: JavaScript Sandboxing Research

explanation · 22/03/2026 · javascript, sandboxing, nodejs

Research: PCGamer Article Performance Audit

explanation · 22/03/2026 · web-performance, ad-tech, network-traffic

Tool: DNS Lookup

how-to · 22/03/2026 · dns, cloudflare, api

Using Git with coding agents - Agentic Engineering Patterns

how-to · 21/03/2026 · git, coding-agents, version-control

Profiling Hacker News users based on their comments

explanation · 21/03/2026 · ai-coding, user-profiling, security-concerns

Turbo Pascal 3.02A, deconstructed

explanation · 20/03/2026 · turbo-pascal, decompilation, software-history

A quote from Kimi.ai @Kimi_Moonshot

explanation · 20/03/2026 · ai-integration, machine-learning, partnerships

Thoughts on OpenAI acquiring Astral and uv/ruff/ty

explanation · 19/03/2026 · openai, astral, python

Autoresearching Apple’s “LLM in a Flash” to run Qwen 397B locally

how-to · 18/03/2026 · llm-inference, apple-research, qwen-model

Snowflake Cortex AI Escapes Sandbox and Executes Malware

explanation · 18/03/2026 · ai-security, malware-execution, prompt-injection

Subagents - Agentic Engineering Patterns

explanation · 17/03/2026 · ai-agents, subagents, coding-agents

GPT-5.4 mini and GPT-5.4 nano, which can describe 76,000 photos for $52

explanation · 17/03/2026 · gpt-5, openai, ai-models

A quote from Tim Schilling

explanation · 17/03/2026 · open-source, django, llm

A quote from Ken Jin

reference · 17/03/2026 · python, jit, performance

A quote from A member of Anthropic’s alignment-science team

explanation · 16/03/2026 · ai-ethics, alignment-science, generative-ai

Introducing Mistral Small 4

explanation · 16/03/2026 · ai-models, machine-learning, coding-languages

Use subagents and custom agents in Codex

how-to · 16/03/2026 · ai-agents, custom-agents, openai-codex

A quote from Guilherme Rambo

explanation · 16/03/2026 · macbook, security, hardware-indicators

How coding agents work - Agentic Engineering Patterns

explanation · 16/03/2026 · coding-agents, large-language-models, token-processing

Coding agents for data analysis

tutorial · 16/03/2026 · data-analysis, coding-agents, workshop

What is agentic engineering? - Agentic Engineering Patterns

explanation · 15/03/2026 · agentic-engineering, coding-agents, llms

My fireside chat about agentic engineering at the Pragmatic Summit

explanation · 14/03/2026 · ai-adoption, agentic-engineering, test-driven-development

A quote from Jannis Leidel

explanation · 14/03/2026 · ai-ethics, open-source, github

1M context is now generally available for Opus 4.6 and Sonnet 4.6

explanation · 13/03/2026 · opus-4-6, sonnet-4-6, openai

A quote from Craig Mod

explanation · 13/03/2026 · accounting-software, custom-development, productivity-tools

Shopify/liquid: Performance: 53% faster parse+render, 61% fewer allocations

explanation · 13/03/2026 · performance-optimization, coding-agents, liquid-template-engine

A quote from Les Orchard

explanation · 12/03/2026 · ai-coding, developer-divide, software-development

MALUS—Clean Room as a Service

explanation · 12/03/2026 · satire, open-source, ai-robots

Coding After Coders: The End of Computer Programming as We Know It

explanation · 12/03/2026 · ai-assisted-development, future-of-programming, software-engineering

A quote from John Carmack

reference · 11/03/2026 · software-engineering, john-carmack, yagni

Sorting algorithms

explanation · 11/03/2026 · sorting-algorithms, python, animation

AI should help us produce better code - Agentic Engineering Patterns

how-to · 10/03/2026 · ai-agents, technical-debt, software-development

Perhaps not Boring Technology after all

explanation · 09/03/2026 · llms, programming, technology-choices

Production query plans without production data

explanation · 09/03/2026 · postgresql, query-planning, database-statistics

A quote from Joseph Weizenbaum

reference · 08/03/2026 · computer-history, ai-ethics, internet-archive

Codex for Open Source

explanation · 07/03/2026 · open-source, ai-tools, chatgpt

Anthropic and the Pentagon

explanation · 06/03/2026 · ai-ethics, military-ai, ai-competition

Clinejection — Compromising Cline’s Production Releases just by Prompting an Issue Triager

explanation · 06/03/2026 · prompt-injection, github-security, ai-triage

Agentic manual testing - Agentic Engineering Patterns

how-to · 06/03/2026 · manual-testing, coding-agents, automated-tests

A quote from Ally Piechowski

how-to · 06/03/2026 · rails, code-audit, software-development

Introducing GPT‑5.4

explanation · 05/03/2026 · gpt-5-4, api-models, openai

Can coding agents relicense open source through a “clean room” implementation of code?

explanation · 05/03/2026 · open-source, clean-room-implementation, coding-agents

Something is afoot in the land of Qwen

explanation · 04/03/2026 · ai-models, team-resignation, alibaba

Anti-patterns: things to avoid - Agentic Engineering Patterns

how-to · 04/03/2026 · agentic-engineering, code-review, pull-requests

A quote from Donald Knuth

explanation · 03/03/2026 · generative-ai, automatic-deduction, creative-problem-solving

Gemini 3.1 Flash-Lite

explanation · 03/03/2026 · ai-models, cost-efficiency, product-update

February sponsors-only newsletter

explanation · 02/03/2026 · openclaw, agentic-engineering, strongdm

GIF optimization tool using WebAssembly and Gifsicle - Agentic Engineering Patterns

how-to · 02/03/2026 · gif-optimization, webassembly, gifsicle

A quote from claude.com/import-memory

how-to · 01/03/2026 · data-export, personalization, ai-assistants

Interactive explanations - Agentic Engineering Patterns - Simon Willison's Weblog

explanation · 28/02/2026 · cognitive-debt, interactive-explanations, ai-agents

Free Claude Max for (large project) open source maintainers

reference · 27/02/2026 · open-source, maintainers, claude-max

Please, please, please stop using passkeys for encrypting user data

explanation · 27/02/2026 · data-encryption, user-security, authentication

Unicode Explorer using binary search over fetch() HTTP range requests

how-to · 27/02/2026 · http-range-requests, unicode, binary-search

An AI agent coding skeptic tries AI agent coding, in excessive detail

explanation · 27/02/2026 · ai-agents, machine-learning, rust-programming

A quote from Andrej Karpathy

explanation · 26/02/2026 · ai-programming, coding-agents, ai-impact

Hoard things you know how to do - Agentic Engineering Patterns - Simon Willison's Weblog

how-to · 26/02/2026 · coding-agents, software-development, knowledge-management

A quote from Benedict Evans

explanation · 26/02/2026 · ai-engagement, openai-strategy, user-experience

Google API Keys Weren’t Secrets. But then Gemini Changed the Rules.

explanation · 26/02/2026 · api-keys, google-maps, gemini

Claude Code Remote Control

explanation · 25/02/2026 · remote-control, claude-code, software-updates

I vibe coded my dream macOS presentation app

how-to · 25/02/2026 · macos-development, presentation-tools, swiftui

Linear walkthroughs - Agentic Engineering Patterns - Simon Willison's Weblog

how-to · 25/02/2026 · coding-agents, showboat, swiftui

tldraw issue: Move tests to closed source repo

explanation · 25/02/2026 · open-source, intellectual-property, software-development

A quote from Kellan Elliott-McCrea

explanation · 25/02/2026 · technology, emotional-intelligence, web-development

First run the tests - Agentic Engineering Patterns - Simon Willison's Weblog

how-to · 24/02/2026 · automated-testing, ai-agents, software-engineering

go-size-analyzer

explanation · 24/02/2026 · go-tooling, binary-analysis, webassembly

A quote from Paul Ford

explanation · 23/02/2026 · vibe-coding, communication, empathy

Writing code is cheap now - Agentic Engineering Patterns - Simon Willison's Weblog

explanation · 23/02/2026 · agentic-engineering, software-development, code-quality

A quote from Summer Yue

explanation · 23/02/2026 · ai-tools, inbox-management, automation

Ladybird adopts Rust, with help from AI

explanation · 23/02/2026 · rust, ai-assisted-coding, software-engineering

Red/green TDD - Agentic Engineering Patterns - Simon Willison's Weblog

explanation · 23/02/2026 · test-driven-development, coding-agents, software-engineering

Reply guy

explanation · 23/02/2026 · ai-bots, twitter-engagement, generative-ai

Writing about Agentic Engineering Patterns

explanation · 23/02/2026 · agentic-engineering, coding-agents, software-development

London Stock Exchange: Raspberry Pi Holdings plc

explanation · 22/02/2026 · stock-market, ai-projects, raspberry-pi

The Claude C Compiler: What It Reveals About the Future of Software

explanation · 22/02/2026 · ai-coding, software-development, compiler-design

How I think about Codex

explanation · 22/02/2026 · openai, codex, ai-agents

Quoting Thibault Sottiaux

explanation · 21/02/2026 · thought-leadership, interviews, technology

Andrej Karpathy talks about “Claws”

explanation · 21/02/2026 · ai-agents, claws, openclaw

Quoting Thariq Shihipar

explanation · 20/02/2026 · Agent-Native Architecture, Prompt Engineering, Claude Code

ggml.ai joins Hugging Face to ensure the long-term progress of Local AI

explanation · 20/02/2026 · OpenAI API, AI Agents, Anthropic API

Adding TILs, releases, museums, tools and research to my blog

explanation · 20/02/2026 · Open Source Projects, Web Development, AI Agents

Taalas serves Llama 3.1 8B at 17,000 tokens/second

explanation · 20/02/2026 · AI Agents, Model Optimization, Hardware Startups

SWE-bench February 2026 leaderboard update

reference · 19/02/2026 · OpenAI API, Prompt Engineering, AI Agents

Experimenting with sponsorship for my blog and newsletter

explanation · 19/02/2026 · Blogging, Sponsorship, Independent Publishing

LadybirdBrowser/ladybird: Abandon Swift adoption

explanation · 19/02/2026 · Software Development, Programming Languages, Project Management

Gemini 3.1 Pro

reference · 19/02/2026 · Prompt Engineering, AI Agents, LangChain

Recovering lost code

how-to · 19/02/2026 · Prompt Engineering, Agent-Native Architecture, Claude Code

A quote from Martin Fowler

explanation · 18/02/2026 · llms, software-development, expert-generalists

Typing without having to type

explanation · 18/02/2026 · Programming Productivity, Type Hints, AI Agents

The A.I. Disruption We’ve Been Waiting for Has Arrived

explanation · 18/02/2026 · ai-disruption, coding-tools, technology-impact

Introducing Claude Sonnet 4.6

explanation · 17/02/2026 · ai-models, anthropic, sonnet-4-6

Rodney v0.4.0

reference · 17/02/2026 · browser-automation, cli-tools, software-release

Gemini 3 Deep Think

explanation · 12/02/2026 · Creative AI, Prompt Engineering, AI Agents

Quoting Anthropic

explanation · 12/02/2026 · Anthropic API, Claude Code

Supervisor, not overseer

explanation · 12/02/2026 · Ethical Considerations in AI, AI Agents, Language and Terminology

Covering electricity price increases from our data centers

explanation · 12/02/2026 · Energy Consumption, Corporate Responsibility, AI Agents

Introducing GPT‑5.3‑Codex‑Spark

explanation · 12/02/2026 · OpenAI API, Prompt Engineering, AI Agents

An AI Agent Published a Hit Piece on Me

explanation · 12/02/2026 · AI Agents, Open Source, GitHub

GLM-5: From Vibe Coding to Agentic Engineering

explanation · 11/02/2026 · Agent-Native Architecture, Prompt Engineering, AI Agents

Skills in OpenAI API

how-to · 11/02/2026 · OpenAI API, Prompt Engineering, Claude Code

Quoting Andrew Deck for Niemen Lab

explanation · 11/02/2026 · Large Language Models, Prompt Engineering, AI Agents

cysqlite - a new sqlite driver

explanation · 11/02/2026 · Python Programming, WebAssembly, Cython

Introducing Showboat and Rodney, so agents can demo what they’ve built

explanation · 10/02/2026 · Agent-Native Architecture, AI Agents, Software Testing

AI Doesn’t Reduce Work—It Intensifies It

explanation · 09/02/2026 · Cognitive Load, AI Agents, Sustainable Working Practices

Structured Context Engineering for File-Native Agentic Systems

explanation · 09/02/2026 · Agent-Native Architecture, AI Agents, Prompt Engineering

Quoting Thomas Ptacek

explanation · 08/02/2026 · Anthropic API, AI Agents, Vulnerability Research

Kākāpō mug by Karen James

explanation · 08/02/2026 · Personal Appreciation, Kākāpō Conservation, Ceramic Art

Vouch

explanation · 07/02/2026 · AI Agents, GitHub, Open Source Contributions

Quoting Brandon Sanderson

explanation · 03/02/2026 · Generative AI, Artistic Expression, AI Ethics

January sponsors-only newsletter is out

explanation · 03/02/2026 · AI Agents, Prompt Engineering, Agent-Native Architecture

Introducing Deno Sandbox

how-to · 03/02/2026 · Python, Deno, Security

Introducing the Codex app

explanation · 02/02/2026 · AI Agents, Agent-Native Architecture, OpenAI API

A Social Network for A.I. Bots Only. No Humans Allowed.

explanation · 02/02/2026 · AI Agents, Journalism, Generative AI

TIL: Running OpenClaw in Docker

how-to · 01/02/2026 · AI Agents, Docker, OpenClaw

Singing the gospel of collective efficacy

explanation · 31/01/2026 · Collective Efficacy, Social Impact, Community Engagement

Quoting Andrej Karpathy

explanation · 31/01/2026 · Generative AI, AI, OpenAI

Moltbook is the most interesting place on the internet right now

explanation · 30/01/2026 · AI Agents, Prompt Engineering, OpenAI API

Quoting Steve Yegge

explanation · 30/01/2026 · AI Agents, Agent-Native Architecture, Prompt Engineering

We gotta talk about AI as a programming tool for the arts

explanation · 30/01/2026 · Generative AI, AI-Assisted Programming, AI Ethics