430 avsnitt • Längd: 30 min • Veckovis: Tisdag
Python Bytes is a weekly podcast hosted by Michael Kennedy and Brian Okken. The show is a short discussion on the headlines and noteworthy news in the Python, developer, and data science space.
The podcast Python Bytes is created by Michael Kennedy and Brian Okken. The podcast and the artwork on this page are embedded on this page using the public podcast feed (RSS).
About the show
Sponsored by Porkbun! Use our link pythonbytes.fm/porkbun and get a .app or .dev domain for $5.99 at Porkbun.
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: pip 25.1 has dependency groups, pylock.toml, plus more
Dependency groups, PEP 735, supported
# pyproject.toml
[dependency-groups]
test = ["pytest", "pytest-xdist"]
lint = ["mypy", "isort"]
# Dependency Groups can include other groups! ✨
dev = [ {include-group = "test"}, {include-group = "lint"} ]
Package installation progress bar
Michael #2: aiohttp goes free threaded
Brian #3: uv 0.6.15 supports pylock.toml
Michael #4: Whenever
Extras
Brian:
Michael:
Joke: Can you Vibe?
About the show
Sponsored by Posit Workbench: pythonbytes.fm/workbench
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: Huly
Brian #2: CVE Foundation formed to take over CVE program from MITRE
Michael #3: drawdb
Brian #4: 14 Advanced Python Features
Extras
Michael:
Joke: Python Tariffs
About the show
Sponsored by Posit Connect: pythonbytes.fm/connect
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: How to Write a Git Commit Message
Michael #2: Caddy Web Server
Brian #3: Some new PEPs approved
Michael #4: juv
Extras
Brian:
Michael:
Joke: BGPT (thanks Doug Farrell)
About the show
Sponsored by Posit Package Manager: pythonbytes.fm/ppm
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: Git Town solves the problem that using the Git CLI correctly
Brian #2: PEP 751 – A file format to record Python dependencies for installation reproducibility
Michael #3: git-who and watchgha
And watchgha - Live display of current GitHub action runs by Ned Batchelder
Brian #4: Share Python Scripts Like a Pro: uv and PEP 723 for Easy Deployment
Extras
Brian:
Michael:
pyenv virtualenv 3.13.2 mylib313
, then either activate the venv with pyenv activate mylib313
and create a .python-version
file containing mylib313
so I never had to manually activate the env I want to use by default on that project.uv venv --python 3.13 ~/v/mylib313
workon() { source ~/v/$1/bin/activate } \
so now I can run \workon mylib313or
workon mylib38when I need to work in a specific environment. uv's
.python-version` support works much differently than pyenv's, and that lack of support is my biggest frustration with this approach, but I am willing to live without it.Joke: So here it will stay
About the show
Sponsored by Posit Connect Cloud: pythonbytes.fm/connect-cloud
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: mdformat
Michael #2: pre-commit-uv
Brian #3: PEP 758 and 781
Michael #4: Serie: rich git commit graph in your terminal, like magic
Extras
Michael:
Joke: Wishing for wishes
About the show
Brought to you by Posit Connect: pythonbytes.fm/connect.
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: Why aren't you using uv?
Brian #2: Python Developer Tooling Handbook
Michael #3: Calling all doc writers: blacken-docs
black
on python code blocks in documentation files Brian #4: Reinventing notebooks as reusable Python programs
Extras
Brian:
Michael:
I'm sure some other Hacker News reader has already given you the feedback, but in the unlikely case that they haven't, You read those headlines in this segment exactly wrong.
“Ask HN: Who is hiring?" is a monthly post that asks employers to post about jobs they have available
“Ask HN: Who wants to be hired?” is a monthly topic where they ask people who are looking for jobs to post about themselves in the hope that their skillset it is a good match (and not an LLM generated resume)
So unfortunately your rosy analysis might need a less rosy interpretation.
Joke:
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: The weird quirk with rounding in Python
Michael #2: Python interpreter adds tail calls
Brian #3: Remove punctuation from a string with translate and maketrans
replace
to remove punctuation from a Python string. Instead, use the method translate
.”Michael #4: Extra, extra, extra
Extras
Joke: Startrek Testing
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: pysqlscribe
Brian #2: A map of Python
Michael #3: Rust, C++, and Python trends in jobs on Hacker News (February 2025)
Brian #4: The features of Python's help() function
Extras
Michael:
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: My 2025 uv-based Python Project Layout for Production Apps
Michael #2: aiolimiter
Brian #3: A peek into a possible future of Python in the browser
Michael #4: Reloadium
Extras
Brian:
Michael:
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: httpdbg
Brian #2: PyPI Now Supports iOS and Android Wheels for Mobile Python Development
Michael #3: Arcade Game Platform goes 3.0
Brian #4: PEP 765 – Disallow return/break/continue that exit a finally block
Extras
Brian:
Michael:
Joke: How old is she?
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: PEP 772 – Packaging governance process
Michael #2: Official Django MongoDB Backend Now Available in Public Preview
Brian #3: Developer Philosophy
Michael #4: Python 3.13.2 released
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
RUN --mount=type=cache,target=/root/.cache uv venv --python 3.13 /venv
Extras
Brian:
Michael:
Joke:
.env
files?python -m pip
changedir
to avoid the need for src
flupy
and asq
)***pip thank**
else
in Python LoopsEn liten tjänst av I'm With Friends. Finns även på engelska.