I'm Ned Batchelder, a Python software developer and community organizer.
- My personal site is nedbatchelder.com.
- I'm an organizer of Boston Python.
- I'm a member of the Python Docs Editorial Board.
You can find me at:
- Bluesky: nedbat.com.
- Mastodon: @[email protected].
- Libera IRC: nedbat in #python.
- Discord: nedbat in the Python Discord.
My latest blog posts:
- Hobby Hilbert Simplex, 26 Sep
An exploration and explanation of how to generate interesting swoopy art (read..) - Testing is better than DSA, 22 Sep
People should spend less time learning DSA, more time learning testing. (read..) - Finding unneeded pragmas, 24 Aug
A proof-of-concept tool for finding unneeded coverage.py exclusion pragmas (read..) - Starting with pytest’s parametrize, 13 Aug
Pytest’s parametrize feature is powerful but it looks scary. I hope this step-by-step explanation helps people use it more. (read..) - and many more..
I maintain a few Python packages, including:
- Coverage.py: The code coverage tool for Python
- Cog: Small bits of Python computation for static files
- Scriv: Changelog management tool
- Dinghy: A GitHub activity digest tool
- WatchGHA: Live display of current GitHub action runs
I've also made a few informal projects, some mathy art, and some small utilities:
- pkgsample, an simple example of how to package a Python project.
- Truchet images explores Truchet tiles and rendering images with them. Blog post.
- Flourish is a harmonograph explorer. Blog post and live site.
- Stilted is a toy PostScript implementation. Blog post.
- Gefilte Fish is a Python-based DSL for writing Gmail filters. Blog post.
- Pydoctor shows details of your Python environment for troubleshooting.
- Aptus is a Mandelbrot toy.
This is a Markdown page with embedded Python code rendered with cog. See my blog post Cogged GitHub profile for details.
Updated at 2025-09-26 12:15 UTC