cold fusion has nothing on my oscillation
Posts by Hynek Schlawack
A coffee to go by Tamya‘s Tasty Treats
I knew everything is bigger in Texas, but I didn't expect to be served a five-shot flat white.
Pretty sure that classifies as a weapon in some states.
"This should get you thru the day."
#jetLag
🗞️ We're going to revert the incremental garbage collector in Python 3.14 and 3.15. See here for details: discuss.python.org/t/reverting-...
#Python #Python314 #Python315
Hey! Are you in Austin this weekend? I just arrived in town for PyTexas 2026. Tutorials are tomorrow, but the talks are all weekend at the beautiful central library. Check it out! You can still get tickets. www.pytexas.org/2026/
I’m shocked I haven’t sold out PyTexas yet! What’s up Austin, I even got a fresh haircut! #Python
pretix.eu/pytexas/2026/
My Apple Watch is primarily Apple Pay-on-my-wrist and secondarily macOS-confirmation-without-passwords and everything else is a bonus. I even take it off at the gym. 🤡
But for that I wouldn’t want to miss it and I suspect that’s the difference between people who find it worthwhile or not.
@lukasz.langa.pl proving how valuable a paid DiR is to sponsors has paved the way for some of the the most exciting developments in Python land in the past 5 years. It's hard to put into words how lucky we are that this experiment went so well & we owe that grump all the thanks in the world.
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: github.com/hynek/stamina/rele...
My main annoyance now is that many sites use it as 2FA and not as a primary login.
I gotta admit that Passkeys have grown on me. I use them with 1Password & the integration even in Apple’s apps is great.
Looks like the worst UX problems have been ironed out and pressing “Login using Passkey” is much nicer than pasting email codes or getting angry that OTP auto-fill doesn’t work.
Hayao Miyazaki saying “I want to make a film that won’t shame me.”
*me working for a year on a stupid docker video*
Emails apparently from from Ali Abdaal. Three of them urging me to click a link to get free tokens, one urging me to delete an email urging me to click a link.
Watching crime happening in real time
given the claude code leak i'm starting to suspect that when boosters say they don't look at the code it's an act of fear, not confidence
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!
github.com/hynek/build-...
imagine how much calmer our lives would be if apps and websites would fucking stop logging us out all the time
at this point i'm reacting with primal rage and have to stop myself from yelling "WHY!?" at all the GitLabs, Sentries, LWNs, Blueskies, and let's not even get started with airlines
yeah it's way lower than WezTerm's (256 vs 2560) and I wonder why. Terminal dot app has also 2560, iTerm 2 has 256. Seems to be something they all set themselves?
Any Ghostty users having the problems with resource limits (on macOS)?
E.g., tox in parallel mode explodes with `OSError: [Errno 24] Too many open files` in Ghostty but works fine in WezTerm. I only see references to Linux cgroups in the docs.
Maybe if you see my pkg you will understand better; Either way request-scope is for some of my apps unacceptable. And there’s also more than web apps. 🤓
Hah so you’re only 50% strict. 🤪 I use READ COMMITTED & I also use read-only transactions for read-only operations. To me having this structured & explicit makes it simpler to reason about… it’s like static types but for databases: it unveiled misconceptions I had about tx behavior
I’m not; I use multiple transactions per session all the time. I just want to be the one starting and ending them and not an attribute access or other weirdness. How can you say you’re strict about them if you allow them to start implicitly? 😅
I mean I wrote a whole package that makes it mechanically impossible to run queries without an explicit tx and I still run into surprises. But at least I realize it because it blows up in tests.
Must be because your statements stand completely at odds with each other to me. My problem is that it’s too easy to accidentally start transactions and you’re replying that you like that because… you use strict tx boundaries? 😅 I thought I had them too until I set autobegin=False.
I wrap my tx such that I have no implicit commits. Every tx that isn’t committed explicitly is rolled back implicitly. But that doesn’t change that the tx interactions are WAY more complicated than when I run execute(select(foo)).one(). It’s additional mental load that trades simplicity for ease
My latest 🤯 was code like this (I’m on a plane so can’t get the IG code, this is simplified):
with sess.begin():
x = session.get(Foo, id=42)
assert 42 == x.id
I guarantee you that a rounded number of 100% of SQLA users don’t realize that the assert starts a transaction.
I guess it’s about how much one cares about dbs & transactional integrity? I don’t want accessing an attribute start a transaction. Ultimately it means that what you thought is one transaction can become… many?… w/o u noticing. To me that’s worst case.
To be clear, I don’t really think this craziness is inevitable for ORMs but I suspect it’s the consequence of first-order thinking it invites to keep your users happy. There is no thought about determinism or reasoning whatsoever. It’s implicit mayhem.