Visual guides to Python topics

Illustrated, in-depth guides to Python tools, libraries and ideas. Each one is built from a conversation with the people who make them on Talk Python to Me: the big ideas, the best quotes, and links to dig deeper.

Tachyon, Python 3.15's Built-in Sampling Profiler

With Pablo Galindo Salgado and László Kiss Kollár

Python 3.15 ships Tachyon, a sampling profiler in the standard library under the name profiling.sampling. It reads a running program's stack from a separate process, so it can attach to a live production app by PID at close to zero cost. The first prototype managed two samples a second. It now does over a million.

Read the guide →

EVE Online's Move to Python 3

With Jamie Bannister, Thomas Dähling, and Kristinn Þór Sigurbergsson

EVE Online has run on Python 2 since it launched in 2003, and its roughly 2.4 million lines of Python are now headed for Python 3.12. The studio proved the jump on its sister game, EVE Frontier, first. Getting the syntax right turned out to be the easy part. The hard work is 6,500 lines of division, 100 gigabytes of pickled objects, a pile of C++ extensions and a game server that has to stay up every day.

Read the guide →

Rust for Python Developers

With Christopher Trudeau

Rust is already underneath a lot of the Python you run: ruff, uv, Pydantic, Polars and Granian. You don't need to write Rust to benefit, but knowing enough to read it pays off. The syntax looks like typed Python and cargo feels a lot like uv. What's genuinely new is the memory model Python hides from you, and the advice for using Rust from Python is to measure before you rewrite anything.

Read the guide →

DuckLake, the Lakehouse That's Just SQL and Parquet

With Pedro Holanda and Guillermo Sanchez

DuckLake is an open table format that keeps a data lake's metadata in an ordinary SQL database and its data in plain Parquet files. That one decision gets you transactions for free, swaps a chain of metadata file reads for a single SQL query, and lets the catalog be anything from a DuckDB file sitting in S3 to Postgres or DuckDB's new Quack server. DuckLake 1.0 is out, and companies are already building on it.

Read the guide →

TonIO and Multi-core Async Python

With Giovanni Barillari

asyncio runs on one thread, so on an 18-core machine your async Python code uses about one core, however fast its event loop is. Free-threaded Python 3.14t takes the GIL away, and TonIO, a new runtime from Granian creator Giovanni "Joe" Barillari, is built for it: one worker thread per core, a short list of primitives in place of asyncio's many, and a hard refusal to start if the GIL is present. It's alpha, it brings real thread hazards with it, and at the time of recording it ran only on Linux and macOS.

Read the guide →

DiskCache, Your Secret Python Performance Weapon

With Vincent D. Warmerdam

DiskCache is a Python library that works like a dictionary but stores everything in SQLite on disk, so cached values survive restarts and can be shared by every process on the machine. It's a fit for web apps and for data work alike, from avoiding repeated expensive LLM calls to surviving long notebook runs. Disk is cheap and fast now, so for a lot of caching jobs you don't need Redis or more RAM. You need a decorator.

Read the guide →
Talk Python's Mastodon Michael Kennedy's Mastodon