Feed items

  • Simon Willison's Weblog

    llm 0.30

  • Simon Willison's Weblog

    Pretext

  • Simon Willison's Weblog

    Quoting Matt Webb

    28th March 2026 The thing about agentic coding is that agents grind problems into dust. Give an agent a problem and a while loop and - long term - it’ll solve that problem even if it means burning a trillion tokens and re-writing down to the silicon. [...] But we want AI agents to solve coding problems quickly and in a…

  • Simon Willison's Weblog

    datasette-showboat 0.1a2

    This is a beat by Simon Willison, posted on 27th March 2026. Monthly briefing Sponsor me for $10/month and get a curated email digest of the month's most important LLM developments. Pay me to send you less! Sponsor & subscribe

  • Simon Willison's Weblog

    Quoting Richard Fontana

    27th March 2026 FWIW, IANDBL, TINLA, etc., I don’t currently see any basis for concluding that chardet 7.0.0 is required to be released under the LGPL. AFAIK no one including Mark Pilgrim has identified persistence of copyrightable expressive material from earlier versions in 7.0.0 nor has anyone articulated some viabl…

  • Simon Willison's Weblog

    Vibe coding SwiftUI apps is a lot of fun

    27th March 2026 I have a new laptop—a 128GB M5 MacBook Pro, which early impressions show to be very capable for running good local LLMs. I got frustrated with Activity Monitor and decided to vibe code up some alternative tools for monitoring performance and I’m very happy with the results. This is my second experiment…

  • Simon Willison's Weblog

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

    27th March 2026 - Link Blog We Rewrote JSONata with AI in a Day, Saved $500K/Year. Bit of a hyperbolic framing but this looks like another case study of vibe-porting, this time spinning up a new custom Go implementation of the JSONata JSON expression language - similar in focus to jq, and heavily associated with the No…

  • Simon Willison's Weblog

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

    26th March 2026 - Link Blog My minute-by-minute response to the LiteLLM malware attack (via) Callum McMahon reported the LiteLLM malware attack to PyPI. Here he shares the Claude transcripts he used to help him confirm the vulnerability and decide what to do about it. Claude even suggested the PyPI security contact add…

  • Simon Willison's Weblog

    Quantization from the ground up

    26th March 2026 - Link Blog Quantization from the ground up. Sam Rose continues his streak of publishing spectacularly informative interactive essays, this time explaining how quantization of Large Language Models works. Also included is the best visual explanation I've ever seen of how floating point numbers are repre…

  • Simon Willison's Weblog

    datasette-files-s3 0.1a1

    A backend for datasette-files that adds the ability to store and retrieve files using an S3 bucket. This release added a mechanism for fetching S3 configuration periodically from a URL, which means we can use time limited IAM credentials that are restricted to a prefix within a bucket.

  • Simon Willison's Weblog

    Thoughts on slowing the fuck down

    25th March 2026 - Link Blog Thoughts on slowing the fuck down. Mario Zechner created the Pi agent framework used by OpenClaw, giving considerable credibility to his opinions on current trends in agentic engineering. He's not impressed: We have basically given up all discipline and agency for a sort of addiction, where…

  • Simon Willison's Weblog

    datasette-llm 0.1a1

    Release datasette-llm 0.1a1 — LLM integration plugin for other plugins to depend on New release of the base plugin that makes models from LLM available for use by other Datasette plugins such as datasette-enrichments-llm. New register_llm_purposes() plugin hook and get_purposes() function for retrieving registered purp…

  • Simon Willison's Weblog

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

    25th March 2026 - Link Blog LiteLLM Hack: Were You One of the 47,000? (via) Daniel Hnyk used the BigQuery PyPI dataset to determine how many downloads there were of the exploited LiteLLM packages during the 46 minute period they were live on PyPI. They also identified 2,337 packages that depended on LiteLLM - 88% of wh…

  • Simon Willison's Weblog

    Auto mode for Claude Code

    24th March 2026 - Link Blog Auto mode for Claude Code. Really interesting new development in Claude Code today as an alternative to --dangerously-skip-permissions: Today, we're introducing auto mode, a new permissions mode in Claude Code where Claude makes permission decisions on your behalf, with safeguards monitoring…

  • Simon Willison's Weblog

    Package Managers Need to Cool Down

    24th March 2026 - Link Blog Package Managers Need to Cool Down. Today's LiteLLM supply chain attack inspired me to revisit the idea of dependency cooldowns, the practice of only installing updated dependencies once they've been out in the wild for a few days to give the community a chance to spot if they've been subver…

  • Simon Willison's Weblog

    Quoting Christopher Mims

    24th March 2026 I really think "give AI total control of my computer and therefore my entire life" is going to look so foolish in retrospect that everyone who went for this is going to look as dumb as Jimmy Fallon holding up a picture of his Bored Ape — Christopher Mims, Technology columnist at The Wall Street Journal…

  • Simon Willison's Weblog

    Malicious litellm_init.pth in litellm 1.82.8 — credential stealer

    24th March 2026 - Link Blog Malicious litellm_init.pth in litellm 1.82.8 — credential stealer. The LiteLLM v1.82.8 package published to PyPI was compromised with a particularly nasty credential stealer hidden in base64 in a litellm_init.pth file, which means installing the package is enough to trigger it even without r…

  • Simon Willison's Weblog

    Streaming experts

    24th March 2026 I wrote about Dan Woods' experiments with streaming experts the other day, the trick where you run larger Mixture-of-Experts models on hardware that doesn't have enough RAM to fit the entire model by instead streaming the necessary expert weights from SSD for each token that you process. Five days ago D…

  • Simon Willison's Weblog

    Quoting Neurotica

    23rd March 2026 slop is something that takes more human effort to consume than it took to produce. When my coworker sends me raw Gemini output he’s not expressing his freedom to create, he’s disrespecting the value of my time — Neurotica, @schwarzgerat.bsky.social Posted 23rd March 2026 at 11:31 pm Recent articles Expe…

  • Simon Willison's Weblog

    datasette-files 0.1a2

    The most interesting alpha of datasette-files yet, a new plugin which adds the ability to upload files directly into a Datasette instance. Here are the release notes in full: Columns are now configured using the new column_types system from Datasette 1.0a26. #8 New file_actions plugin hook, plus ability to import an up…

  • Simon Willison's Weblog

    Quoting David Abram

    23rd March 2026 I have been doing this for years, and the hardest parts of the job were never about typing out code. I have always struggled most with understanding systems, debugging things that made no sense, designing architectures that wouldn't collapse under heavy load, and making decisions that would save months…

  • Simon Willison's Weblog

    Beats now have notes

    23rd March 2026 Last month I added a feature I call beats to this blog, pulling in some of my other content from external sources and including it on the homepage, search and various archive pages on the site. On any given day these frequently outnumber my regular posts. They were looking a little bit thin and were lac…

  • Simon Willison's Weblog

    Starlette 1.0 skill

    Research Starlette 1.0 skill — Starlette 1.0 Skill offers a concise guide for building robust web applications with Starlette, a lightweight ASGI framework. The accompanying demo showcases a task management app featuring projects, tasks, comments, and labels, illustrating Starlette's flexibility in handling routing, te…

  • Simon Willison's Weblog

    Experimenting with Starlette 1.0 with Claude skills

    22nd March 2026 Starlette 1.0 is out! This is a really big deal. I think Starlette may be the Python framework with the most usage compared to its relatively low brand recognition because Starlette is the foundation of FastAPI, which has attracted a huge amount of buzz that seems to have overshadowed Starlette itself.…

  • Simon Willison's Weblog

    PCGamer Article Performance Audit

    Research PCGamer Article Performance Audit — A performance audit of the March 2026 PCGamer article on RSS readers reveals severe page bloat, with over 82% of network traffic and transferred bytes traced to ad-tech, tracking, and programmatic advertising scripts. Despite the core content consisting of just 10-15 KB of t…

  • Simon Willison's Weblog

    JavaScript Sandboxing Research

    22nd March 2026 Research JavaScript Sandboxing Research — Analyzing current JavaScript sandboxing options for running untrusted code, this research compares core approaches in Node.js (including worker_threads, node:vm, and the Permission Model), prominent npm packages (isolated-vm, vm2), and alternative engines like q…

  • Simon Willison's Weblog

    DNS Lookup

    22nd March 2026 TIL that Cloudflare's 1.1.1.1 DNS service (and 1.1.1.2 and 1.1.1.3, which block malware and malware + adult content respectively) has a CORS-enabled JSON API, so I had Claude Code build me a UI for running DNS queries against all three of those resolvers.

  • Simon Willison's Weblog

    Merge State Visualizer

    Bram Cohen wrote about his coherent vision for the future of version control using CRDTs, illustrated by 470 lines of Python. I fed that Python (minus comments) into Claude and asked for an explanation, then had it use Pyodide to build me an interactive UI for seeing how the algorithms work.