Graham Dumpleton: Zero-code tracing with wrapture
Link: https://grahamdumpleton.me/posts/2026/09/zero-code-tracing-with-wrapture/
The previous post traced the shop with three bindings and a sink, all applied from the program's own entry point. That is fine when the program is yours. It is less fine when the application is one yo
Link: https://grahamdumpleton.me/posts/2026/09/zero-code-tracing-with-wrapture/
The previous post traced the shop with three bindings and a sink, all applied from the program's own entry point. That is fine when the program is yours. It is less fine when the application is one yo
grahamdumpleton.me
Zero-code tracing with wrapture - Graham Dumpleton
Tracing an application you cannot or should not edit: the bindings and sink move into a TOML file next to the project, and the program runs untouched.
LernerPython blog, from Reuven Lerner: Claude Code always produces something. That’s the hard part.
Link: https://lernerpython.com/2026/09/08/claude-code-always-produces-something/
For many months, I’ve been using Claude Code several hours each day. Not to experiment, but to get work done. A growing amount of the functionality behind LernerPython.com is now written with Claude
Link: https://lernerpython.com/2026/09/08/claude-code-always-produces-something/
For many months, I’ve been using Claude Code several hours each day. Not to experiment, but to get work done. A growing amount of the functionality behind LernerPython.com is now written with Claude
LernerPython
What daily Claude Code use actually taught me - LernerPython
I've used Claude Code several hours a day for months. Agents do what you tell them, not what you meant — so validating results matters most.
Python Bytes: #495 Banned
Link: https://pythonbytes.fm/episodes/show/495/banned
Topics covered in this episode:
EuroPython 2026 videos are online
The State of Django 2026: Boring is so back
htmx 4.0.0 has been released
🐍 Functionally Zen
Extras
Joke
Watch on YouTube
Sponsored by
Link: https://pythonbytes.fm/episodes/show/495/banned
Topics covered in this episode:
EuroPython 2026 videos are online
The State of Django 2026: Boring is so back
htmx 4.0.0 has been released
🐍 Functionally Zen
Extras
Joke
Watch on YouTube
Sponsored by
pythonbytes.fm
Banned
News and announcements from the Python community for the week of Sep 8th, 2026
PyCoder’s Weekly: Issue #751: Profiling, From pandas to Polars, NotImplemented, and More (2026-09-08)
Link: https://pycoders.com/issues/751
#751 – SEPTEMBER 8, 2026 View in Browser » Profiling and Making Apps Fast by Default How do you plan for the performance of your Python applications? What does a performance budget entail, and w
Link: https://pycoders.com/issues/751
#751 – SEPTEMBER 8, 2026 View in Browser » Profiling and Making Apps Fast by Default How do you plan for the performance of your Python applications? What does a performance budget entail, and w
Pycoders
PyCoder’s Weekly | Issue #751
Profiling, From pandas to Polars, NotImplemented, and More
Django Weblog: Call for volunteers: Fundraising Working Group
Link: https://www.djangoproject.com/weblog/2026/sep/08/call-for-volunteers-fundraising-working-group/
The Django Software Foundation is looking for people to join the Fundraising Working Group.
This is a particularly interesting time to get involved.
The DSF has raised its 2026 fundraising goal to $50
Link: https://www.djangoproject.com/weblog/2026/sep/08/call-for-volunteers-fundraising-working-group/
The Django Software Foundation is looking for people to join the Fundraising Working Group.
This is a particularly interesting time to get involved.
The DSF has raised its 2026 fundraising goal to $50
Django Project
Call for volunteers: Fundraising Working Group
Posted by Priya Pahwa on Sept. 8, 2026
Graham Dumpleton: Tracing Flask with wrapture
Link: https://grahamdumpleton.me/posts/2026/09/tracing-flask-with-wrapture/
For a web application the natural unit of tracing is the request: one HTTP request, its method, path and status, and every observed call made while handling it, as one tree. The config file from last
Link: https://grahamdumpleton.me/posts/2026/09/tracing-flask-with-wrapture/
For a web application the natural unit of tracing is the request: one HTTP request, its method, path and status, and every observed call made while handling it, as one tree. The config file from last
grahamdumpleton.me
Tracing Flask with wrapture - Graham Dumpleton
One HTTP request as one tree, from a single config entry, with the failing request saying both that it answered 500 and why.
Python GUIs: How to Check if a QLineEdit is Empty in Python — Empty strings are falsey in Python
Link: https://www.pythonguis.com/faq/check-qlineedit-empty-pyqt/
A reader asked:
I just want to know, how do I check whether a QLineEdit is empty or not?
The QLineEdit class doesn't have an isEmpty() method which you can call to find out if the line edit is empty
Link: https://www.pythonguis.com/faq/check-qlineedit-empty-pyqt/
A reader asked:
I just want to know, how do I check whether a QLineEdit is empty or not?
The QLineEdit class doesn't have an isEmpty() method which you can call to find out if the line edit is empty
Python GUIs
How to Check if a QLineEdit is Empty — PyQt5/6 & PySide2/6
Learn how to check if a QLineEdit is empty in PyQt5, PyQt6, PySide2 and PySide6. Use Python's falsey empty strings to validate QLineEdit input with a working example.
Python GUIs: Fixing Crashes When Using NumPy Arrays with QImage in Qt Threads — How to safely pass image data between threads when streaming video or updating displays
Link: https://www.pythonguis.com/faq/crashing-in-qrunner-threads-with-numpy/
I'm using a threaded runner to stream a live video feed by converting a NumPy array to a QImage, then to a QPixmap, and displaying it on a QLabel. But I'm frequently encountering crashes when the lab
Link: https://www.pythonguis.com/faq/crashing-in-qrunner-threads-with-numpy/
I'm using a threaded runner to stream a live video feed by converting a NumPy array to a QImage, then to a QPixmap, and displaying it on a QLabel. But I'm frequently encountering crashes when the lab
Python GUIs
Fix QImage NumPy Crash in PyQt6 PySide6 Multithreaded Applications
Learn why passing NumPy arrays to QImage in multithared PyQt6 or PySide6 applications can cause crashes, and how to fix it by managing memory buffers and using signals correctly.
Python GUIs: Clean up on exit — Stopping threads when closing a PyQt6 application — How to properly shut down background threads and workers when your application window is closed
Link: https://www.pythonguis.com/faq/clean-up-on-exit-application/
I'm using QThreadPool and worker threads in my PyQt application. When I click the X button to close the window, the threads keep running in the background. What's the best way to clean everything up
Link: https://www.pythonguis.com/faq/clean-up-on-exit-application/
I'm using QThreadPool and worker threads in my PyQt application. When I click the X button to close the window, the threads keep running in the background. What's the best way to clean everything up
Python GUIs
How to stop background threads on exit in PyQt6 — closeEvent cleanup
Learn how to handle application exit in PyQt6 by overriding closeEvent to stop background threads and workers, ensuring a clean shutdown without errors or orphaned processes.
Bob Belderbos: Database-Driven RBAC with FastAPI and Azure Entra ID
Link: https://belderbos.dev/blog/database-driven-rbac-fastapi-azure-entra/
This came out of a coaching project: a FastAPI service backing a geotechnical database. We use Azure Entra ID for authentication, but we needed role-based access control (RBAC) granularly per endpoint
Link: https://belderbos.dev/blog/database-driven-rbac-fastapi-azure-entra/
This came out of a coaching project: a FastAPI service backing a geotechnical database. We use Azure Entra ID for authentication, but we needed role-based access control (RBAC) granularly per endpoint
belderbos.dev
Database-Driven RBAC with FastAPI and Azure Entra ID
Wire Azure Entra ID roles into FastAPI, then keep the endpoint-to-role policy in the database so an admin can re-point access without a redeploy.
Armin Ronacher: Astra for Coding: Why Are We Doing This Again?
Link: https://lucumr.pocoo.org/2026/9/7/astra-why/
I’m more and more convinced that all of AI engineering is
Neijuan (内卷, meaning curl inwards). In
China it describes a system that demands ever more effort and competition
without improving output. T
Link: https://lucumr.pocoo.org/2026/9/7/astra-why/
I’m more and more convinced that all of AI engineering is
Neijuan (内卷, meaning curl inwards). In
China it describes a system that demands ever more effort and competition
without improving output. T
Armin Ronacher's Thoughts and Writings
Astra for Coding: Why Are We Doing This Again?
Some thoughts on Astra and newfangled long-horizon models.
Graham Dumpleton: Finding slow code with wrapture
Link: https://grahamdumpleton.me/posts/2026/09/finding-slow-code-with-wrapture/
The /order endpoint of the Flask shop is slow. The view calls the order service, the service calls the gateway and then the ledger, and the question is which of those the time is going to. To give the
Link: https://grahamdumpleton.me/posts/2026/09/finding-slow-code-with-wrapture/
The /order endpoint of the Flask shop is slow. The view calls the order service, the service calls the gateway and then the ledger, and the question is which of those the time is going to. To give the
grahamdumpleton.me
Finding slow code with wrapture - Graham Dumpleton
One endpoint is slow and there are three layers it could be. Self time for the handful of methods you chose answers the question without a profiler and without a stopwatch in every layer.
EuroPython: EuroPython 2026: Videos Published
Link: https://blog.europython.eu/europython-2026-videos-published/
Hi all Pythonistas! 👋EuroPython 2026 took over the ICE Congress Centre in Kraków from 13 - 19 July and it wouldn’t have been possible without all of our attendees, speakers, volunteers, and sponsors.
Link: https://blog.europython.eu/europython-2026-videos-published/
Hi all Pythonistas! 👋EuroPython 2026 took over the ICE Congress Centre in Kraków from 13 - 19 July and it wouldn’t have been possible without all of our attendees, speakers, volunteers, and sponsors.
EuroPython Blog
EuroPython 2026: Videos Published
Hi all Pythonistas! 👋
EuroPython 2026 took over the ICE Congress Centre in Kraków from 13 - 19 July and it wouldn’t have been possible without all of our attendees, speakers, volunteers, and sponsors. You allowed us to showcase the Python community at its…
EuroPython 2026 took over the ICE Congress Centre in Kraków from 13 - 19 July and it wouldn’t have been possible without all of our attendees, speakers, volunteers, and sponsors. You allowed us to showcase the Python community at its…
Hugo van Kemenade: Soft-deprecating re.match()
Link: https://hugovk.dev/blog/2026/soft-deprecating-re.match/
Quick, without looking it up, what does re.match() do? Which of these return a match?
import re
re.match("pi", "pi")
re.match("pi", "pie")
re.match("pi", "api")
re.match("pi", "magpie")
How does it co
Link: https://hugovk.dev/blog/2026/soft-deprecating-re.match/
Quick, without looking it up, what does re.match() do? Which of these return a match?
import re
re.match("pi", "pi")
re.match("pi", "pie")
re.match("pi", "api")
re.match("pi", "magpie")
How does it co
Hugo van Kemenade
Soft-deprecating re.match()
Django Weblog: PyCharm & Django Fundraiser Extended to September 14
Link: https://www.djangoproject.com/weblog/2026/sep/10/pycharm-django-fundraiser-extended/
The second half of our annual JetBrains fundraiser has been extended through September 14, 2026. Thank you to JetBrains for the extra time. You still have time to renew your PyCharm license or give it
Link: https://www.djangoproject.com/weblog/2026/sep/10/pycharm-django-fundraiser-extended/
The second half of our annual JetBrains fundraiser has been extended through September 14, 2026. Thank you to JetBrains for the extra time. You still have time to renew your PyCharm license or give it
Django Project
PyCharm & Django Fundraiser Extended to September 14
Posted by Jeff Triplett on Sept. 10, 2026
Talk Python to Me: #562: DuckLake: The Lakehouse That's Just SQL and Parquet
Link: https://talkpython.fm/episodes/show/562/ducklake-the-lakehouse-thats-just-sql-and-parquet
How many files does your query read before it reads any data? On some data lakes, you go through JSON and metadata files first, just to learn which Parquet files matter. DuckLake asks one SQL question
Link: https://talkpython.fm/episodes/show/562/ducklake-the-lakehouse-thats-just-sql-and-parquet
How many files does your query read before it reads any data? On some data lakes, you go through JSON and metadata files first, just to learn which Parquet files matter. DuckLake asks one SQL question
talkpython.fm
DuckLake: The Lakehouse That's Just SQL and Parquet
How many files does your query read before it reads any data? On some data lakes, you go through JSON and metadata files first, just to learn which Parquet files matter. DuckLake asks one SQL question instead. The metadata lives in a real database. The data…
Graham Dumpleton: OpenTelemetry export in wrapture
Link: https://grahamdumpleton.me/posts/2026/09/opentelemetry-export-in-wrapture/
Everything in the last four posts rendered a trace for a person to read or wrote it to a file for later. The other destination is a tracing backend, fed while the application runs, and OpenTelemetry i
Link: https://grahamdumpleton.me/posts/2026/09/opentelemetry-export-in-wrapture/
Everything in the last four posts rendered a trace for a person to read or wrote it to a file for later. The other destination is a tracing backend, fed while the application runs, and OpenTelemetry i
grahamdumpleton.me
OpenTelemetry export in wrapture - Graham Dumpleton
The same events that print a tree or fill a file can feed an OpenTelemetry backend while the application runs, with one trace id shared across files, headers and spans.
Bob Belderbos: Why Learn to Code If AI Can Code? 6 Reasons
Link: https://belderbos.dev/blog/why-learn-to-code-if-ai-can-code/
Stanford's Chris Piech runs Code in Place, an intro programming class with 17,000 students and over 1,000 teachers. They've run it both before and after Cursor and Claude Code arrived, and enrollment
Link: https://belderbos.dev/blog/why-learn-to-code-if-ai-can-code/
Stanford's Chris Piech runs Code in Place, an intro programming class with 17,000 students and over 1,000 teachers. They've run it both before and after Cursor and Claude Code arrived, and enrollment
belderbos.dev
Why Learn to Code If AI Can Code? 6 Reasons
Stanford's Chris Piech runs a class with 17,000 students. Enrollment basically doubled in the era of Claude Code and Cursor. Six reasons why, from his interview.
LernerPython blog, from Reuven Lerner: Newsprint: Turning e-mail newsletters into a personal PDF
Link: https://lernerpython.com/2026/09/11/newsprint-turning-e-mail-newsletters-into-a-personal-pdf/
I really enjoy reading e-mail newsletters. They’re clever, informative, and funny, and provide me with lots of food for thought — as well as professional information that is crucial to my work.
The th
Link: https://lernerpython.com/2026/09/11/newsprint-turning-e-mail-newsletters-into-a-personal-pdf/
I really enjoy reading e-mail newsletters. They’re clever, informative, and funny, and provide me with lots of food for thought — as well as professional information that is crucial to my work.
The th
LernerPython
Newsprint: Turning e-mail newsletters into a personal PDF - LernerPython
I really enjoy reading e-mail newsletters. They’re clever, informative, and funny, and provide me with lots of food for thought — as well as professional information that is crucial to […]
Mike C. Fletcher: Hardware Accelerated Video Capture for PyOpenGL
Link: http://blog.vrplumber.com/b/2026/09/11/hardware-accelerated-video-capture-for-pyopengl/
The pyopengl-video library is a small hack that lets you pass FrameBufferObjects (FBOs) directly to the local platform video encoding library (or allows you to use your existing video buffer as an FBO
Link: http://blog.vrplumber.com/b/2026/09/11/hardware-accelerated-video-capture-for-pyopengl/
The pyopengl-video library is a small hack that lets you pass FrameBufferObjects (FBOs) directly to the local platform video encoding library (or allows you to use your existing video buffer as an FBO
Vrplumber
Plumbing Life's Depths - Hardware Accelerated Video Capture for PyOpenGL
The pyopengl-video library is a small hack that lets you pass FrameBufferObjects (FBOs) directly to the local platform video encoding library (or allows you to use your existing video buffer as an FBO, depending on the platform). The purpose of the library…
Graham Dumpleton: Trying out wrapture
Link: https://grahamdumpleton.me/posts/2026/09/trying-out-wrapture/
Since introducing wrapture at the end of August I have been putting out a post every day or so, first working through how it is used in unit tests and then how the same bindings trace a running applic
Link: https://grahamdumpleton.me/posts/2026/09/trying-out-wrapture/
Since introducing wrapture at the end of August I have been putting out a post every day or so, first working through how it is used in unit tests and then how the same bindings trace a running applic
grahamdumpleton.me
Trying out wrapture - Graham Dumpleton
wrapture and its instrumentation packages are now at 1.0.0b1 with the API settled. A summary of the posts so far, the packages, the docs, and 24 workshops you can run in your browser on mybinder.