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-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-13

Simon Willison — 2026-06-13#

Highlight#

The most substantive update today explores the major Pyodide 314.0 release that finally allows publishing WASM wheels directly to PyPI. This eliminates a massive bottleneck for the Python-in-the-browser ecosystem, and Simon immediately proved its value by using AI tools to package and ship a C++ based WebAssembly experiment.

Posts#

Publishing WASM wheels to PyPI for use with Pyodide With Pyodide 314.0, developers can now publish Python packages built for Pyodide directly to PyPI, removing a major hurdle where maintainers previously had to manually review and host over 300 packages themselves. To celebrate, Simon used Codex and GPT-5.5 xhigh to package his experimental C++ Luau WebAssembly project, successfully building and deploying it via GitHub Actions. True to form, he then used ChatGPT to draft a BigQuery SQL query to explore PyPI’s dataset, discovering that 28 packages are already utilizing the new pyemscripten_202*_wasm32 tags.

2026-06-18

Engineering Reads — 2026-06-18#

The Big Idea#

The friction between idealized abstractions and hardware realities constantly forces engineers to compromise. Whether you are battling the hidden, non-deterministic state of C++ build toolchains or applying sparse attention to make massive LLM context windows economically viable, the lowest layers of the stack inevitably leak into your application design.

Deep Reads#

I hate compilers · xeiaso.net To maintain a single source of truth for proof-of-work checks without locking out users who have disabled WebAssembly, the author decided to compile their WASM logic to a JavaScript fallback using wasm2js. However, bundling this tool exposed the brutal reality of reproducible builds: while compilers are theoretically deterministic functions, they are practically overflowing with implicit state. The post dissects how Clang secretly shells out to $PATH dependencies like wasm-opt, which can unexpectedly break builds if the host’s version lacks WebAssembly Exception support. Even more insidiously, Clang’s exception-handling code generation leaks raw memory pointer values into the output byte order, forcing the author to disable Address Space Layout Randomization (ASLR) and maintain separate architectural checksums. Any systems engineer relying on cross-platform C++ compilation or reproducible builds should read this for a sobering reminder of how brittle our build infrastructures actually are.

2026-06-20

Sources

Tech Videos — 2026-06-20#

Watch First#

The single video most worth your time today is What If Intelligence Doesn’t Need a Brain? because it rigorously challenges our neural-centric assumptions of cognition with empirical biological demonstrations of non-neural problem-solving.

2026-06-28

Engineering Reads — 2026-06-28#

The Big Idea#

The most enduring tools are those that eliminate context switching by operating entirely within the environment where the work actually happens. By pushing heavy computational engines directly into local, sandboxed constraints, engineers can preserve creative flow and eliminate external dependencies.

Deep Reads#

Python, Inside JavaScript, Inside a DAW · Kenneth Reitz · Source The core premise here is that context switching destroys creative flow, making the cognitive cost of leaving your workspace higher than the value of looking up the information you need. To solve this, the author embedded a complete CPython interpreter within Ableton Live using Pyodide to run a music theory library entirely offline. Because Live extensions run in a locked JavaScript sandbox that prohibits dynamic imports, the engineering solution routes around this constraint by isolating the interpreter in a worker thread and crossing the boundary strictly through flat, serialized data messages. This architecture elegantly avoids the typical maintenance trap of rewriting complex domain logic into a host application’s native plugin language, thereby maintaining a single source of truth. Engineers grappling with heavily sandboxed environments or cross-domain integrations should read this to see how strict platform constraints can force clean, decoupled architectural seams.