Jumped rope for 72 minutes, 47 minutes in the red zone, 41 minutes listening to Dvorakās Symphony #9.
Thursday, July 9, 2026
One week microblogging with twtxt and I love it. The community is great. Itās truly decentralized and future-proof. Itās simple and easy to just start posting. Iāve pretty much replaced my rss feeds with twtxt follows. Iāve discovered a true hidden gem of the independent web and I canāt go back to microblogging any other way. To everyone contributing to the twtxt ecosystem, thank you! Yāall are doing awesome work.
Interesting, HTTPS is almost twice as slow as plain HTTP on my server (~72 ms vs. ~135 ms):
$ hyperfine -r 50 "curl -so /dev/null 'http://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'"
Benchmark 1: curl -so /dev/null 'http://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'
Time (mean ± Ļ): 72.7 ms ± 17.2 ms [User: 6.2 ms, System: 4.8 ms]
Range (min ⦠max): 49.5 ms ⦠99.7 ms 50 runs
$ hyperfine -r 50 "curl -so /dev/null 'https://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'"
Benchmark 1: curl -so /dev/null 'https://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'
Time (mean ± Ļ): 135.5 ms ± 28.9 ms [User: 17.8 ms, System: 5.6 ms]
Range (min ⦠max): 93.2 ms ⦠198.5 ms 50 runs
@lyse@lyse.isobeef.org Besides, have a look at https://movq.de/v/cf0903ebc3/numb.png again: When it goes from item 9 to item 10, the indentation of the text (after the number) changes. Pretty ugly. In other words, a table of contents should be a table, not a list like it is at the moment. And that would require me to write my own extension for python-markdown ⦠Probably not worth it.
In Magic today, the Phyrexian Invasion failed in the first game, but the second game was EPIC!
I played my (unlisted) Dragons 2: Draconic Boogaloo deck, andā¦
Turn 1: Nothing special
Turn 2: Miirym (when a dragon enters, copy it)
Turn 3: Tiamat (choose 5 dragons from deck, put in hand)
Turn 4: Klauth (when dragons attack, create mana equal to their total power)
I attacked with all 5 dragons, which made 28 mana x2 = 56(!) mana.
Then (still turn 4) I played Scourge of Valkas (when a dragon enters, deal damage to target equal to number of dragons) + 5 other dragons, dealing 6 + 2 x (7+8+9+10+11+12+13+14+15+16+17) = 270(!) direct damage (more than double enough to kill the other 3 players).
Damn fine win, if I do say so myself.
9-year-old me found this on the Fediverse last night:
https://restorationgames.com/thunder-road-ignition-pre-orders-open/
He said it was āradā, and wouldnāt shut up about it until I preordered it.
Now hopefully heāll stop asking for things for a bit so my other ages can have a turnā¦
Oh, nice. In my endeavors of time in C++, I came across cal 9 1752. https://www.redhat.com/en/blog/brief-history-mktime
Upgraded my OpenBSD.Amsterdam VPS to OpenBSD 7.9. My first experience of a song: Diamond in the Rough
I just wanted to look up 9V block battery prices online and these automatically generated descriptions are getting dumber by the minute:
Datum der Erzeugung: Verfallsdatum minus 7 Jahre
(Date of manufacturing: expiration date minus 7 years)
Or look at this one:
Die leistungsstarke 9 V-Block E Batterie, auch 6LR61 genannt, eignet sich besonders gut für Taschenlampen, Radio oder Kinderspielzeug, die einen gleichbleibenden Strombedarf haben. Ihre max. Spannung beträgt 1,5 V.
(The high performance 9 V block E battery, also known as 6LR61, is particularly suitable for torches, radio or childās toys, which have a steady power demand. Its max. voltage is 1.5 V.)
The battery is best suited for⦠devices where it fits. No shit, Sherlock! Has anyboy ever come across 9V block torches? O_o I havenāt.
Typing this on stock Android 9 with the bootloader unlocked and Google apps disabled.
For the first time in years, I managed to get out and throw a round of disc golf. Had a good time playing Vietnam Veterans Park in Kannapolis, throwing +10 over 9 holes, with my only par being thanks to a 40ā āputtā with my MRV. And the weather was perfect.
I hope to play another round soon.
Turns out, I even go down to only 50% quality for my thumbnails: https://lyse.isobeef.org/tmp/galres.txt The difference between 50% and 80/90% is just barely noticeable.
$ convert -strip -quality 50 IMG_20251106_035048_448_size_400.jpg 50-stripped.jpg
$ convert -quality 50 IMG_20251106_035048_448_size_400.jpg 50.jpg
$ ls -lh 50*jpg | awk '{print $5 " " $9}'
26K 50.jpg
25K 50-stripped.jpg
@falsifian@www.falsifian.org Correct, the two smaller versions are loading perfectly fine. The hickup is only for the originals. But in all reality, the middle ones are sufficient for me personally. Please donāt get me wrong, at least for the people photos, the subjects are large enough. The Japanese landscapes, however, would definitely benefit from a bit more detail. ;-)
I just tried it once more, and now, the tree with the sign (/photo/5Zy4pqVIt0oP/IMG_20251106_035048_448.jpg) fully loaded very quickly. Same with the Japanese dish (/photo/tJbmg8oleYbh/IMG_20251030_091719_086.jpg) and shopping center (/photo/qXG5ucIjpPju/IMG_20251029_045002_778.jpg). But the previous and next ones all ran into the same problems again. When Iām very lucky, I eventually get the upper half. Typically not even that much, a third, a fifth, or even less.
Waiting a bit before making an attempt, the wooden walkway through the forest or park (/photo/ojQpDLfBoGN4/IMG_20251023_043829_011.jpg) eventually also made it. But unlike the other successful attempts, it took a long time.
The more photos you add, the more beneficial it might be to separate the index into several different albums. I didnāt measure it, but it felt like 10 to 20 seconds for all the thumbnails to load. That traffic adds up.
Another idea would be to strip the EXIF data from the thumbnails and reducing quality to 90% or even 80%. Using the famous tree with the sign, I cannot tell the difference between the original thumbnail and the 80% quality one. Iām sure it depends on the subject. Here are the numbers:
$ convert -strip IMG_20251106_035048_448_size_400.jpg stripped.jpg
$ convert -quality 90 IMG_20251106_035048_448_size_400.jpg 90.jpg
$ convert -quality 80 IMG_20251106_035048_448_size_400.jpg 80.jpg
$ convert -strip -quality 90 IMG_20251106_035048_448_size_400.jpg 90-stripped.jpg
$ convert -strip -quality 80 IMG_20251106_035048_448_size_400.jpg 80-stripped.jpg
$ ls -lh *jpg | awk '{print $5 " " $9}'
46K 80.jpg
45K 80-stripped.jpg
64K 90.jpg
63K 90-stripped.jpg
132K IMG_20251106_035048_448_size_400.jpg
127K stripped.jpg
$ ls -l *jpg | awk '{print $5 " " $9}'
46160 80.jpg
45064 80-stripped.jpg
65012 90.jpg
63916 90-stripped.jpg
135070 IMG_20251106_035048_448_size_400.jpg
129647 stripped.jpg
@javivf@adn.org.es it was caused by the Falcon 9 rocket launch.
Lab report: Reading a 4th Edition Research Unix tape image on Plan 9 ā http://a.9srv.net/reports/index.html#v4
@movq@www.uninformativ.de I shrank Day 9 Part 2 from ācover the whole mapā to āonly track the interesting lines.ā By compressing coordinates to just the unique x/y breakpoints, the grid got tiny. I still flood-fill and do the corner-pair checks, but now on that compact grid with weighted prefix sums for instant rectangle checks. Result: far less RAM, way less CPU, same correct answer.
Day 9 also required some optimizations, if you arenāt careful, you end up with really inefficient algorithms with time/memory complexity beyond what a typical machine has š¤£
Ooops, Iāve run into a bug or limitation with mu for Day 9 š¤
Awk to take lines from Plan 9ās /lib/unicode and prepend the actual glyph and a tab: awk ā{cmd=sprintf(āunicode %sā, $1); cmd | getline c; printf(ā%s %s\nā, c, $0)}ā
Apples
ā Read more
Day 2 was pretty tough on my old hardware. Part 1 originally took 16 minutes, then I got it down to 9 seconds ā only to realize later that my solution abused some properties of my particular input. A correct solution will probably take about 30 seconds. š«¤
Part 2 took 29 minutes this morning. I wrote an optimized version but havenāt tested it yet. I hope itāll be under a minute.
Python 1 feels really slow, even compared to Java 1. And these first puzzles werenāt even computationally intensive. Weāll see how far Iāll make it ā¦
Fark me š¤¦āāļø I woke up quite late today (after a long night helping/assisting with a Mainframe migration last night fork work) to abusive traffic and my alerts going off. The impact? My pod (twtxt.net) was being hammered by something at a request rate of 30 req/s (there are global rate limits in place, but stillā¦). The culprit? Turned out to be a particular IP 43.134.51.191 and after looking into who own s that IP I discovered it was yet-another-bad-customer-or-whatever from Tencent, so that entire network (ASN) is now blocked from my Edge:
+# Who: Tentcent
+# Why: Bad Bots
+132203
Total damage?
$ caddy-log-formatter twtxt.net.log | cut -f 1 -d ' ' | sort | uniq -c | sort -r -n -k 1 | head -n 5
61371 43.134.51.191
402 159.196.9.199
121 45.77.238.240
8 106.200.1.116
6 104.250.53.138
61k reqs over an hour or so (before I noticed), bunch of CPU time burned, and useless waste of my fucking time.
@lyse@lyse.isobeef.org @bender@twtxt.net Pfft, they want folks to relocate to Sydney. Fuck that 𤣠Sydney is a bit like San Francisco, Iām not actually sure which is worse. Fuckān expensive as hell, the only palce youād be able to afford to buy or rent is at least ~2hrs out of the city by public transport (i.e: train) and by that time youāve just pissed your life down the toilet, because youād be expected ot work a 9-10hr day + 2-3hrs of travel each way, buy the time you factor in having to wake up super early to get ready to travel in to work, you basically have zero time for anything else, let alone your ufamily,
Fuck that.
Metric Tip
ā Read more
Inflatable Fall Crow in Cobble Hill ?~L~X https://thenewleafjournal.com/b/9_g
nicks? i remember reading somewhere whitespace should not be allowed, but i don't see it in the spec on twtxt.dev ā in fact, are there any other resources on twtxt extensions outside of twtxt.dev?
@zvava@twtxt.net Good question. This is the spec, I think:
https://twtxt.dev/exts/metadata.html#nick
It doesnāt say much. š¤
In the wild, Iāve only seen ātraditionalā nick names, i.e. ASCII 0x21 thru 0x7E.
My client removes anything but r'[a-zA-Z0-9]' from nick names.
Interesting! The Great Firewallās leak from 11.9.2025.
we are now parsing and recursively fetching remote feeds somewhat successfully, gotta work on the media proxy and markdown way more, so so many fucky edgecasesā¦.my friendās feed with like four posts parsed correctly so i tried this accountās feed and well now im not going to bed on time
search page, bookmarks page, improved thread view (that i will probably improve further), as well as a logo and a whole ui redesign. it is truly all coming togetherā¦were i to mark any items off the roadmap :p
replies and following implemented! next step is further parsing of post contents, rendering threads, and then maybe i can finally start adding remote feedsā¦! though i kinda wanna redo the whole ui ^^ā
really proud of how bbycll is coming along!!
Posted from a 2002 PowerBook G4 Titanium 1GHz running Mac OS 9! :)
June 21st, 1789 - The Constitution for the United States of America is ratified, with New Hampshire becoming the ninth state to ratify. Article I, Sections 9 and 10 of the Constitution contain provisions which clearly prohibit the federal government and the states from granting titles: āNo title of nobility shall be granted by the United States: and no person holding any office of profit or trust under them, shall, without the consent of the Congress, accept of any present, emolument, office, or title, of any kind whatever, from any king, prince, or foreign State. No State shall enter into any treaty, alliance, or confederation; grant letters of marque and reprisal; coin money; emit bills of credit; make anything but gold and silver coin a tender in payment of debts; pass any bill of attainder, ex postfacto law, or law impairing the obligation of contracts, or grant any title of nobility.ā However, no penalty for violating the Article is specified.
@kat@yarn.girlonthemoon.xyz after 5 years or so with Linode, I started having littleābut annoyingāissues with them. Moved to Vultr and have been very happy with them since Ubuntu 16.04, so 9 years, and a little bit more.
Global update: Trump in Scotland says EU trade deal has 50-50 chance as tariff row grows. Gaza sees 9 more starvation deaths (122 total); UN says famine is deliberate. Thai-Cambodia clashes kill 16, displace 135k. US raid in Syria kills top ISIS leader & sons.
@movq@www.uninformativ.de According to this screenshot, KDE still shows good old application icons: https://upload.wikimedia.org/wikipedia/commons/9/94/KDE_Plasma_5.21_Breeze_Twilight_screenshot.png
And GNOME used to have them, too: https://upload.wikimedia.org/wikipedia/commons/9/9f/Gnome-2-22_%284%29.png
I like the looks of your window manager. Thatās using Wayland, right? The only thing on this screenshot to critique is all that wasted space of the windows not making use of the full screen!!!1 At least the file browser. 8-)
This drives me nuts when my workmates share their screens. I really donāt get it how people can work like that. You canāt even read the whole line in the IDE or log viewer with all the expanded side bars. And then thereās 200 pixels on the left and another 300 pixels on the right where the desktop wallpaper shows. Gnaa! Thereās the other extreme end when somebody shares their ultra wide screen and I just have a āregularishā 16:10 monitor and donāt see shit, because itās resized way too tiny to fit my width. Good times. :-D
Sorry for going off on a tangent here. :-) Back to your WM: It has the right mix of being subtle and still similar to motif. Probably close to the older Windowses. My memory doesnāt serve me well, but I think they actually got it fairly good in my opinion. Your purple active window title looks killer. It just fits so well. This brown one (https://www.uninformativ.de/blog/postings/2025-07-22/0/leafpads.png) gives me also classic vibes. Awww. We ran some similar brownish color scheme (donāt recall its name) on Win95 or Win98 for some time on the family computer. I remember other people visting us not liking these colors. :-D
@movq@www.uninformativ.de Interesting internal education sessions are way too infrequent here as well. There are a bunch of āknowledge transferā meetings actually, but 90% of the topics already sound totally boring to me. The other 9% talks turned out to be underwhelming, sadly. I only attended a single one where it was delivered what has been promised. Theyāre all talks, not real hands-on trainings like you did.
Once a year the security guys organize a really great hacking event, though. Teams can volunteer to hand in their software dev instances and all workmates are invited to hack them and report security vulnerabilities. Thatās a lot of fun, but also gets frustrating towards the end when you donāt make any progress. :-) Thereās also some actual hands-on training in advance for preparation of the two days. Unfortunately, I missed the last event due to my own project being very stressful at the time.
When I had a Do What You Want Day I also show my direct teammates what I learned in the hopes of this being interesting to them as well. Iām the only one in my team using this opportunity, sadly.
#meteo Il est 9:30, 28°C. Ća va donner.
Saw this on Mastodon:
https://racingbunny.com/@mookie/114718466149264471
18 rules of Software Engineering
- You will regret complexity when on-call
- Stop falling in love with your own code
- Everything is a trade-off. Thereās no ābestā 3. Every line of code you write is a liability 4. Document your decisions and designs
- Everyone hates code they didnāt write
- Donāt use unnecessary dependencies
- Coding standards prevent arguments
- Write meaningful commit messages
- Donāt ever stop learning new things
- Code reviews spread knowledge
- Always build for maintainability
- Ask for help when youāre stuck
- Fix root causes, not symptoms
- Software is never completed
- Estimates are not promises
- Ship early, iterate often
- Keep. It. Simple.
Solid list, even though 14 is up for debate in my opinion: Software can be completed. You have a use case / problem, you solve that problem, done. Your software is completed now. There might still be bugs and they should be fixed ā but this doesnāt āaddā to the program. Donāt use āsoftware is never doneā as an excuse to keep adding and adding stuff to your code.
This is one of my attempts: 
$ go build ./cmd/xor/... && ./xor
Generation 95 | Fitness: 0.999964 | Nodes: 9 | Conns: 19
Target reached!
Best network performance:
[0 0] ā got=0 exp=0 (raw=0.000) ā
[0 1] ā got=1 exp=1 (raw=0.990) ā
[1 0] ā got=1 exp=1 (raw=0.716) ā
[1 1] ā got=0 exp=0 (raw=0.045) ā
Overall accuracy: 100.0%
Wrote best.dot ā render with `dot -Tpng best.dot -o best.png`
@movq@www.uninformativ.de Only 99.9% pfffft š¤£
.(s) / dot(s) like @eapl.me are valid? š¤ Or nicks even? š¤
on timeline the mention looks OK. Is there an issue on Yarn?
Itās an interesting topic. For example on Bsky itās natural to allow domains https://bsky.social/about/blog/4-28-2023-domain-handle-tutorial
Although TwiXter only allows (letters A-Z, numbers 0-9 and of underscores)
https://help.x.com/en/managing-your-account/x-username-rules
Regex Isnāt Hard - Tim Kellogg š this is a pretty good conscience article on regexes, and I agree, regex isnāt that hard⢠ā However I think I can make the TL;DR even shorter š
Regex core subset (portable across languages):
Character sets
⢠a matches āaā
⢠[a-z] any lowercase
⢠[a-zA-Z0-9] alphanumeric
⢠[^ab] any char but a or b
Repetition (applies to the preceding atom)
⢠? zero or one
⢠* zero or more
⢠+ one or more
Groups
⢠(ab)+ matches āabā, āababā, ā¦
⢠Capture for extract/substitute via $1 or \1
Operators
⢠foo|bar = foo or bar
⢠^ start anchor
⢠$ end anchor
Ignore nonāportable shortcuts: \w, ., {n}, *?, lookarounds.
MacSSL: a port of Mbed-TLS for the classic Mac OS 7/8/9
Yesterday we had SDL2 for the classic Mac OS, today we have modern SSL/TLS for the classic Mac OS. This is a C89/C90 port of MbedTLS for Mac System 7/8/9. It works, and compiles under Metrowerks Codewarrior Pro 4. This is a basic app that performs a GET request on whatever is in api.h, and prints the result out to the text box (with a lot of debug information, of course). The idea of this project was to build an āappā of ⦠ā Read more
@anth@a.9srv.net Hahaha, for a second I thought that you implemented word splitting according to Swiss (.ch) rules. :-D
Btw, both manpage links string(2) and getields(2) (itās missing an f) point into nothingness: http://a.9srv.net/src/wordwrap.2.html
I canāt help but notice line 9: http://a.9srv.net/src/wordwrap.c
And I reckon your finger slipped one key to the right for quore: http://a.9srv.net/src/litclock.1.html
Cool stuff! :-)
SDL2 ported to Mac OS 9
Well, this you certainly donāt see every day. This is a ārough draftā of SDL2 for MacOS 9, using CodeWarrior Pro 6 and 7. Enough was done to get it building in CW, and the start of a āmacosclassicā video driver was created. It DOES seem to basically work, but much still needs to be done. Event handling is just enough to handling Command-Q, there is no audio, etc etc etc. ā« A cast of thousands The hardest part was a video driver for the classic Mac OS, which had to be created mostly f ⦠ā Read more
