Simon Willison’s Weblog

Subscribe
Atom feed

Elsewhere

Filters: Sorted by date

TIL Copy rich text to the clipboard — I've been experimenting with a tool for generating the content for a weekly Substack newsletter by querying the Datasette API for my blog and assembling HTML for the last week of content.
TIL Running LLaMA 7B and 13B on a 64GB M2 MacBook Pro with llama.cpp — See also: **[Large language models are having their Stable Diffusion moment right now](https://simonwillison.net/2023/Mar/11/llama/)**.
TIL Using SQL with GDAL — Inspired [by Brad Neuberg](https://twitter.com/bradneuberg/status/1633875601789681666) I decided to take a look at the SQL features in the GDAL family of tools.
TIL Using ChatGPT to write AppleScript — I found a killer application for ChatGPT today: writing AppleScript!
TIL Mocking subprocess with pytest-subprocess — For [apple-notes-to-sqlite](https://github.com/dogsheep/apple-notes-to-sqlite) I needed to write some tests that simulated executing the `osascript` command using the Python `subprocess` module.
Release apple-notes-to-sqlite 0.1 — Export Apple Notes to SQLite
Release datasette-render-html 1.0 — Plugin for selectively rendering the HTML is specific columns
Release datasette 0.64.2 — An open source multi-tool for exploring and publishing data
TIL A simple Python wrapper for the ChatGPT API — OpenAI [released an API for ChatGPT](https://openai.com/blog/introducing-chatgpt-and-whisper-apis) yesterday. It's 1/10th of the price of the `text-davinci-003` model!
Release datasette-simple-html 0.1 — Datasette SQL functions for very simple HTML operations
Release datasette-app 0.2.3 — The Datasette macOS application
Release datasette-codespaces 0.1.1 — Conveniences for running Datasette on GitHub Codespaces
Release datasette-codespaces 0.1 — Conveniences for running Datasette on GitHub Codespaces
TIL sips: Scriptable image processing system — I wanted to convert some `.webp` images to `.png` on my Mac. I asked ChatGPT:
Release datasette-app-support 0.11.8 — Part of https://github.com/simonw/datasette-app
Release datasette-app-support 0.11.7 — Part of https://github.com/simonw/datasette-app
TIL Training nanoGPT entirely on content from my blog — This is a follow-up to [Running nanoGPT on a MacBook M2 to generate terrible Shakespeare](https://til.simonwillison.net/llms/nanogpt-shakespeare-m2).
TIL Subqueries in select expressions in SQLite - also window functions — I figured out a single SQL query for the following today. Given a table of GitHub repositories, for each repository return:
Release datasette-explain 0.1a0 — Explain and validate SQL queries as you type them into Datasette
TIL Avoiding "length" errors in Apache Bench with the -l option — I was using the Apache Bench `ab` command to exercise some new code I'm writing in Datasette and I noticed I was getting a lot of errors:
Release db-to-sqlite 1.5 — CLI tool for exporting tables or queries from any SQL database to a SQLite file
TIL The SQLite now argument is stable within the same query — I stumbled across an interesting little detail of SQLite today, running the following query:
TIL Building Mastodon bots with GitHub Actions and toot — Twitter [announced today](https://twitter.com/TwitterDev/status/1621026986784337922) that they'll be ending free API access for bots.
TIL Run Python code in a WebAssembly sandbox — I've been trying to figure this out for ages. Tim Bart responded to [my call for help on Hacker News](https://news.ycombinator.com/item?id=34598024) with [this extremely useful code example](https://gist.github.com/pims/711549577759ad1341f1a90860f1f3a5) showing how to run Python code in WebAssembly inside Python, using [wasmtime-py](https://github.com/bytecodealliance/wasmtime-py) and the new Python WASM build [released by VMware Wasm Labs](https://wasmlabs.dev/articles/python-wasm32-wasi/).
TIL Running nanoGPT on a MacBook M2 to generate terrible Shakespeare — [nanoGPT](https://github.com/karpathy/nanoGPT) is Andrej Karpathy's "simplest, fastest repository for training/finetuning medium-sized GPTs".
TIL Calculating embeddings with gtr-t5-large in Python — I've long wanted to run some kind of large language model on my own computer. Now that I have a M2 MacBook Pro I'm even more keen to find interesting ways to keep all of those CPU cores busy.
TIL Using recursive CTEs to explore hierarchical Twitter threads — This TIL adapted from [a Gist](https://gist.github.com/simonw/656a8c6e4688f720773c474080abe1b0) I put together in 2019, before I started tracking TILs here.
Release shot-scraper 1.1.1 — A command-line utility for taking automated screenshots of websites
TIL Combining CTEs and VALUES in SQLite — Here's how to use SQLite's `VALUES` syntax with a CTE to create a temporary table that you can then perform joins against in a query:
Release shot-scraper 1.1 — A command-line utility for taking automated screenshots of websites

Beats

Years

Tags