@movq@www.uninformativ.de It was nice at around 5 o’clock on the balcony with just 22°C and the tiniest breeze. But I got eaten alive. Fucking mozzies.
@lyse@lyse.isobeef.org It was around 29 °C for a while inside and pretty nice on the balcony, but that’s over now. 🤣
@movq@www.uninformativ.de 26°C inside, 30°C outside right now.
Speaking of vim… Which version of vim should I ship with GoNIX? 🤔 Vim or Neovim or something else?
Other than the few Unicode issues I mentioned recently, vim-classic works just fine. I completely forgot that I switched to it.
Starting the day with 32 °C inside and absolutely no cooling from the outside.
@bender@twtxt.net I know heat (I’ve been to Southeast Asia, for example – or Florida 🤣), but you’re right, it does hit very differently when it’s at home. “At home” is usually the cool and relaxed place, but now it’s hell. And no AC anywhere in sight.
Wer „Feuer und Flamme – Mit Feuerwehrmännern im Einsatz“ geil findet, dem gefällt sicher auch „In höchster Not – Bergretter im Einsatz“ vom Bayerischen Rundfunk. https://www.ardmediathek.de/serie/in-hoechster-not-bergretter-im-einsatz/staffel-1/Y3JpZDovL2JyLmRlL2Jyb2FkY2FzdFNlcmllcy9GMjAyNFdPMDA0MjM3QTA/1
@thecanine@twtxt.net Oh, I’m absolutely bad with videogames. Never heard of that one.
@bender@twtxt.net Please, mate, keep the heat to yourself! I don’t wanna trade that. ;-)
@lyse@lyse.isobeef.org so pretty! Ah, the anticipation of an incoming heat wave! Now you guys have a small glimpse of what we live with here almost every single day. 😅
@lyse@lyse.isobeef.org Thanks! You had one of the strangest guesses so far, first one I had to look up. 😄 It is a reference to a (human) cop/detective, from a 2019 videogame. Since there’s no spoilers tag on Twtxt, the name of the file on my site, includes the correct answer.
@movq@www.uninformativ.de Oh my! :-O We reached 38°C. It’s now down one degree.
I just got up from my two, three hours siesta. And I tell you, that was bloody amazing. Layed in bed in undies, no blanket, just some power metal in my headphones and I was sleeping like a baby. Normally, I NEED a blanket, no matter what. But this summer, it’s already the second time that I actually manage to drop off without one.
We’re at 39.5 °C now. Are we going to hit 40? https://movq.de/v/43544d5385/2026-06-27–14-12.webp
box (command-line container runtime). It works great 👍
@prologic@twtxt.net (I haven’t checked out CEF recently. Back then (over 10 years ago), just using a GTK widget was certainly much easier than CEF. 😅)
box (command-line container runtime). It works great 👍
@movq@www.uninformativ.de CEF turns out to be pretty easy. I had to write a bit of C and Go to bridge, but once that got going I was able to write it into my pure Go go-wayland wlui library for final rendering. The delegating the entire CEF part was a good idea though because it keeps all the complexity in a container Image, leaving me with just the Go + C stubs/interface and SHM/IPC parts.
box (command-line container runtime). It works great 👍
@prologic@twtxt.net Ah, the joy of making your own browser – welcome to the club. 😃 (I chose WebKitGTK back then and that was not super compatible with websites … CEF would have been better, but also harder to use.)
So I decided to change tact a bit with GoNIX and instead of trying to build apure Go browser from scratch (which I kinda of half succeeded, in at least it was able to render most static ssr sites), I’ve instead decided to write a new browsered using the Chromium Embedded Framework, otherwise known as CEF. So now I have a fully working browser in GoNIX 🎉 – However since my goal is to keep GoNIX pretty lcean and mostly written in Go, I delegated the cef part(s) to an OCI container image and run that with GoNIX’s box (command-line container runtime). It works great 👍
@movq@www.uninformativ.de Oooph! Web development is tidious.
I also include width and height from now on in my galleries.
@movq@www.uninformativ.de I second that!
@lyse@lyse.isobeef.org I noticed that loading="lazy" might not be so great after all.
This is without lazy loading:
https://movq.de/v/1ea351add4/s.png
The total page load time is around 400-500 ms. Okay.
Now this is with lazy loading:
https://movq.de/v/9708e1afff/s.png
It finished much quicker, after about 250 ms. Sounds good.
But notice this gap right here?
https://movq.de/v/96645a7a75/s.png
This wasn’t there before. With lazy loading, it now takes something like 80-100 ms until the browser even starts loading images. This is Chromium, but Firefox shows a similar gap.
The net result is that there is a very noticeable delay/flicker when you open a page, because it takes so long until the images have loaded. Yes, the layout doesn’t shift around, but that has nothing to do with lazy loading.
How odd. 🤔
@movq@www.uninformativ.de I see. I just use CDATA (and still have the XHTML trailing slash for <img … />). But of course, it also has its drawbacks: https://waspdev.com/articles/2026-05-11/avoid-using-cdata-in-rss I might just move away from it.
Everything is a web service these days. :-/
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 Oh my god, there’s nothing that CSS can’t do, eh? 😳 Crazy stuff.
Okay, I’m using the “official” validator now:
https://github.com/w3c/feedvalidator
That repo is supposed to be a website/webservice, though. The feedvalidator directory contains the actual validator. I’m using this wrapper on top: https://movq.de/v/94b5b8978c/
@lyse@lyse.isobeef.org Putting HTML into the feed. It should be XHTML. 🤪 (I used <img ...> instead of <img .../>.)
@lyse@lyse.isobeef.org Nice! (But if you ask me, a day without sun would a welcome change. 🤣)
@movq@www.uninformativ.de Congrats, how did you break it? :-)
Damn, I broke my Atom feed (and a reader let me know, that’s cool!).
I run vnu on all HTML and CSS files after each build of the website, but I don’t run a feed validator. 😬 Time to change that.
🎶 矢野顕子+坂本龍一【連弾】Water Ways Flow Backward Again (1986.11.23.)https://www.youtube.com/watch?v=Gk_tRnnMFx0
Today’s sunrise: https://lyse.isobeef.org/morgensonne-2026-06-27/01.jpg
@movq@www.uninformativ.de Good idea, I should probably do the same for my photo galleries.
@movq@www.uninformativ.de Yes, that’s what I was thinking, too. For a moment, I wanted to suggest to use <ol> instead of <ul> to fix that. However, that’s only gonna work for the first level, but subsections then miss their parent level.
And it turns out that I was wrong. At least sort of. There are some CSS tricks to fix it: https://stackoverflow.com/a/26243681 Of course, with text or retro browsers, this is not gonna fly.
I also came across this interesting article. I just skimmed it and it’s about real tables of contents with page numbers, so not what you have in mind, but cool nevertheless: https://css-tricks.com/a-perfect-table-of-contents-with-html-css/
I complain about this a lot:
https://movq.de/v/e7cb49eefb/hiccupfx
But to be honest, my blog did the same thing – to some degree.
This is fixed now. The trick is to add width and height to all <img> tags. That way, modern browsers know how much space to reserve for the image. Without this, they just reserve zero space, so when the image finally loads, you get jumpy layout.
This effect is even worse when you use <img loading="lazy"> – which I can finally use, now that the jumpy layout has been fixed. 🥳
@lyse@lyse.isobeef.org It was a wild ride for sure. 😂
@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.
@lyse@lyse.isobeef.org Mhm, yeah … I’ll probably not do it. Just keeping the numbers out of the anchors would be pretty hacky, I guess.
@movq@www.uninformativ.de Oh my goodness, what an adventure, hahaha! :-) https://movq.de/blog/postings/2026-06-25/0/POSTING-en.html
@movq@www.uninformativ.de I reckon section numbers are not really needed for articles. But if you number them, the anchors should probably not contain the section number, just the title. Especially for articles that may receive updates.
It’s probably another story for specifications. They’re kinda fixed and thus I found it useful in the past to include the section numbers in the anchors, so they show up in URLs when linking to specific sections. W3C RFCs only include the numbering in the anchors. This makes URLs fairly short, but it would be also nice to directly see what kind of section that URL actually links to.
@thecanine@twtxt.net I don’t know if the Dinosaurs TV series is a meme, but this cute thing surely reminds me of that.
date := time.Date(2026, time.June, 19, /**/ 17, 0, 0, 0, time.UTC) the most. 🤔 (My only gripe with this is that it isn’t obvious whether the third 0 is milli-, micro- or nanoseconds. These days it’s probably nanoseconds, but you never know.)
@movq@www.uninformativ.de Right. A Go programmer eventually knows that its nanoseconds precision. Keyword arguments like in Python are just sooo superior to unnamed positional arguments. I wish that Go had them, too.
@movq@www.uninformativ.de It’s working fine. I can still read your messages. :-)
Unslop — https://dbohdan.com/unslop
Numbered headings in blog posts, yay or nay?
Biggest problem of having them: Links to section anchors (like bla.html#my-first-section) will break if I add a section later on. 🤔
@itsericwoodward@itsericwoodward.com This will never end. Chat control in the EU is back as well, it seems. 🙄
@bender@twtxt.net Yeah, that would be good, it only supports gzip, though. 🥴
Oh, that‘s sad, Om Malik was one of those writers I read again and again. Rest in peace. https://om.co/2026/06/24/1966-2026/
Great, another privacy-destroying bill in the name of “child safety”… Must be a Thursday.
https://www.eff.org/deeplinks/2026/06/kids-act-would-require-age-checks-get-online
Finally finished another meme one, I always wanted. It took forever, to get it right, so I really hope people get the reference.

We went to the source of the river Fils this evening. I couldn’t believe it, but as I was promised, there were just 20°C. That was super nice. Almost chilly. We only met two others with their three dogs right at the beginning and had everything to our own. We enjoyed the firefly and bat show on a bench. Now back in town and the temps are cooking at 27°C. Fuck me!
It was already fairly dark for my camera, so all the photos are even more blurry than usual. Sorry!
https://lyse.isobeef.org/filsursprung-2026-06-25/
06 shows the bench in the background. The source is next to the building under the trees. 07 shows it in its full glory. 08 is the view before the glowing show began.