ok so newsletter is out, and i’ve finally posted my PyCon UK keynote with additional material to my homepage.
if you wanna know what took me so long: check out my latest newsletter ;)
back to sauna!
https://hynek.me/talks/python-superpower/
Final preparations for the Python Users Berlin (@…) meeting tonight. I’m looking forward to meeting all the Pythonistas in Berlin and Rodrigo’s (@…) talk on itertools.tee:
Does VSCode (eg in pylance) have a feature to display a clickable link to the language standard library documentation (eg #python #vscode #askfedi
Fun case of circular logic in #Python #standards:
https://discuss.python.org/t/spaces-not-considered-a-valid-verbatim-character-for-glob-patterns/106463
1. Use "globs" in the specification.
2. Decide that "glob" may be ambiguous, so add severe restrictions on what's supported.
3. Because of the severe restrictions, people may have reinvented the wheel instead of using system `glob` module.
4. Since people may have used their custom implementations, just relaxing the spec is a problem.
@… thanks!
Marimo OSS Python Notebook RCE: From Disclosure to Exploitation in Under 10 Hours | Sysdig — <https://www.
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
Maintainer friends of wheel-heavy #Python packages: do we already have some practical, standard way to automatically upload all the cibuildwheel output across all architectures? My current workflow is a) a pain in the ass and b) requires me to have one last PyPI upload token.
Here's two examples of running command line stuff on iOS via Apple Shortcuts and a-Shell.
One shows the uptime of my phone, the other runs a Python script and shows the output.
#iOS #apple #python
Jacob Coffee will speak on 'Thoughtful Observability: Monitoring the Python infrastructure' as part of our Observability track at SCaLE 23x. Full details: https://www.socallinuxexpo.org/scale/23x
python -c "import this"
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.…
There's roughly two ways I've acquired skills in programming languages in the past: the "hard" way for writing code (e.g., "Learn Python the Hard Way"), and the "easy" way for learning to read a new programming language by skimming the language specs or leafing through a book on the topic (e.g., "The Supercollider Book").
I suppose there's a third way now for me: Reading up on software architecture design (e.g., stuff like "500 lines or less"), so that co-creation skills with large language models are improved?
For example, Yoav Rubin's article on "An Archaeology-Inspired Database" in 500 lines or less really made me think about Clojure in a new way.
Thoughts on this?
#AIResearch #Software #programming
Logged into Google using Chrome at work and found it's become a Kakfa-esque experience where I had to log in five times before I realized what was going on with "profiles" I've never asked for. Reminds me of the time I did a shoot-out of ten visual recognition APIs and I got demos of the others done in 20 minutes each but Google Cloud Compute took two hours because it trashed my Python #google
Here’s stamina 26.1.0, my opinionated #Python retry package, that now supports more than 1024 retries for the cases when you need A LOT of stamina: https://github.com/hynek/stamina/releases/tag/26…
The AI-assisted overhaul of a Python character encoding detection library raises questions about software relicensing and derivative versions of the original (Thomas Claburn/The Register)
https://www.theregister.com/2026/03/06/ai_kills_software_licensing/
…
from my link log —
cysqlite: a new SQLite driver for Python.
https://charlesleifer.com/blog/cysqlite---a-new-sqlite-driver/
saved 2026-02-11
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
Always grateful for the new levels of stability and reliability that #RustLang rewrites of #Python stuff bring.
> a = Tibs.from_i(-1, 128)
^^^^^^^^^^^^^^^^^^^^
E pyo3_runtime.PanicException: attempt to negate with overflow
https://github.com/scott-griffiths/tibs/issues/1
The rewrite of the Sisyphus server continues, I've got all of the GET endpoints and about 60% of all the endpoints finished overall. Some initial testing on the `/workers` and `/queue` endpoints show some worrying results from the old version and some great results from the new version. The `/workers` endpoint started throwing errors at about 800 RPS on the Python/Flask version (the old one), the rewrite is showing around 4800 RPS (Golang/Gin). The `/queue` endpoint doesn't show a…
I created a new repo/tool today to evaluate and collect the rapidly changing tooling configurations that everyone is trying to figure out (using statistical experimental design) I used Claude/Gastown to both make it and operate it and have some initial comparison data on opus/sonnet and Python/TS/Go etc. for a small test. I’d be happy for some github stars if people think it could be useful.
♿ First #opensource end-to-end PDF accessibility tool: layout analysis − auto-tagging − Tagged PDF (Apache 2.0, Q2 2026). Built with PDF Association & veraPDF devs
🔗 #LangChain integration, #Python
Slightly technical coding question, #Matlab to #Python:
What's the simplest way to read a Matlab table in Python?
Or, if that's not possible, what should I convert my Matlab table to so I can read it in python? 🙏
It's quite a big table with "nested" data i.e. some of th…
Why does it feel like Python did everything in the world to not just use printf?
»quicktype — Convert JSON into gorgeous, typesafe code in any language.
Convert JSON to Swift, C#, TypeScript, Objective-C, Go, Java, C and more.«
In my opinion, this open source tool is good for quickly creating a prototype, but then the programming only begins.
⚙️ https://quicktype.io
Convert JSON to Swift, C#, TypeScript, Objective-C, Go, Java, C++ and more • quicktype
quicktype generates types and helper code for reading JSON in C#, Swift, JavaScript, Flow, Python, TypeScript, Go, Rust, Objective-C, Kotlin, C++ and more. Customize online with advanced options, or download a command-line tool.
My wife is currently trying to get a python script working on her computer and she's encountering the "fun" of python not having any package manager built-in
So, remember how all the cool kids dumped #Sphinx and went for the shiny #MkDocs thing? And then used the shiny Material for MkDocs theme?
Well, apparently MkDocs 1.x is dead, and MkDocs 2.0 is coming with no support for plugins, incompatible theming system, closed contribution model and unclear licensing.
So which hype train are the cool kids jumping to these days?
#Python
#Steady #Klimacrew
Vom Puristen zum #IDE-Nutzer
Ganz langsam. 😁 Wie verändert sich der Workflow, wenn man statt eines simplen Editors mit einer IDE arbeitet? Als Hobby-Entwickler hat mir Notepa…
It strikes me that one of the things LLMs rob us of is the exact kind of serendipity that much of OSS relies on.
I was just looking something up on https://docs.python.org, which lead me to stumble on a line of documentation entirely irrelevant to what I was trying to do - But it caught my eye because…
If you have a WordPress blog and want to retrospectively update your media library with image descriptions ... consider my little python script https://repos.mxhdr.net/maxheadroom/wp-image-alt-generator
This will generate images descriptions using various LLM providers …
Once upon a time Python just worked.
Now, on Mac OS, Python is a disaster. Different versions in different virtual environements, homebrew vs pip vs pip3 vs pipx vs ...
It is hard to image how the Python world got itself so bollixed up on MacOS.
Mir fehlte ein simples Tetris ohne Werbung, Irgendwas-Mode und Krimskrams. Geht (dank Python und der sehr praktischen pyGame-Library) auch ohne Vibecoding. Auch wenn's trivial ist: das Gefühl, selbst eine gute Lösung gefunden zu haben, wie sich etwas programmieren lässt, ist immer noch ein sehr gutes ;)
I did skim through a Python GTK Adwaita tutorial in the last few days. Besides stumbling over some deprecations here and there it worked really well so far. For some stuff I needed to look up other projects how they solved my current issues. It's interesting how more experienced developers structured their code to layout their applications' windows. And it's interesting that I begin to understand what's going on in the code.
Thonny, Python IDE for beginners
#IDEsofMarch #python
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
At work @…, we are testing a new format where everyone from the support team has a one on one with everyone else. I created a python script to create the combinations and dates. At home, I thought it would be nice to make it easier to use and get back into learning Vue. I re-created the script as a tiny web app: MatchICS.
You enter a list of entities (people, t…
A buddy of mine is looking for work! Hit me up if you’re interested in a great developer and leader
My local Python installation on my Windows 11 laptop was a complete mess and i am not an experienced developer/programmer (far from it). I used Google Antigravity to fix and improve this. It fixed problems , installed "uv" and my life is simpler now... Agents have a role to play i think.
#google #antigravity
Integration in Codex: OpenAI übernimmt das Start-up Astral
OpenAI baut mit der Übernahme des Python-Tool-Entwicklers Astral das Engagement im Bereich Coding weiter aus und will seine Codex-Plattform weiterentwickeln.
This is such an end of an era that fresh Python programmers can’t even fathom.
PyPy used to be our hope! No major Python conference that didn’t suggest that they’re gonna fix the GIL and make time go backwards. And yeah, it’s really fast! I suspect the money-backed focus on performance in CPython combined with the compat paper cuts PyPy always came with has sealed its fate. I‘ve watched its decline over the years so I’m not surprised, but damn.
Вопрос к гуру #Python и #SQLite: что вы передаете в функции, Cursor или Connection? Какие плюсы и минусы, или нет никакой разницы?
Если нужно коммитить, то насколько странно делать это через cur.connection.commit()?
Oh, in other news, Wheel Variants (formerly PEP 817) is being split into smaller PEPs that will be easier to comprehend. The draft of the first split part, PEP 825, titled "Wheel Variants: Package Format" has been merged. We'd appreciate your feedback!
#Python #packaging
Got one of those little Polono P31s thermal label printers from shown on TikTok - actually a neat little gadget, only thing I'm not a fan of the Labelnise app - no idea what/if its sending out. So with the assistance of Claude, knocked up a small Python CLI to print text, images, qr and barcodes to it over BLE.
https://
#Cython promises to make "writing #C extensions for Python as easy as #Python itself." The reality is: learn C's mental model, express it in Python syntax, and use a separate diagnostic tool to verif…
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
Has it really been a year since I released this? I'm still really (mostly) enjoying Python, though I keep hearing good things ago Go and Rust...
https://rasterweb.net/raster/2025/03/08/blognag-a-blog-post-reminder/
@… Editor with properly set language server is key here, then jumping between "nodes" (or however editor will name it), go outside, inside, to siblings, parents etc.
In python, it's useful, but not necessary, here is starting to be necessary to don't get lost...
At least with fmt you don't need to care about those…
#Steady #Klimacrew
#BahnMonitor-Projekt: 7. Zufall ist nicht gleich Zufall. 🤭
Nach der Verspätungsmeldung kommt ein Wissenshäppchen. Der
Life with Visual Studio Code #VSCode
1. I learned about `code --disable-extensions. This helped pinpoint the selection issue to most probably an extension.
2. I have removed most of the extensions. I have Go, Java, Python, XML, YAML. Go is from Google, Java from Oracle, Python from MS, XML & YAML from RedHat. This is very interesting!
3. I still feel very lost in terms of shortcuts. I'm struggling to decide if I should introduce the ones I'm familiar with or continue to experience #VSCode
Sind User Sessions unter Python Web Frameworks wie Flask und FastAPI wirklich so beschissen, oder bilde ich mir das nur ein? Entweder es werden Session-Daten Client-seitig (signiert) in Cookies bzw. JWT gespeichert, oder die Server-seitigen Implementierungen brauchen aufgeblähte Datenbanken :(
So, decided to get them rookie `/queue` numbers up so did a quick bit of caching. For a 12-job queue, I went from 240 RPS (Python/Flask) to 680 (Golang/Gin) then to 3400 RPS with some proper caching. The `/workers` endpoint would benefit as well, but I think its performant enough though I may end up adding a bit of caching later.
#golang
Here’s my part in the great nogil/free-threading endeavor: build-and-inspect-python-package now will optionally add 3.14t and 3.15t to the generated matrix if a package indicates to support 3.14 or 3.15!
https://github.com/hynek/build-and-inspect-python-package…
🛠️ Code generation with diff preview, cURL builder from captured requests, one-click request replay, VS Code-style command palette (Ctrl K), built-in Swagger UI & dark/light theme with PWA offline support
🌐 Language-agnostic API (#OpenAPI 3.1) - send debug data from #Python,
surely a project that starts with converting a python script from 2 to 3 cannot go wrong #academicChatter
Looks like there is another supply chain attack on open source, this time the #python based #litellm package. I had a look at the #github page and I can see over a thousand open pull requests and a core t…
“they stole my apes, Odo” — Still relevant
“I SEEM TO RECALL YOU TAKING GREAT GLEE IN EXPLAINING THAT CENTRALISED PLATFORMS WERE OBSOLETE THANKS TO NFT'S.”
“WELL-”
“BUT NOW YOU WANT THE AUTHORITIES HELP IN POLICING THE SALE OF THESE…THINGS.”
https://mastodon.social/@Wraithe/11159
User A wrote a nifty little tool in Python. On Windows. Several weeks of work.
User B wants to use it as well.
They copy it, try to run it. Doesn't work.
Call me for help.
A: "It works on my machine. B must configure his python exactly like I do!"
Me: "Can't we run it in a virtual environment (venv). Or with a docker image?"
A: "Hm, I would have to learn how to do that. Is this really necessary?"
Me:
In #Python, you could write sensible and transparent code, like this:
if (curNode):
curNode = curNode.next
But if you prefer something that is functionally identical, but harder to read, try this:
curNode and (curNode := curNode.next)
Follow me for more great tips on how to make life hell for the next person working with your code (which could be you).
my python boot is too tight
Blindsight Simulator https://github.com/Satoshi88818/BlindsightSim Stand-alone python script by James Squire to simulate visual experience through cortical and retinal visual prostheses a la Cortigent Orion or Neuralink Blindsight;
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
RE: https://hachyderm.io/@thomasfuchs/116161415651095950
many brew install and virtualenvs and pips later the script is working!
(also curse you apple for shipping python essentially in a broken state)
#Steady #Klimacrew
#BahnMonitor-Projekt: 5. Automatisierte Skripte brauchen Kontrolle – besonders bei API-Aufrufen.
Jetzt bekommt das
@… FYI
285957 – lang/python312 as default python — <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=285957>
292105 – lang…
from my link log —
pywidevine: Python implementation of Google's Widevine DRM CDM (Content Decryption Module).
https://github.com/devine-dl/pywidevine
saved 2026-01-23
OpenAI agrees to acquire Astral, which makes Python tools for developers, to integrate its team into Codex, and says Codex has 2M users, up 3x since January (Agnee Ghosh/Bloomberg)
https://www.bloomberg.com/news/articles/20
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
https://github.com/ellieayla/argparse-help-markdown extracts all the --command-line=arguments supported by a CLI tool built with the Python argparse library, and writes them as a markdown table.
It's like your-cool-script.py --help, but for embedding into README.md during CI.
No dependencies outside of standard library. Single file module. Works great with @… 's cog.
#Steady #Klimacrew
Was tun, wenn falsche Einträge im #Marktstammdatenregister die Auswertung ruinieren?
Das Register ist berüchtigt für Fehleinträge durch Anlagenbetreiber. …
Moje nowe odkrycie https://marimo.io/ - pythonowe notebooki jako pliky .py .
Bardzo sprytne narzędzie. To, co zrobimy w "notebooku" możemy też od razu jako skrypt uruchamiać.
#python #notebooks
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
1. Do random changes to cython-test-exception-raiser, and commit them as "initial code".
2. Move the extension module from the package directory into top-level "raiser.*.so", for no apparent reason.
3. Switch to CalVer, so that #Twisted newer upgrades to the new releases (it pins to <2).
4. I file a bug, because I'd like to finally remove the old version from #Gentoo.
#Python
As of 26.1, Black forces 1 line after imports which—no matter how you feel about that—conflicts with flake8’s E302 that enforces 2 empty lines btw classes/functions.
I've been told that it was in --preview for a yr & nobody complained… I can hear Douglas Adams giggling.
As one of the OG Black cheerleaders this makes me sad since this change seems entirely unnecessary. Making THE Python-based formatter incompatible w/ THE Python-based linter… This was the fallback in case…
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
Finally put together type stubs for an old (last release 2017!) python library I've been depending on for years. And now wondering whether it would have been easier to just contribute types to the library directly. I thought it abandoned but then the maintainer responded up on an unrelated ticket.
(Though there's no CI infra actually working anymore. Makes testing contributions painful. Wonder whether building that first would be worthwhile & welcome...)
#python #packaging
#Steady #Klimacrew
#BahnMonitor-Projekt: 3. Klappt der erste Zugriff auf die Bahn-API?
Im nächsten Schritt wurde die API-Abfrage getestet udn geprüft, ob die zurückgelieferten Datenstru…
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
It's been a while but I was reminded that Java is shit.
Python is better, but has issues, mostly because of macOS.
And macOS permissions for user-created applications are a nightmare!
But a big, big thanks goes out to tools like Platypus.
"Platypus is a developer tool that creates native Mac applications from command line scripts such as shell scripts or Python, Perl, Ruby, Tcl, JavaScript and PHP programs."
from my link log —
Writing C with indent-based syntax similar to CoffeeScript or Python, via Guile.
https://sph.mn/computer/guides/c/c-indent.html
saved 2026-02-14
#Steady #Klimacrew
#BahnMonitor-Projekt: 2. Welche Architektur sollte der Bot haben?
Bevor es ans Coden geht, ist etwas Grübeln über eine sinnvolle Gliederung der Module ratsam. Wie sie…
Aaand we're seeing the first '#setuptools < 82' runtime dependencies in random packages because they are trying hard to workaround breakage due to pkg_resources removal.
#Python
The document-wide in-scrollbar thumbnail / minimap has been around for a while. Most people are familiar with it from RockScroll (2008) or Sublime Text (2012) or VSCode (2015).
#coverage #python
python_dependency: Python Dependency Network
Python's package dependency networks. Nodes in the network are Python's packages registered to PyPI and edges are dependencies among packages.
This network has 58743 nodes and 108399 edges.
Tags: Technological, Software, Unweighted
https://networks.sk…
in a world of omnipresent shitty and baity talk/blog/video titles, I cannot appreciate @… 's talk enough:
"How to give your Python code to someone else”
It's perfect. 🥹
https://…
#Steady #Klimacrew
#BahnMonitor-Projekt: 1. Wie kommt man an Live-Daten der Deutschen Bahn?
Im November konnte ich per Zufall mit einem
Did you know that #PEP425 ("Compatibility Tags for Built Distributions") said:
> Why isn’t there a . in the Python version number?
>
> CPython has lasted 20 years without a 3-digit major release. This should continue for some time. Other implementations may use _ as a delimiter, since both - and . delimit the surrounding filename.
This didn't age well.
#Python
Argument type is "list[tuple[dict[str, list[list[Unknown]]], list[str]] | tuple[dict[str, list[list[Unknown]]], list[Any]]]"
Utterly ridiculous statements made about parsed json that no-one should have to read in the morning.
#python #typing
> The next great […] library for #Python
Checks.
> Last commit: 4 years ago. Already broken.
#Python is just doing great. We're not having impossible constraints, as some projects need old #setuptools for pkg_resources, and other projects are starting to require newer setuptools for some fancy new features. And ofc after promising to release pkg_resources standalone over a month ago, setuptools upstream didn't deliver.
#Gentoo
And while we're releasing, here's a double-feature, mostly to avoid GitHub Actions complaining about deprecated actions:
- https://github.com/hynek/build-and-inspect-python-package/releases/tag/v2.15.0
-