atlas news
Planet Python
12 september
07h39
Graham Dumpleton: 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...
01h05
Mike C. Fletcher: 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...
00h00
Graham Dumpleton: 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,...
00h00
Armin Ronacher: P(doom)
This week some flavor of “AI is going to kill us all” went viral. In particularone where an employee put his personal probability of that...
11 september
15h03
LernerPython blog, from Reuven Lerner: 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...
00h00
Bob Belderbos: Why Learn to Code If AI Can Code? 6 Reasons
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...
00h00
Graham Dumpleton: 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...
10 september
14h59
Talk Python to Me: 562: 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...
11h00
Django Weblog: PyCharmamp; Django Fundraiser Extended to September 14
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...
08h08
Hugo van Kemenade: Soft-deprecating re.match()
Quick, without looking it up, what does re.match() do? Which of these return a match?import rere.match( pi , pi )re.match( pi , pie )re.match( pi ,...
06h43
EuroPython: 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...
00h00
Graham Dumpleton: 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...
09 september
06h00
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
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...
06h00
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
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....
06h00
Python GUIs: How to Check if a QLineEdit is Empty in Python Empty strings are falsey in Python
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...
00h00
Bob Belderbos: Database-Driven RBAC with FastAPI and Azure Entra ID
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...
00h00
Graham Dumpleton: 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...
08 september
19h30
PyCoder’s Weekly: Issue 751: Profiling, From pandas to Polars, NotImplemented, and More (2026-09-08)
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?...
19h27
Django Weblog: 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...
18h48
Python Bytes: 495 Banned
lt;strong>Topics covered in this episode:< strong><br><ul> <li><strong><a href https: www.youtube.com playlist...
13h04
LernerPython blog, from Reuven Lerner: Claude Code always produces something. That’s the hard part.
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...
00h00
Graham Dumpleton: Live tracing with wrapture
When I wrote about unit testing with wrapture the pattern in every test was the same: create a binding on a method, open a timeline(), run the code,...
07 september
00h00
Bob Belderbos: 5 design patterns used in my new habit tracker app
There are plenty of habit trackers, but I wanted to build mine with constraints, a calendar view and habit streaks. So I built commitgraph: a small...
00h00
Armin Ronacher: Astra for Coding: Why Are We Doing This Again?
I’m more and more convinced that all of AI engineering isNeijuan (å å , meaning curl inwards). InChina it describes a system that demands ever...
06 september
22h57
Glyph Lefkowitz: ... but what about video games?
I get asked this rhetorical question a lot, in various forms:Sure, datacenters might use a lot of energy, but you don’t have to use ahosted frontier...
1789256669