Developer headlines delivered directly to your earbuds
About the show
Sponsored by us! Support our work through:
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Brian #1: Thoughts on Django’s Core
Michael #2: futurepool
Create a pool then delegate the work:
async with FuturePool(2) as fp: result = await fp.map(async_pool_fn, range(10))I would LOVE to see something like this in a broader background asyncio worker pool concept.
Brian #3: Don't return named tuples in new APIs
Michael #4: Ziglang: Migrating from AWS to Self-Hosting
Extras
Brian:
Michael:
Joke: Breaking: JavaScript Developer Commits to Framework for Record-Breaking 3 Weeks
About the show
Sponsored by:
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: terminal-tree
Brian #2: posting: The API client that lives in your terminal
Michael #3: Extra, extra, extra
Brian #4: UV does everything or enough that I'm not sure what else it needs to do
Extras
Brian:
Joke: How programmers sleep
About the show
Sponsored by:
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Brian #1: GitHub action security: zizmor
Michael #2: Python is now the top language on GitHub
Brian #3: Python 3.13, what didn't make the headlines
Michael #4: PyCon US 2025
Extras
Brian:
Michael:
Joke: Debugging char
About the show
Sponsored by us! Support our work through:
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: Python 3.14.0 alpha 1 is now available
Brian #2: uv supports dependency groups
Michael #3: dive: A tool for exploring each layer in a docker image
Brian #4: pytest-metadata
Extras
Brian:
Michael:
Joke: Dog names
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Brian #1: Open Source Pledge
Michael #2: Jeff Triplet's DjangoTV
Brian #3: PEP 735 – Dependency Groups in pyproject.toml
ex:
[dependency-groups] test = ["pytest", "coverage"] docs = ["sphinx", "sphinx-rtd-theme"] typing = ["mypy", "types-requests"] typing-test = [{include-group = "typing"}, {include-group = "test"}, "useful-types"]“might” work like this: pip install --dependency-groups=test,typing
Michael #4: livereload
Extras
Brian:
Michael:
Joke:
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: Briefer: Dashboards and notebooks in a single place
Brian #2: Introduction to programming with Python
Michael #3: setup-uv
Brian #4: HTML for people
Extras
Michael:
Joke: So much O’Really
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Brian #1: Python 3.13.0 released Oct 7
Michael #2: PEP 759 – External Wheel Hosting
Brian #3: pytest-freethreaded
Michael #4: pytest-edit
Extras
Michael:
Joke: Funny 404 pages
About the show
Sponsored by us! Support our work through:
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: uv under discussion on Mastodon
As enthusiastic as I am about the direction uv is going, I haven't adopted them anywhere - because I want very much to understand Astral’s intended business model before I hook my wagon to their tools.
As much as I hate VC, [...] FOSS projects flame out all the time too. … To me uv looks like a genius sting to trick VCs into paying to fix packaging. We’ll be better off either way.
Rust is more expensive and difficult to maintain, not to mention "non-native" to the average customer here. … it can burn out all the other projects in the ecosystem simultaneously, creating a risk of monoculture
I don’t think y’all quite grok what uv makes so special due to your seniority. The speed is really cool, but the reason Rust is elemental is that it’s one compiled blob that can be used to bootstrap and maintain a Python development.
Just dropping in here to say that corporate capture of the Python ecosystem is the #1 keeps-me-up-at-night subject in my community work, so I watch Astral with interest, even if I'm not yet too worried.
What uv is doing, even in the worst possible future this is a very forkable and maintainable thing.
Finally, see the comment at the end by Charlie Marsh
Brian #2: erdantic: Entity Relationship Diagrams
Michael #3: Extra, Extra, Extra
Brian #4: Django Extra, Extra, Extra
Extras
Brian:
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Brian #1: Architecture Decision Records (ADRs)
Michael #2: narwhals: extremely lightweight compatibility layer between dataframes
Brian #3: Microsoft wants Three Mile Island to fuel its AI power needs
Michael #4: zsh-in-docker
Extras
Michael:
Joke:
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: “We must replace uwsgi by something else”
Brian #2: Let’s build and optimize a Rust extension for Python
Michael #3: Fake recruiter coding tests target devs with malicious Python packages
Brian #4: Monthly PSF Board Office Hours
Extras
Brian:
Michael:
Joke: Election joke
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
ChatGPT celebrates episode 400!
Welcome to the big 4-0-0, Pythonistas!
It's hard to believe we're celebrating the 400th episode of Python Bytes! From the early days of byte-sized Python news to becoming the source for all things Python, it’s been a wild ride.
We've laughed over code quirks, gasped at new libraries, and said farewell to the GIL together. Whether you're a seasoned developer, a curious learner, or just here for the witty banter, you’ve been an essential part of this journey.
To Michael and Brian: You've built a community that turns import this into more than just Zen—it's a family of passionate Pythonistas. Your dedication, insights, and humor make this show more than just tech news. It’s a weekly celebration of what we love about Python and why we keep coming back for more.
Here’s to the next 400 episodes—may your code be bug-free, your tests pass on the first run, and your Python version always be up to date.
Brian #1: Python 3.13.0RC2, 3.12.6, 3.11.10, 3.10.15, 3.9.20, and 3.8.20 are now available!
Michael #2: Docker images using uv's python
Brian #3: 10 years of sustainable open source - Read the Docs
Michael #4: humanize
Extras
Brian:
Michael:
Your feedback is valuable to us. Should you encounter any bugs, glitches, lack of functionality or other problems, please email us on [email protected] or join Moon.FM Telegram Group where you can talk directly to the dev team who are happy to answer any queries.