# Learn more about twtxt: # https://twtxt.readthedocs.io/en/stable/ # https://www.uninformativ.de/twtxt-mention.html # # nick = movq # url = https://www.uninformativ.de/twtxt.txt # avatar = https://www.uninformativ.de/avatar.png#20220224 # # For out-of-band replies: `echo ed.vitamrofninu@txtwt | rev` # # If you're on an older device that doesn't support modern crypto, you # can also use HTTP: # url = http://www.uninformativ.de/twtxt.txt # # This file is available via Gopher, too: # url = gopher://uninformativ.de/0/twtxt.txt # However, since Gopher has no concept of user agents or any kind of # headers, I will not be able to see that you're following me and, thus, # will not be aware of any replies or mentions that you send. Please # either use the HTTP(S) feed or drop me an email. :) # # Legacy, don't use: # nick_alias = vain # # prev = ew5gzca twtxt-old_2022-01-14_ew5gzca.txt 2022-01-14T20:33:42Z And there it is: Another rotation of this feed.

(Yeah, 100 lines is quite low.)

I bet you guys already implemented retrieving archived feeds! :-) 2022-01-14T20:55:57Z (#apjuyca) @ Yes, it’s too low. I guess I’ll still keep it that way for a little while longer, just to make sure that the code works as expected. :-) Maybe some new corner cases show up. But eventually, I’ll increase the threshold. 2022-01-14T21:02:11Z (#5ldd3qq) @ It’ll soon be time to cancel the subscription, I guess. The price has already increased by 44% since I created my account in February 2015. In total, I have now paid 896.37 Euro for Netflix, which, frankly, is insane. (This is the first time that I checked it. I wasn’t aware of this until now.) 2022-01-14T21:10:56Z (#apjuyca) @ You don’t. A `next` field was discussed in the original draft, but then it was discarded. It’s easier to implement without it and you don’t really need it for *automated* feed retrieval. For manual retrieval, though, it would have been helpful.

It was probably discussed in [the pull request](https://git.mills.io/yarnsocial/yarn/pulls/494) – or in some twtxt thread, which I can’t find anymore. 🥴 2022-01-15T10:12:41Z (#jedlgdq) @ I guess “LOL 12pm is 12pm 😂” is the international equivalent of: „Natürlich ist ‚Viertel neune‘ 20:15 Uhr, was dachtest du denn?!“ 🤣🤣🤣 (Nobody but @ will get this, but I don’t care! 🤣) 2022-01-15T15:20:15Z (#jedlgdq) @ Hier heißt’s „viertel nach acht“ (20:15 Uhr), „halb neun“ (20:30 Uhr) oder „viertel vor neun“ (20:45 Uhr). 🥴 Also Rundung hin zur nächstliegenden (aber nicht „nachfolgenden“) vollen Stunde und dann noch ein explizites „vor“/„nach“. Ein „viertel neun(e)“ gibt’s hier nicht und da kommt dann die Konfusion her, weil das für uns irgendwie eine unvollständige Zeitangabe ist. „Viertel neune“ wird also nicht zwangsläufig als 21:15 Uhr aufgefasst – als Kind dachte ich immer, es sei 20:45 Uhr (gemäß „viertel *vor* neun“) gemeint. 😅 Also für uns gäbe es halt „viertel vor neun“ (20:45 Uhr) oder „viertel nach neun“ (21:15 Uhr) und dementsprechend perplex sind die Leute dann, wenn du ihnen sagst, es sei 20:15 Uhr gemeint („wo ist da jetzt die 9?!“).

Kuchenanalogie: „Viertel vom Kuchen ist weg.“ „Viertel vom Kuchen ist noch da.“

Wie ist das eigentlich mit „zwanzig nach acht“ und „zwanzig vor acht“? Ich hab’ noch nie jemanden sowas wie „drittel sieben(e)“ für 18:20 Uhr sagen hören. Oder „zwei drittel sieben(e)“ für 18:40 Uhr?! 🤔 🤪

Ganz ehrlich: Meistens spreche ich es explizit aus, also „18 Uhr 15“ o.ä. Vermeidet Missverständnisse. Und liegt vielleicht auch daran, dass ich’s meistens mit Digitaluhren zu tun hab’, bei denen das mit dem Runden irgendwie nicht so naheliegend ist wie bei einer Analoguhr. ⌚

(Lustiges Thema. 🤣) 2022-01-16T08:18:37Z (#fcyxb6a) I don’t quite understand how Flatpak/Snap is supposed to solve anything. That isn’t the issue at all, from my experience. If you make proprietary software, you can just bundle all your dependencies or link stuff statically. I’ve been playing some (commercial, proprietary) games from the late 1990ies / early 2000s that follow this simple approach (they had official Linux versions – maybe “The Year of the Linux Desktop” has already passed 🤪). They worked like a charm – *UNTIL* something related to drivers changed. And now they just crash. 🤦 (In other words, they worked fine for about 20 years, which is pretty good if you ask me. You have similar problems on Windows.) 2022-01-16T08:22:07Z (#dialauq) @ Member the days when the browser wouldn’t display the web site until it had fully loaded? 🤣 2022-01-16T10:16:35Z (#rufivnq) @ Looks like regular afterglow, we have that all the time. Interesting that you call it “strange”. 🤔 Now I’m curious, maybe this phenomenon is rare when you’re closer to the equator? 🤔 2022-01-16T14:14:44Z (#qufqx3q) @ Lol, this is Florida, right? Exactly as I remember it! 🤣 We went there once when I was a kid and those heavy rains were … impressive. 🤣 2022-01-16T14:17:20Z (#td3sonq) @ For certain creatures, holy water works like sanitizer. 😈 2022-01-16T14:29:19Z I am somewhat tempted to rewrite jenny in Rust. 😈 2022-01-16T15:12:51Z When life gives you lemons, make lemonade. Or buy lemons and make lemonade. The point is to make lemonade. ![](https://movq.de/v/475df57c19/s.png) 2022-01-16T15:39:54Z (#td3sonq) @ Ha! Now *that’s* the good Holy Water! 😂 2022-01-16T16:04:39Z (#cwjkbgq) @ Ahh, right, the green ones. I don’t think my store sells them. 🤔 I’ll check next time. 😅 2022-01-16T16:05:27Z (#qiyw73q) @ 3°C, windy, raining/snowing. I’ll stay inside. 🥶 2022-01-16T16:22:36Z (#cngh76a) Nevermind. Won’t happen. I’m not able to find an HTTP client library for Rust which does *not* pull in an *insane* number of dependencies. 2022-01-16T16:22:59Z (#cngh76a) Rust might be interesting as a language, but its ecosystem is a total clusterfuck. 2022-01-16T17:59:24Z (#p222heq) @ I’m not a web dev and I don’t know NodeJS at all. Can’t compare these two. I’ll give you an anecdote: I once tried to find a library to parse command line arguments (something like [getopt](https://en.wikipedia.org/wiki/Getopt)) and eventually gave up on it due to all the deps they pulled in. Most people appear to be using `clap`. This is what it looks like when you compile the most basic example: https://movq.de/v/3ffe9bec70/claptest.txt Just for parsing command line options? Really?

And this is what it looked like when I was trying to compile a simple HTTP client using `reqwest` (which appears to be the most popular library): https://movq.de/v/3ffe9bec70/reqwesttest.txt Oof. How am I supposed to keep track of all of that?

The Rust standard library *aims to be small*. This means that a lot of things *must* be external libraries. (This is in stark contrast to Python, for example. You might have seen this: https://xkcd.com/353/) That explains why the `chrono` library for doing date and time stuff exists – but it doesn’t explain everything.

My theory is: Since Rust has its own package management which makes it easy to publish and use packages, well, people do just that. A lot. Including pointless (IMHO) stuff like the following (got these from the log outputs above):

- https://crates.io/crates/itoa (converting integers to string, because the standard library is too slow?)
- https://crates.io/crates/ryu (same for floats)
- https://crates.io/crates/lazy_static (instantiate static values only when you need them, because ... well, why?)
- https://crates.io/crates/matches (`if` is not enough?)
- https://crates.io/crates/smallvec (the performance penalty for using the standard library’s `Vec` with just a few elements must be horrible)
- https://crates.io/crates/memchr (again, why not improve the standard library?)

The list goes on and on. 2022-01-16T18:52:17Z (#p222heq) @ Lol, I hadn’t seen that one. What the heck. 2022-01-16T18:53:45Z (#cwjkbgq) @ One lemon per glass. I cut it in half, squeeze it into the glass, eat the remains. 🤪 And then fill up the glass with water. 🥳 2022-01-17T14:22:26Z (#cngh76a) @ That’s good to hear. I’ll start experimenting with Go. I don’t think Rust has a future (for me). 2022-01-18T14:58:28Z (#jz6y7sa) @ Hahaha, how funny/ironic that the original article complains about crazy dependency chains in Golang! 🤣 2022-01-18T17:43:33Z (#zmogdbq) @ 😩 I’m not into gaming anymore, but don’t they already have enough power … Yeah, yeah, I know the answer to that question. 2022-01-18T17:45:50Z I’ll have a nice bowl of salad now and go watch another episode of [Forbrydelsen](https://en.wikipedia.org/wiki/The_Killing_(Danish_TV_series)) 👌 📺 2022-01-18T18:29:53Z (#2vrdexa) @ Hmm, that might be a different version. There has been a remake for the US market. I’ve never seen that one, it’s also a different story. 🤔 2022-01-18T18:39:57Z (#cngh76a) Alright, this one appears to be better:

https://crates.io/crates/ureq

It’s still much heavier than I was hoping for, but I can’t spot any transitive dependencies in there which are complete nonsense.

The sad truth is, HTTP *is* heavy. All this stuff has to be implemented somehow, if you want to be compliant. And TLS has to be implemented as well. 😮‍💨 2022-01-19T15:26:09Z (#jz6y7sa) @ Yeah, it’s important to keep that in mind. We often wonder why things are the way they are – when all we needed was a little bit of context and history. 👌

The original article – while being a rant – highlights one aspect that I like the most about Rust: They at least *try* to be correct. Instead of going down the route of “meh, it’s probably fine”, the Rust guys confront you with error cases and corner cases and all that. Nobody is perfect, but they at least *try*.

This is something that I miss a lot. I’ve spent way too much time with scripting and that “90% is good enough” rule. Maybe this is just a phase, maybe I’ll grow out of it. 🤣 But at the moment, that focus on correctness is very refreshing. 2022-01-19T15:28:20Z (#bwsglma) @ Ah, look at that. Lots of twtxt users in Gemini space. 🤯 Does that mean I should extend my client? It doesn’t speak gemini:// at the moment. 😢 2022-01-19T15:45:35Z (#bwsglma) @ Nah, probably not. But if there’s interesting stuff over there, then I’d like to see it. That’s all. 😊 2022-01-19T17:29:58Z Alright, I’m sold on [clippy](https://github.com/Manishearth/rust-clippy). 👌 2022-01-19T18:40:34Z (#2hkv6va) @ … “knitting yarn”? Just “knitting”? We need a native speaker here! 😅 2022-01-19T18:49:05Z (#bwsglma) @ @ Well, I guess I’ll investigate adding Gemini support. 🤔 I’m reading benk’s feed manually in lagrange at the moment. 😅 2022-01-19T19:00:30Z (#cvpm46a) @ It doesn’t and I’m very happy about that. 🤣 Bwahah, the age of Clippy was a very weird time … 2022-01-19T19:01:10Z (#2hkv6va) @ 🤣 2022-01-19T20:36:46Z (#bwsglma) Too bad that Gemini – just like Gopher – has no concept of a “user agent”. So nobody will know when I’m following them.

It really is a bit annoying that twtxt uses this “hack”. There are other similar hacks that work regardless of the protocol, like just doing a dummy request such as `gemini://kwiecien.us/twtxt.txt:movq:$my_feed_url` or something. Yes, that will result in an error, but, well, it would show up in a log, just like that user agent thingy …

(I don’t see a way to cleanly solve this without additional headers.) 2022-01-19T20:37:45Z (#bwsglma) FWIW, I implemented a simple Gemini client now. It doesn’t do TOFU yet and I’m not very motivated to implement support for client certs. How common are those in Gemini space? 2022-01-20T14:59:16Z (#gjiuaza) @ Gopher support has existed from the start. 🤓 2022-01-20T15:00:08Z (#n252jtq) @ I’ll check that out at the weekend. 👌 2022-01-20T15:00:32Z (#bwsglma) @ I might do just that. At least for the first version. 👌 2022-01-20T15:03:30Z (#dwh5mka) @ I read about that. The german government has been trying to do DNS-based blocking since something like 2009 („Zensursula“) and apparently they now try again on an EU level. It’s horseshit and everyone is tired of it. And that’s their goal: Make everyone tired, until there’s no fighting anymore. 🙄 2022-01-20T16:51:21Z (#dwh5mka) @ Lol, but you have to admin that’s a cute robot. 🥴 🤖 2022-01-20T16:56:10Z (#dwh5mka) @ Probably close to zero – until they make it mandatory. It’s the first step towards something like a “EU Internet”.

Hey, that’s our chance! When they have finally destroyed the Internet, we build something new. That’s our chance for a clean start and to get rid of all the historical baggage.

*sigh* 2022-01-20T17:22:01Z Had to deal with lots of Microsoft stuff today at work. Am now questioning my life choices. Maybe I should start living in a buddhist monastery or something. 🤔 2022-01-20T17:48:14Z (#7cvnqba) @ FWIW, I updated the [blog post](https://www.uninformativ.de/blog/postings/2021-09-19/0/POSTING-en.html) about jenny. It was a bit outdated.

(Eventually, I won’t update that blog post anymore. The README files are the primary source of truth. It’s just that this blog post is still almost at the top on my page, so …) 2022-01-20T18:00:12Z (#nhelsza) @ Azure was actually one of those things I came in contact with today. 🙈 🙊

@ To be fair, Windows 95 thru XP only feel nice *today*. When I switched from Windows 3.1 to 95, it felt horribly bloated. 🤣 But hey, it was pretty good at [playing videos](https://www.youtube.com/watch?v=iqL1BLzn3qc). 2022-01-20T18:01:55Z (#gjiuaza) @ God, no. 🤣 2022-01-20T20:08:53Z (#nhelsza) @ Yeah, that’s how I remember it. What I *think* to remember rather vividly was being stumped by that new “registry” thingy. “Why are they trying to take our good old INI files away? 😢” But you’re totally right, it was a really long time ago, so it’s quite possible that I’m mis-remembering. 😅 (Or maybe I’m projecting my today’s views/feelings on those old things …) 2022-01-20T20:27:36Z (#3du5uaq) @ It’s still there, it’s the “Clean up mail bodies” item. 2022-01-21T13:47:13Z (#gjiuaza) @ Fun fact: I set up new FTP stuff at work today. It was the easiest way to transfer files from a Windows machine to a Linux box. 2022-01-21T13:49:00Z (#yf6xs4q) The one who asked was me. 🥴 It works fine in gemini clients like lagrange, but gnutls and openssl both complain about abnormally terminated connections. Will have to investigate. 2022-01-21T14:41:30Z (#mju3mga) @ I am indeed serious. 😅

I wanted to spent as little time as possible with this Windows machine. Also, I didn't want to introduce any new maintainence burdens. Using *any* third-party software would have caused the latter. 😢

PowerShell/Windows has a built-in FTP client. Basically this:

https://stackoverflow.com/questions/1867385/upload-files-with-ftp-using-powershell/1868367#1868367k

(I tried to use ftp.exe first, but that thing doesn't support passive FTP, which we need.)

The FTP *server* already existed anyway. (You don’t want to know why.)

Missing transport encryption aside (this runs in our internal network only, so it’s okay-ish to accept), I don’t think this is the worst solution, to be honest. 2022-01-21T14:53:10Z (#gjiuaza) @ I admit, I forgot about WinSCP. 😅

Still, it’s a third-party tool and we’d prefer to use built-in stuff. Any third-party tool means we have to keep track of updates/patches/security issues and we have to add more documentation (where is that tool from, how do you install it, how do you configure it, …).

*Maybe*, with WSL, we could have built something based on SSH. I have zero experience with that, though. The PowerShell thingy was much quicker. Might be worth to check this out later, though. 2022-01-21T15:01:45Z (#mju3mga) @ The stuff on the Windows box. 😅 2022-01-21T15:50:32Z (#yf6xs4q) (Fixed, btw. I was holding it wrong.) 2022-01-21T16:15:16Z (#v2yph2a) @ A highly frustrating game: https://wordlegame.org/ 😂 2022-01-21T16:35:53Z (#yf6xs4q) @ This: https://www.uninformativ.de/git/jenny/commit/6e8e77a77dacf674dd2b50b0a86e3f3891fdd0d9.html 2022-01-22T04:55:03Z So I was writing a little "wordle"-like game in Rust, when suddenly … oops … there’s no `rand()` … https://www.uninformativ.de/git/rustle/file/src/main%2Ers%2Ehtml#l61 😬 2022-01-22T05:11:29Z (#l7ue64q) I understand that random numbers are much harder than one might think, so they’re probably reluctant to add something to the standard library until it’s “good”. So, for now, we have this:

https://crates.io/crates/rand/

The legend goes that there once *was* a `rand()` in the standard library:

https://stackoverflow.com/a/29334943

I really wonder how this strategy will play out for the Rust community. How will those external libraries ever be integrated into the standard library? This is going to be a long and painful process, which will involve breaking and rewriting lots and lots of Rust programs. Well, not necessarily *breaking*, because dependencies are pinned by default, but it’s exactly that pinning which makes it easy for software to *rot* (never gets updated, because “it works 🤷”).

Then again, that guy on StackOverflow makes a good point about the [sequence of HTTP libraries in Python](https://stackoverflow.com/questions/2018026/what-are-the-differences-between-the-urllib-urllib2-urllib3-and-requests-modul). 🤔 Python can only grow and, maybe, there’ll be a “clear cut” some day – which will be just as painful.

It all has pros and cons. 2022-01-22T07:08:58Z (#3chj77a) @ That video on Twitter created the impression that this is happening in “rural“ areas, where nobody is around. But I just saw this [on a german news outlet](https://www.tagesschau.de/ausland/amerika/zug-ueberfaelle-101.html):

![](https://movq.de/v/017655fe96/s.png)

Here, it looks like it’s *right in the middle of the city*. 🤯 2022-01-22T08:11:07Z (#olijdpa) @ Yeah, probably. 🤔 Technically, anything that doesn’t end in a space or *a parenthesis* (because that would break the user agent string) would work in plain old twtxt … At the end of the day, it’s not specified. I gravitate towards “letters and digits”, yeah. 2022-01-22T08:14:23Z (#n252jtq) @ Just found this again: https://github.com/buckket/twtxt/issues/109 There were already thoughts about this back in 2016. And even an implementation of it in txtnix. We should revisit this. 2022-01-22T10:02:04Z (#n252jtq) @ Hmm. Some thoughts.

WebMentions are probably the best solution in a world with “HTTP + server-side code”. (You need something to process the POST request.)

The … well, let’s call it “beauty” … of the original twtxt spec was that sending special HTTP user agents does *not* require server-side code. You can just grep your logs. This is probably not relevant for Yarn, but it is for me – I run a plain httpd, no CGI, no PHP, no nothing. That thing serves static HTML and that’s it. And I want to keep it that way, because it saves me a lot of trouble.

So that’s one aspect.

Another aspect is Gemini and Gopher: While they do support user input, they don’t support multiple fields. I.e., `source` and `target` as it is specified by WebMentions won’t work. So you have to come up with your own format anyway.

So, yeah, what’s left? How could it be done? Maybe something like this:

- We need a format to specify feed URL and nick name. I’d simply go with this: `${source.nick} ${source.url}`, e.g. `movq https://www.uninformativ.de/twtxt.txt`
- HTTP: A GET request with one percent-encoded parameter, e.g.: `https://www.uninformativ.de/twtxt.txt?follow=movq%20https%3A%2F%2Fwww.uninformativ.de%2Ftwtxt.txt`
- Gemini: A request with a percent-encoded parameter, e.g.: `gemini://www.uninformativ.de/twtxt.txt?movq%20https%3A%2F%2Fwww.uninformativ.de%2Ftwtxt.txt`
- Gopher: A “search request” (menu type 7), no need for percent encoding here, e.g.: `/twtxt.txtmovq https://www.uninformativ.de/twtxt.txt`

*If* you run server-side code, then it can interpret this additional payload. If you, like me, run nothing but static httpd, then the requests will usually be served as if there was no parameter – but the full query will usually show up in log files.

So basically, this would be like moving the info from the HTTP user agent to some other place where it’s supported for all protocols.

Now, we could send this parameter for *every* request, but I’m not sure if that’s a good idea. For one, it creates noise. Also, what if a server is pedantic and takes the request *literally*, i.e. it searches for a file called `twtxt.txt?follow=movq%20https:%2F%2Fwww.uninformativ.de%2Ftwtxt.txt`? Or maybe Gopher servers refuse to serve the twtxt.txt file if there’s a search parameter. So I guess it’s better to only do these “pingback requests” every once in a while.

Strictly speaking, we could ignore HTTP entirely and just keep using the user agent here. We would then only be using this new format for Gopher and Gemini. I’m not sure, though, if it’s a good idea to use such different methods depending on the protocol. On the other hand, we should care about backwards compatibility. 2022-01-22T10:04:01Z Am I the only one seeing this? 🤔 https://github.com/vim/vim/issues/9586 2022-01-22T10:14:03Z (#uqw3bdq) @ Nah, not interested in changing operating systems. 🤣 (Although you could say the same thing about Vim these days. It even has `:terminal`.) 2022-01-22T14:08:07Z (#n252jtq) @ Oh, hold on, we’re talking about two different things here. 😅

Yes, I agree: There doesn’t need to be a mechanism for actively sending a message from user A to user B when user A mentions user B.

What I meant, though, was indeed discovery of new feeds. Or rather: New followers. At the moment, you can only find out about new followers by inspecting their HTTP user agents – and *that* only works via HTTP. So, for the purpose of notifying feed authors about new followers, I was proposing a pingback-like mechanism. (And I think this is also what the original GitHub issue from 2016 was talking about.) 2022-01-23T06:42:01Z (#x47vufq) @ Lol, where does this wordle hype come from? 🤣 All I see lateley is wordle here, wörtle there. 🤣 2022-01-23T07:01:12Z (#pcdq7uq) @ Not much. First time I heard about it, to be honest. 🙈 Scrolling through the articles on [netzpolitik.org](https://netzpolitik.org/tag/digital-services-act/), it *could* be a good thing? But it’s a large “package”, there could be nasty stuff hidden. It’s still a work-in-progress, there’s no final version yet. 🤷 2022-01-23T11:00:22Z (#wxhy2lq) @ Those things look really strange and cartoon-like. 🤔 2022-01-23T11:52:24Z (#seknsra) @ Well, for me, it looks like this:

![](https://movq.de/v/54fef21d4f/s.png)

🥴 2022-01-23T19:58:23Z (#uqw3bdq) Aaaaaand it’s fixed, weeeeeeeeee 🥳 (I’m still baffled that this hit so few people. Has ^Z grown out of fashion? I would have expected there to be a ton of Vim users on Arch with tiling window managers, who use ^Z all the time …) 2022-01-23T19:59:54Z (#owkmooa) @ Am confused. Would this show up anywhere in the feeds or is this just a Yarn usability thing? 🤔 2022-01-23T20:00:02Z (#sl3r34q) @ Welcome back! 2022-01-23T20:15:36Z Finished my migration to [pass](https://www.passwordstore.org/) today. It’s been quite some time since I’ve been excited about new software. 😁 The list of `pass` clients is pretty impressive. I’ve also finally made peace with GPG Agent and I actually like it now. 🤯 2022-01-23T21:07:15Z (#uqw3bdq) @ I usually do ^Z when a) I quickly want to read some previous output from the same terminal or b) when there’s special “context” that I want to preserve. Like, the current directory, maybe a Python virtualenv is active, maybe I set some env vars. Stuff like that. (Sometimes, the same can be achieved by launching a terminal *through Vim* instead of the global hotkey daemon.)

Interesting, though. In the examples you listed, I usually do ^S / ^Q. Never really though about *why* I do that instead of ^Z. But now I’m reading that ^S (SIGSTOP) cannot be caught by processes. I guess that’s an advantage here, because the process really is forced to stop and cannot misbehave by doing `$whatever` in its signal handler. 😁 2022-01-23T21:12:47Z (#4rjll3a) @ Lol, you’re right, of course. %) “New” as in “I just started using it”. :D I should have used it right from the start, but I didn’t know about it back in 2012 – so I wrote my own thing back then (pretty much at the same time when pass started) and never looked for alternatives again. :/ 2022-01-23T21:13:59Z (#owkmooa) @ Ahh, so the point is to mention people from feeds you don’t follow yet? 🤔 2022-01-23T21:16:59Z (#4rjll3a) @ Go for it! There’s even a Firefox plugin. 🤯 2022-01-24T13:57:11Z (#35k6f3a) @ Oh no. Best of luck to you! 2022-01-24T14:02:42Z (#c4wsylq) That’s probably just a friendly reminder that Qt is a commercial product made by a company: https://en.wikipedia.org/wiki/The_Qt_Company 😐 2022-01-24T15:01:36Z (#c4wsylq) @ That’s right. But it’s an issue with Qt, not with KDE. It’s not that KDE decided to show ads on their desktop now, right? Actually, I don’t think anything is going to happen to *KDE* at all. But sooner or later, more and more (independent) Qt programs could make use of this new ad thingy, and thus Qt (and, to some degree, KDE with it) could become … well, a shitshow. 2022-01-24T15:29:17Z Aaaaaaaaand now one of the pickups on my bass went silent. What a lovely day. 2022-01-24T15:40:19Z (#sv3645q) And now it’s back. Just like that. I guess that’s what you get when you buy a cheap instrument. 2022-01-24T17:24:55Z Hey @ :) If you're reading this: In your twtxt feed, make sure to put a literal tab (0x09) between the timestamp and the text. You're currently using a space (0x20) -- some parsers trip on that. 2022-01-24T18:13:17Z (#sv3645q) @ I intentionally bought cheap instruments, because they were experiments. I really didn’t know what to expect. I also couldn’t find a store nearby that sells them, so I just had to place a mail order and hope for the best. 😅 So, actually, I’m not in a position to complain. I knew what I was getting into. 🥴

But yeah, next time I’ll pay a lot more money. 2022-01-24T19:23:02Z (#xf5vlxq) @ I saw that person following me, so there’s a chance. %) 2022-01-24T19:28:45Z (#frb74yq) @ Oh man, I envy you for that scenery. 😅 Great shots. I miss the sun. 2022-01-24T19:29:16Z (#e44kzma) @ Having just watched a horror movie: That statue is unbelievable creepy. 😱 🥴 2022-01-24T19:31:41Z (#sv3645q) @ You’re joking, but I have no idea about the electronics in that thing. It should be purely passive and purely analogue (there’s no power), but who knows, maybe it’s connected to some cloud service. Like everything else these days.

(Eventually, if it keeps acting up, I’ll open it and have a look. But not yet.) 2022-01-24T20:19:05Z (#kpg33xa) I opened it in two browsers at the same time (because it looked like WebKit didn’t quite work) and made a mess. 🤣 2022-01-24T20:23:16Z Coooooool. So it finally happened. Microsoft decided to block all my mails. Congrutalations. I can now no longer respond to someone with whom I’ve already had a conversation going on. 2022-01-24T20:29:33Z (#e44kzma) @ I do, but I don’t know why. 🥴 2022-01-24T20:43:20Z (#alwe2fq) @ Yep, deep on that page is a link to a support form. I filed a request. Let’s see what happens. 2022-01-25T06:10:33Z (#alwe2fq) Microsoft replied and said: “Not qualified for mitigation.” No reason given.

Fuck ’em. 2022-01-25T19:02:22Z (#xf5vlxq) @ Yeah, that whole “keep an eye on the logfiles” thingy doesn’t really work with gemini (or gopher). There are ideas to fix that. Maybe I should formalize them and create a PR. 🤔 2022-01-25T19:04:28Z (#e44kzma) @ LOL! Right on point! 😂 2022-01-26T13:38:21Z (#spvgguq) @

> Who fetched my feed

That’s an essential part of forming a social network. The other things are optimizations. So, yes, I do think that there should be *some* kind of “ping, hello I’m here” in twtxt – regardless of protocol.

I’ll try to draft a spec soon-ish. Then we can discuss that and see where we go from there.

For me, minimalism is a core feature of twtxt. Otherwise I could just use Mastodon. So I’d love to see Gopher and Gemini becoming first-class citizens. 2022-01-26T13:56:47Z Here’s a game: See how long you can last in https://github.com/Swordfish90/cool-retro-term 2022-01-26T20:53:33Z (#jp5d46q) @ And now Augenkrebs is officially an international term. 🤣 2022-01-26T20:54:42Z (#jp5d46q) Don’t worry, I can’t stand it for more than a couple of minutes, either. Were CRT monitors really that horrible or is it a super aggressive simulation? I don’t remember anymore how CRTs were and, luckily, I don’t own one of *that* things anymore. 🤣 2022-01-26T20:56:00Z (#fqpn4qa) @ Sweet dreams are made of this … 🤪 2022-01-27T13:54:41Z (#e52ytya) @ Hehehe, that proud “thumbs up” at the end 🤣 Congratz! 2022-01-27T17:39:34Z A draft on how to send “notifications” to other feeds:

https://git.mills.io/yarnsocial/yarn/pulls/759

Gopher/Gemini users would now be able to see who follows them. 2022-01-27T18:51:09Z (#4xto2iq) @ … must … resist … 🤣🤣🤣 2022-01-27T20:02:20Z (#4xto2iq) This thread is wild. 😂 Nyt, puhuuko kukaan suomea? Opin vuodesta 2017 lähtien, but I’m pretty bad at it. 🤣 (Heh, it’s fun actually, I should pick it up again.) 2022-01-27T20:50:08Z (#szpq4ca) btw, ping @ @ @ @ and other Gemini folk. You probably know Gemini a lot better than I do, so feel free to chime in! :) 2022-01-28T14:38:32Z (#unnwcza) @ FWIW, I was not trying to make a point – I was just fooling around. 🤪 2022-01-28T14:51:44Z (#szpq4ca) @ Yes, that (missing `If-Modified-Since` etc.) is another problem. The “archived feeds” extension somewhat helps with that. Other than that, I don’t there’s anything else we can/should do. 😕

(I sometimes forget about this issue because I have a 50 MBit/s line and I only fetch feeds every 15 minutes. I don’t really notice. But it doesn’t scale, that’s correct.) 2022-01-28T15:19:55Z (#szpq4ca) btw, I don’t want to “push” this spec. 😅 Let’s gather feedback. Let’s carefully think about whether we *really* want to do this.

After all, there *are* other ways of notifying users about followers. Like, just send an e-mail. Or ping someone on IRC. Or whatever. I think that it would *help* if there was a solid built-in mechanism in twtxt – but it’s not *strictly* required.

@ has already mentioned that this might not be the most pressing issue.

To be completely honest: I’m lazy when it comes to implementing new features and I use HTTP anyway, so this is not my *personal* agenda. 😅 I’d be perfectly happy with dropping this idea, if it doesn’t gain enough momentum. 2022-01-28T19:25:42Z My nice [split keyboard](https://www.uninformativ.de/blog/postings/2020-12-05/0/IMG_1269.JPG-small.jpg), which I actually like a lot, has one obvious horrible flaw: It’s a rubber dome keyboard. Typing on it was pretty nice when it was *new*, but now it’s pretty weak, whishy-washy, floppy. 😢 I wish there was a version of it with buckling springs. 2022-01-28T19:30:24Z (#556keba) @ About time. 😂 2022-01-28T20:14:57Z (#xnn7djq) @ Ha! 😃 Yeah, that thing is quite funny. There are magnets in it, so you can put it back together. When people don’t know it’s a split keyboard, you can pretend to break it in half! 😂

I’m willing to try a different one, yes. I’m in the process of acquiring a(nother) Model M. 😍 And then maybe switch between the Model M and the split keyboard, or something like that. Both have their advantages. 2022-01-28T20:22:29Z (#kvffgya) @ Oohhh, you still have snow? 😲 And look at all those nice sheep. I like sheep. 🐑 2022-01-28T20:26:38Z (#xnn7djq) @ Oh, and if you think you can’t type on that thing: I made a [“tenting” device using my 3D printer](https://www.uninformativ.de/blog/postings/2020-12-05/0/IMG_1272.JPG-small.jpg), so the hands/arms are in a more natural position, and used that for a (short) while. *That’s* a weird feeling! 🤣 2022-01-28T21:05:42Z (#xnn7djq) @<~duriny https://envs.net/~duriny/twtxt.txt> Ohh, right, that one! 😲 Maybe I can hunt one down one day, but I bet it’ll be super expensive. It’s too bad that Unicomp don’t make these things anymore. 2022-01-28T21:07:32Z (#xnn7djq) @ I had the Kinesis a few years back. I sent it back after a couple of weeks, because the typing experience was *really* bad. :/ Very soft and wobbly. Maybe newer models are better, I don’t know. 2022-01-29T06:01:58Z (#556keba) @ Apparently. 🥴 Don’t they also still ship an ancient wersion of Bash? This often broke things for us at work and people then had to install a Bash through homebrew. I’m not sure on the current situation, though – I haven’t seen a Mac in real life since Covid started. 🤣 2022-01-29T06:02:58Z (#xnn7djq) @<~duriny https://envs.net/~duriny/twtxt.txt> Oh, wait, I didn’t mean to say Unicomp is dead. 🤣 I meant to say: It’s sad that they don’t make *these* things anymore, meaning just that split model. 2022-01-29T06:05:44Z (#xnn7djq) @ Ergodox looks interesting, although super weird. 🤣 My current keyboard still has a standard(-ish) layout, it’s just split, so it’s not *that* unusual to type on it. The [UHK](https://ultimatehackingkeyboard.com/) also looks interesting and it has an amazing modular design. Super expensive, of course. 2022-01-29T06:08:09Z (#kvffgya) @ Right, the smell. I forgot. Haven’t seen a sheep in ages. 😮 2022-01-29T17:39:28Z A nice vision: https://ploum.net/the-computer-built-to-last-50-years/ Lots of issues with it, but still a nice vision. 2022-01-30T08:11:30Z It’s official now, the wind turbines have been blessed by God: https://movq.de/v/d4949532f1/s.png 2022-01-30T08:29:58Z 🦀 [Rust has a small standard library (and that’s ok)](https://blog.nindalf.com/posts/rust-stdlib/) – A Rust user’s perspective on this issue 2022-01-30T10:43:21Z (#rdkzz5a) @ Yeah, you’ve mentioned that before. 😕

The traceroute from my server to `git.mills.io`:

 1. 185.162.248.2 0.0% 53 0.5 4.9 0.2 68.5 15.5
 2. ae3-4019.bbr02.anx84.nue.de.anexia-it.net 0.0% 53 0.7 2.8 0.4 27.0 6.1
 3. ae0-0.bbr01.anx84.nue.de.anexia-it.net 0.0% 53 39.1 12.1 10.9 39.1 4.0
 4. ae2-0.bbr02.anx25.fra.de.anexia-it.net 0.0% 53 11.0 15.5 10.9 75.1 11.9
 5. ae0-0.bbr01.anx25.fra.de.anexia-it.net 0.0% 53 10.9 11.9 10.8 30.8 3.0
 6. ae2-0.bbr01.anx63.ams.nl.anexia-it.net 0.0% 53 11.1 11.5 10.7 23.5 2.2
 7. ae1-10.bbr02.anx63.ams.nl.anexia-it.net 0.0% 53 10.6 12.0 10.5 50.3 6.5
 8. amsix-200gbps.core1.ams1.he.net 0.0% 53 13.7 21.5 11.3 124.0 21.7
 9. port-channel8.core3.lon2.he.net 0.0% 53 20.7 18.2 17.2 28.9 1.7
 10. 100ge8-1.core1.lon2.he.net 0.0% 52 18.3 18.3 18.0 20.8 0.4
 11. 100ge0-79.core3.nyc4.he.net 1.9% 52 84.3 84.3 84.0 85.5 0.3
 12. 100ge13-1.core4.fmt2.he.net 0.0% 52 147.9 150.5 147.8 167.4 4.8
 13. 100ge10-1.core1.sjc1.he.net 0.0% 52 150.0 150.1 149.9 150.3 0.1
 14. tpg-internet-pty-ltd.100gigabitethernet11-1.core1.sjc1.he.net 0.0% 52 303.3 306.2 302.2 310.2 2.4
 15. syd-apt-ros-crt2-he-0-3-0-3.tpgi.com.au 0.0% 52 308.2 307.5 303.0 310.6 2.2
 16. bri-pow-que-crt4-be-20.tpg.com.au 0.0% 52 316.2 316.1 315.9 317.1 0.2
 17. bri-pow-que-bras31-po10.tpgi.com.au 0.0% 52 315.8 316.0 315.7 318.6 0.4
 18. eth858.qld.adsl.internode.on.net 0.0% 52 319.3 319.5 318.9 324.4 1.1
 19. mail.mills.io 0.0% 52 320.8 321.3 320.2 328.6 1.7

Judging by the host names, it’s roughly Germany, Netherlands, UK, USA, Australia. Quite the long trip. 😕

It looks the same from my connection at home. Browsing `git.mills.io` is also pretty slow for me.

I guess it’s to be expected. 2022-01-30T19:26:15Z (#rdkzz5a) @ I don’t think we can do anything but accept the fact that we live on opposite sides of the globe. 😅 🌍 🌏 2022-01-31T16:19:51Z Well, isn’t she a beauty. 😍 😃 https://movq.de/v/82c83e7bb5 2022-01-31T16:44:43Z (#klajq4q) @ Yeah, I’m really torn. 😕 Feels like throwing all of twtxt’s simplicity out the window. 2022-01-31T16:46:29Z (#52tobpa) @ It’s simple. Anybody who dislikes that sound is not a suitable partner anyway. 😈 2022-01-31T18:05:07Z (#52tobpa) @ Bought it from a colleague. 😊 2022-01-31T18:07:48Z (#52tobpa) According to the label, this keyboard was built in April 1991. That’s a bit younger than my other Model M, which was built in June 1989. And yet, both of them are still kicking. That’s the kind of quality I’d like to see. 👌 2022-01-31T18:46:49Z (#ggv2t5q) @ And now you’ve reminded me that jenny’s test suite is sorely lacking. 😬

Are you using async stuff on purpose? It’s the new hype, I guess. 🤔 2022-02-01T17:56:29Z (#klajq4q) @ Unfiltered thoughts:

- I don’t like the idea of yet another optional metadata field. Would be nicer if we could come up with something that “just works”.
- How would we call that hook? The same way that has been outlined in the PR? 🤔
- The spam problem applies to the HTTP `User-Agent`, too, btw. 🤔 2022-02-01T18:13:59Z (#52tobpa) @ Yeah, I have two of them now. 😅 But: The one from 1989 is kind of a “family heirloom”. My grandpa brought it back home from work, together with an [IBM PS/2 Model 30](http://ps-2.kev009.com/pcpartnerinfo/ctstips/7492.htm). (We also had that standard mouse, but we threw it away at some point. 🙄) That was one of my first PCs. And it came directly from IBM (my grandpa worked there – I think I mentioned that at some point). We gifted the machine to someone else a looooooong time ago. That keyboard is all that’s left. So, it holds quite a bit of personal value and I don’t want to risk damaging it by using it on a daily basis. 😅 Coffee gets spilled and all that.

Due to that history, I have some warm-and-fuzzy feelings towards IBM and I very briefly worked there myself as an intern (in the same building even). It’s sad to see that the company is … well, let’s say, it’s struggling. They killed off so many of their sectors and even that building doesn’t exist anymore. 2022-02-01T18:28:12Z (#ggv2t5q) @ I see! Hmm, maybe I need to take another look at `async`/`await`. I’m using urwid in another project. 🤔

> If `tt` wasn't a user driven program, I'd just fetch the feeds synchronously.

I’m using Python’s multi-threading in jenny to fetch feeds, which gives a huge speedup. Without multi-threading, it takes 1 minute and 10 seconds to fetch all my feeds. With 64 workers, it’s down to 15 seconds. The good thing is that fetching feeds is network-bound, so the GIL doesn’t really matter.

Not sure if it really matters when run as a cronjob … but it’s nice when a manual call of `jenny -f` is relatively fast. 🙃 2022-02-01T18:31:48Z (#rzh6gyq) @ Let’s not forget [rustle](https://uninformativ.de/git/rustle)! The best wordle clone in town, that’s for sure! 2022-02-01T18:37:51Z (#xetzbua) @ I haven’t noticed the timestamps. 🥴 I kind of like the idea, but I can’t really tell why. 🤔 2022-02-02T19:07:28Z (#52tobpa) @ You know what, that’s exactly what I’m going to do. 👌 😊 2022-02-02T19:09:57Z (#klajq4q) @ @ Yeah, that’s what I meant.

I’ll have to read up on the WebMentions spec. I have no idea how that verification could look like. 🤔 2022-02-04T15:08:38Z (#hked5eq) @ Oh no. 🙈 I was really looking forward to that movie. 😢 2022-02-05T13:05:26Z The name [Waysome](https://github.com/waysome/waysome) implies that this is a Wayland compositor similar to [awesome](https://awesomewm.org/). I never gave it a try and it appears to be abandoned.

awesome was a great X11 window manager. It handled all the dirty stuff and allowed you to write your window management functions in Lua. (I only stopped using awesome because I wanted to learn more about X11 window management.)

Should I write an awesome-like Wayland compositor? It would allow you to write your own custom window management *logic*. That’s so much better than just offering *configuration*. I don’t know if there’s any demand for this in the community, but it is what I would like to use.

It’s just *so much* work … 😮‍💨 2022-02-05T15:52:43Z (#oip34ja) @ Anyone familiar with those things? How you do they yield? 🤔 2022-02-05T15:54:12Z (#o2si6ia) @ Verwendet eigentlich noch jemand die CWA oder wurde die vom Luca-Käse völlig verdrängt? Ich hatte ja immer noch nicht eine einzige Warnung in der CWA. 🙈 2022-02-05T15:55:17Z (#o2si6ia) (This is one of those instances where I think/hope it’s fine to communicate in german. It’s about special smartphone apps that are only relevant in this country.) 2022-02-05T16:32:45Z (#yckajrq) FWIW, “How you do they yield” should have been “How much do they yield” 🥴 As in, can you run an entire house off of that farm in the picture? Or more than that? 🤔 2022-02-05T17:43:18Z (#3mtkrua) @ Been there, [done that](https://uninformativ.de/git/katriawm). 😅

I don’t really want to repeat that for Wayland, though. Especially not since you have to implement an entire “display server”, not just a window manager. (You’d have to implement the equivalent of “X11 server + window manager + compositor”.) There is a library to help you with that (https://gitlab.freedesktop.org/wlroots/wlroots/), but it’s still a ton of work.

I don’t want to do it. But there’s no software out there that does what I want. 😩 So I’ll either write my own thing or live with a shoddy suboptimal solution.

Or I’ll have to come up with something else entirely.

(For now, it’s easy to just keep ignoring Wayland.) 2022-02-05T18:51:59Z (#3mtkrua) @ You mean [the status bars](https://movq.de/v/2e52177847/s.png)? That’s another project, [bevelbar](https://uninformativ.de/git/bevelbar). But yeah, both bevelbar and katria’s borders were loosely modeled after CDE. 🥳

I never used CDE myself, other than [some quick tests in 2012](https://www.uninformativ.de/desktop/2012-09-07--CDE-more-cde.png), after it had been open sourced. Wow, that’s already 10 years ago … 2022-02-05T18:53:06Z (#gsveyja) @ Heh, cropping is a bit weird here, too. 😅 ![](https://movq.de/v/fed2cafda0/s.png) 2022-02-05T18:55:32Z (#lb2k2aq) @ I tried to switch back to non-tiling WMs many times, but it’s just so annoying to move windows around all the time. 🤔 Tiling WMs work much better for me. 2022-02-05T18:56:51Z What the heck is she holding? That’s not a knife, is it? 🤔 ![](https://www.tagesschau.de/multimedia/bilder/queen-torte-101~_v-videowebl.jpg) 2022-02-06T10:34:44Z (#3mtkrua) @ The goal would be to have the compositor (= “the WM”) provide a Lua API, a bit like it was in awesomewm. All the actual window *management* (and not input handling, monitor management, clipboard and all the other junk that you have to implement in Wayland) would then be implemented in Lua. And, if you don’t like the defaults, you can supply your own Lua scripts.

I don’t know if this works in practice. I’d have to try. 🤷

If I were to write another WM for X11, I’d do the same thing. (Or I’d go back to awesomewm.) 2022-02-06T10:37:38Z (#3lnaiea) @ 🤣 2022-02-06T10:38:32Z (#3lnaiea) @ Huh, you’re right, that’s a knife. Looks so strange, like it has little spheres on the blade. 🤔 2022-02-06T10:40:19Z (#oxe5yra) @ Oh god, that poor old house! 🙈

Great lighting! I love 24 and 25. 😊 2022-02-07T13:55:11Z (#lb2k2aq) @ Using the mouse is horrible and the cause of lots of wrist pain. Been there, done that. 2022-02-07T13:56:02Z (#3mtkrua) @ Gave it a shot, froze my machine. 🙈 Maybe I’ll try again in the future. 2022-02-07T19:46:20Z (#zk4levq) @ Dude, those shots in the woods with the talls trees are great. Could be album covers! 😄

When you opened with “Yesterday's storm exacted its toll”, I was expecting lots of damage. It was super windy here yesterday. 😩 2022-02-07T19:48:16Z Just gave away some furniture that I don’t really need. Feels good! Well, I just lended it, but now I hope that I don’t get it back. 😅 #Minimalism 2022-02-07T19:57:41Z Song of the week. If I was in a band, that’s the kind of music I’d love to make. 😍 🎸 🤘 // YOB - Adrift in the Ocean // https://www.youtube.com/watch?v=bEDqLArxyxg #NowPlaying 2022-02-07T20:10:24Z (#xlgf6ga) (… or rather: #TheRoadToMinimalism … Not quite there yet.) 2022-02-08T19:29:15Z (#l45tcta) @ Oh, it is? Wasn’t aware of that. 😅 What are some other bands in that genre that you like? I’m always looking to find cool new stuff. 👌 2022-02-08T19:31:56Z (#xlgf6ga) @ A desk and a chair. Well, more of a table, really. (Not all companies provide appropriate equipment for working from home. Yes, this is *still* an issue.) 2022-02-08T19:33:27Z (#zk4levq) @ Heh, I envy you. That really sucks when you live in a tower building. Heavy storms are super loud and worrying (“will everything hold” …). That’s much more relaxed in normal houses. 2022-02-08T19:42:34Z (#ew32cja) @ Well, let’s keep our fingers crossed. 🍿 2022-02-09T17:16:59Z (#xlgf6ga) @ Yeah, same here. It really depends on the company. I get the impression: The closer you are to the government, the worse it gets. 🙈 🙊 2022-02-09T19:20:03Z So I was cleaning my keyboard, when I noticed that the space bar is … grounded? ![](https://movq.de/v/7161536ada/s.png)

According to [someone on the internet](https://deskthority.net/viewtopic.php?p=239622&sid=a2a2ce2aa03d99ef15dd0c29b9da347e#p239622), this is the reason:

> This is an idea from the late 1980s, when keyboards were collocated with large cathode-ray-tube monitors, which charged the users with static electricity. TTL circuitry had just been replaced by CMOS technology, which was much more sensitive against static discharges, so means were sought to discharge the users and protect the devices. First idea were grounded pads, where the user should discharge before touching the keyboard. Then IBM constructed a space bar made of conductive plastic that was wired to ground, which had the advantage that the user touches the space bar anyway and often. The idea spread throughout the 1990s, when also KeyTronic and Cherry started making keyboards with grounded space bars. These disappeared again when chip circuitry had evolved and was less susceptible to discharge damage.

Who would’ve thunk. 2022-02-09T19:29:49Z (#xj7j7wq) @ Despair, see also: Shape of. https://www.youtube.com/watch?v=igrJqEUXrco 2022-02-09T20:11:22Z (#xj7j7wq) @ That’s true. I still like the song, though. 😅 2022-02-09T20:15:04Z (#qwkggoa) @ Lol! “The quantity is naturally indefinite”, best part. 2022-02-09T20:20:18Z (#oopaqya) @ I thought so, too. The wonders of science, I guess. 😅 2022-02-10T16:54:14Z (#kpugcla) @ Well I guess that’s one way towards minimalism, eh? 🤪 2022-02-12T06:54:53Z (#xtz5lkq) @ @ What do you mean by “… won’t last as long”? 2022-02-12T07:05:11Z (#to7y4xa) @ 22 stood out to me as well. The colors are a bit “overly exagerrated”, aren’t they? It’s not an accurate representation of (boring) reality. There’s too much blue. And I guess that makes it look more like a painting than a (boring) photo. 👌😊

I, for one, can imagine this to be super cold. The sun isn’t helping much these days. 2022-02-12T16:39:24Z (#fyi2hvq) @ I’m reading through this now:

https://twitter.com/cdixon/status/1442201621266534402

I want that guy’s drugs. They must be reaaaaaaaally good. 2022-02-12T20:41:37Z Some thoughts on me not using semver: gopher://uninformativ.de/0/phlog/2022-02/2022-02-12--semver.txt 🤔 🤷 2022-02-12T20:44:31Z (#xtz5lkq) @ I see. Hmm, you could be right there. Those projects would be equally abandoned if they were on GitHub, but at least they’d still exist. 🤷 (You know I like self-hosting, so I’d say: Do it, @! 😅) 2022-02-13T06:26:34Z (#psv2pwa) @ Well, this is the request that I see on my end:

 '/phlog/2022-02/2022-02-12\M-b\M^@\M^Ssemver.txt'

Clearly wrong. Looks like some clever software took over and replaced the two ASCII hyphens (0x2D) with a Unicode En Dash (U+2013). See the URL you linked: `… 2-02-12%E2%80%93semv …`. That `%E2%80%93` shouldn’t be there.

Works:

 https://gopher.mills.io/uninformativ.de/0/phlog/2022-02/2022-02-12--semver.txt 2022-02-13T06:29:35Z (#psv2pwa) @ There is a Gopher community, much like there is a Gemini community. It just might not overlap (as much as Gemini) with the twtxt community. 2022-02-13T07:03:13Z There was a lovely scenery this morning: ![sunrise](https://movq.de/v/40014c1dc1/s.png) I was just 1 or 2 minutes too late. Must have been great *just* after sunrise. 🌅 2022-02-13T11:15:08Z (#4xwlkia) @ Aaaahhaaha! My TV lost its channel list the other day and now it can’t find all those channels again. But when I *do* figure out how to get them back, I’ll have the same problem. 🤓 (I’m on cable.) Tons of channels, but no (decryptable) signal … Oh joy! 2022-02-14T16:51:15Z (#psv2pwa) @ That’s a good point, though: Technically, the next release would have to be “version 23” as to not confuse existing stuff. I mean, “23” isn’t the worst choice 😅, but it’s very weird, still.

By the way, since I didn’t pay *too much* attention to not introduce breaking changes, some of my tools would have (almost) reached version 23 by now anyway. 🥴

No worries, your comment was actually very helpful. Here’s what I originally had in mind: “Hmm, my existing releases are called like `v21.01`, so I could just drop the `v` and start with `1.0.0` for everything.” In retrospect, that’s super braindead. 🤦 Just going for `23` makes much more sense. Sometimes, I’m not a smart person.

As for changelogs: There’s https://keepachangelog.com/en/1.0.0/. This is a huge discussion in itself, by the way (see [here](https://news.ycombinator.com/item?id=9054627), for example). *Changelogs* don’t make sense anymore, since basically everything uses a version control system these days. What you might want to write is a *news* file, which doesn’t list every single commit or change, but rather: Important stuff that people should be aware of. And you have the problem of “reserved” names like `NEWS` (https://www.gnu.org/prep/standards/html_node/NEWS-File.html), which should then probably follow a certain file format or whatever.

I went for a slightly modified version of [CPAN CHANGES](https://metacpan.org/dist/CPAN-Changes/view/lib/CPAN/Changes/Spec.pod). There’s always a section “Fixed”, “Changed”, “Added” in my files, because I think it’s very important that the reader immediately knows what kind of change we’re talking about. (And I didn’t quite like the Markdown noise in keepachangelog.com.) 2022-02-14T17:06:36Z (#oa26lga) @ That’s a Canon EOS 600D with its standard 18-55mm zoom lens. I have a couple of other lenses, too, so I can go from 10mm to 300mm. (The cam has an APS-C sensor, though, and that big lens is meant for full-frame cams, so I’m told that this effectively makes it a 450mm lens on my cam.)

Not sure I’d buy a DSLR again. I’m just a hobbyist. Having a little preview monitor is much more useful to me (this cam is a bit older, so you lose some features when you use live preview). But I won’t complain, the cam’s great. 😊 2022-02-15T17:51:47Z (#ulikega) @ Nice! Now prepare for [the big storm](https://wetter.tagesschau.de/unwetter/) that’s coming in the next few days. 😮‍💨

> Nothing is as permanent as a temporary solution.

Wahaha! Yeah. If it works (kind of), then it stays. “What do you mean, ‘devel server’? This is our production environment!” 🤣 2022-02-15T17:53:00Z (#ulikega) (Although you might get lucky. Maybe the storm doesn’t hit your area as much.) 2022-02-18T14:18:00Z (#4kvkyuq) … aaaaaaaaand there’s the next storm. Say hello to “Zeynep”. (That’s how they called the storm. Apparently, it’s a Turkish name meaning “beauty”. Well, let’s see how beautiful it’s going to be.)

The night from Wednesday to Thursday was like this: https://movq.de/v/6fb0485d62/sturm.ogg All night long. No sleep that night. 2022-02-20T08:28:21Z Can anyone tell which versioning scheme this project uses? https://github.com/giampaolo/psutil/blob/master/HISTORY.rst

[A comment from the author](https://github.com/giampaolo/psutil/issues/2002#issuecomment-946044868):

> More in general: I don't expect to break APIs any time soon. If I were to break something, I'd bump up the major version, e.g. from 5.8.0 (current) I'd go straight to 6.0.0. It must be noted though, that I may still go to 6.0.0 even if I do not break any API, e.g. if I introduce a very important brand new feature (unlikely) or if I accumulate enough 5.9.* versions (more likely).

🤨 2022-02-20T08:46:11Z (#zdfqv6a) @ The original article says:

> Clearview has built its database by taking images from social networks and other online sources without the consent of the websites or the people who were photographed. Facebook, Google, Twitter and YouTube have demanded the company stop taking photos from their sites and delete any that were previously taken. Clearview has argued its data collection is protected by the First Amendment.

And:

> Facebook, which forbids the automated copying, or “scraping,” of data from its platform and has an External Data Misuse team, has banned Clearview’s founder, Hoan Ton-That, from its site and has sent the company a cease-and-desist order, but Clearview has refused to provide any information about the extent to which Facebook and Instagram users’ photos remain in Clearview’s database, an official with Facebook’s parent company, Meta, told The Post.

Soooo … lawsuit, schmawsuit, who cares? 🤣 2022-02-20T08:51:30Z Fancy clouds from the other day: https://movq.de/v/8c9780e998/ 2022-02-20T09:06:38Z (#psffxaq) @ 07 is great! The rock in the front left really makes it more interesting.

One thing: [It could use a slight rotation](https://movq.de/v/3acf467413/s.png). 😅 And that makes me wonder: Couldn’t cameras show a little level indicator? 🤔 I know how hard it is to take photos that are not skewed (is the the right word?) and such an indicator might help. 2022-02-20T09:07:09Z (#l5tsfqq) Wait, apparently newer cams do indeed have such an indicator: https://www.sony.com.au/electronics/support/articles/00014661 🤔🤔🤔 2022-02-20T09:24:35Z (#pk4esdq) Haha, now I see it: That last pic needs rotation, too. 🤣 2022-02-21T14:37:19Z I was putting up a mic to catch some more “f*cking loud storm” recordings, when I accidentally recorded myself typing a message on IRC: https://movq.de/v/c9d1f1ffb4/2022-02-21--model-m-goes-brrr.ogg That’s a tiny bit more extreme than I expected. 🤣 2022-02-21T18:41:58Z (#umscdyq) @ Oh, hell no. `stormctl stop && stormctl disable`, plz 🤪 2022-02-21T18:43:02Z (#oz3pfga) @ Well, maybe the amphora is empty and she’s just carrying it to the next well to fill it up again. 😅 2022-02-22T14:50:53Z Today is Tuesday, 2022-02-22. Tuesday. Tues-day. 2022-02-22. TWO’S DAY. You’re welcome. 2022-02-22T14:51:51Z (#hcu5ofq) @ Yay, it’s over. They said so! 2022-02-22T19:32:04Z (#prpzbkq) @ That’s the spirit! Happy twosday! 😁 2022-02-22T19:57:35Z (#4aeq5ha) @ Oooooooohhhhhh. 🤔 Now I know what we’ve been doing wrong! 2022-02-23T19:31:19Z (#mn7gfqa) @ Took me a moment. “He’s filming while driving? Wait, he’s *driving*?!” Nope, just left-hand traffic. 😬 🤦 🥴 2022-02-24T15:51:03Z https://movq.de/v/6b850ba427/goals.mp4 2022-02-24T16:54:49Z (#47qmiba) @ About the Auschwitz part: I think it’s a metaphor about the current path of humanity. Climate, war, you name it. Life is like a ride on a train, he says, and currently that train is heading towards certain doom.

(I could be wrong. I don’t know the source of this clip and there’s clearly a cut in the middle, so he could be talking about something else.) 2022-02-24T16:55:40Z (#3qurimq) @ Sure, done. 🙃 2022-02-24T17:38:08Z (#3qurimq) @ 🥳

Well, it’s only roughly 9 months until the next flip anyway! 😅 2022-02-27T16:01:11Z With all this crazy stuff happening at the moment, I had to find some distraction. Remember that webcam I put up in my window a few months back? This was about half a year ago. It takes a photo each day:

https://movq.de/v/d35e4d1da1/picam-full.mp4 (63 MB)

I wasn’t motivated to come up with an ffmpeg filter command to do those image crossfades, so I wrote a little Rust program instead.

Actually, the camera doesn’t take *one* photo each day, but ten. Simply concatenating all these raw images yields this video:

https://movq.de/v/d35e4d1da1/picam-multishot.mp4 (144 MB)

It’s not as smooth as the first one, but you get to see moving clouds. 🙂 2022-02-27T16:02:20Z (#xo2ynza) The plan is to keep the cam up for a full year. Let’s see if that works. I already had to move the cam once (you can see it in the videos), because, well, it’s a window and sometimes you just have to open it … 2022-02-27T16:05:39Z (#d3vmtka) @ What is he going to nuke? Chernobyl, again? 🙄 😩 2022-02-27T17:34:03Z (#xo2ynza) @ Yeah, I was pretty surprised by those leaves, too. Here’s a timeline:

- 2021-10-07: Almost all trees green. Around 0:26 in the video.
- 2021-10-20: The first couple of trees have turned fully “orange”. (Is that what you call it? Orange trees? 😅)
- 2021-10-31: Almost all trees orange.
- 2021-11-09: A few trees have lost their leaves.
- 2021-11-11 to 2021-11-14: Lots of fog. I think that’s around 0:41 in the video.
- 2021-11-15: Trees rapidly lose leaves now.
- 2021-11-29: Pretty much no leaves left. It’s around 0:46 in the video.

So it took about 2-3 weeks in real time for the leaves to actually disappear, but since the video (picam-full.mp4, that is) shows such a long period in a rather short time, it feels super fast.

Honestly, I don’t remember how much time I spent on this. 😅 I set up the cam last year (which probably took a weekend or so; the raspberry pi runs with a read-only rootfs, so power losses don’t damage anything) and then it just kept taking photos. I checked them every once in a while, but that’s it. I spent maybe 1-2 hours on the Rust program today (lots of waiting, rendering the video takes a while). It’s a pretty low-effort project.

(I just wish the camera had better quality, but I didn’t want to buy anything expensive. It’s some low-budget webcam.) 2022-02-27T17:42:16Z (#amxe4ta) @ That thing in #15 looks like a … [Cabin in the Woods](https://de.wikipedia.org/wiki/The_Cabin_in_the_Woods). 😎 I’ll just assume there’s an elevator in it which leads to a secret underground area. 😎 2022-02-28T19:22:23Z (#xo2ynza) @ Nah, that Rust thingy is very simple, it’s 75 lines:

https://movq.de/v/7617e501d4/fader.tar.gz

I took full advantage of the Rust eco system this time: The `image` crate/library acts as a JPEG reader and writer; `threadpool` gives you an easy to use worker pool. I’ve done a fair bit of image processing in the past (ray tracing and all that – super interesting and fun stuff!), so crossfading two images was a no-brainer (it’s not hard anyway, but if you’ve never done it before, it might take a moment). You’ll notice that I’m very lazy, there’s a hardcoded `let steps = 10;` in there. 😅

(Heh, compiling that program takes 54 seconds on my machine. Luckily, the build is incremental after the first run.)

Actually, why not just put labels on the images? https://movq.de/v/7617e501d4/picam-small.mp4 (11 MB). [ImageMagick](https://legacy.imagemagick.org/Usage/annotating/) is great for stuff like that. 🙃 2022-02-28T19:26:13Z (#tugbvia) @ No client verifies it automatically, but at least it doesn’t break anything. I did that for a while, too. But as the other guys said, without automatic verification, it’s not very useful. 😐 2022-03-01T15:02:05Z (#5dcauya) @ That bird could be some sort of juvenile moorhen: ![](https://en.wikipedia.org/wiki/Common_moorhen#/media/File:Gallinula_chloropus_young.jpg)

They have gigantic feet. 😂 ![](https://i.redd.it/9o68loyvir9z.jpg) 2022-03-01T17:58:58Z (#5dcauya) @ May I present to you: The Jacana.

![](https://movq.de/v/56698dd935/jacana-1.jpg)
![](https://movq.de/v/56698dd935/jacana-2.jpg)

😂 😱 😂 2022-03-01T19:04:37Z (#5dcauya) @ @ They’re real! 😅 Yes, it’s a parent carrying its chicks. They still have eerie large feet, though: https://movq.de/v/3839ac0037/jacana-3.jpg 2022-03-01T19:05:54Z (#h3ibtaa) @ Is it a bird? Is it a leaf? No, it’s a plane! 😅 2022-03-02T15:43:46Z A coworker tried to use an old unmaintained script of mine, which is supposed to to plot a route through our internal network. This was the result:

![](https://movq.de/v/986b6e5216/broken-plot.jpg)

I … I think … I think it’s art. 🤔 2022-03-02T15:45:12Z (#5zsqjpa) Could also be a metaphor for life. Some very weird stuff in the beginning, then you have the same stuff every day, over and over, it just loops – and then you fall victim to time. 💀 2022-03-02T15:50:06Z (#r43fnfq) @ Just curious: Where do you back it up to? Second disk, external disk, something on “the cloud”, …? 2022-03-03T17:04:46Z (#whh65qa) @ Not bad, thanks! 2022-03-06T09:27:34Z (#yvoke5a) @ Ha, look at that, the bridge is finally finished. 🥳

I’m surprised you managed to take a photo of that bird at all. It’s really hard and takes a lot of patience. 👌 2022-03-06T09:34:12Z (#4wtdqjq) @ Those storms were two weeks ago. Feels like yesterday:

TIL: Singular von „Böen“ ist „Bö“: https://de.wikipedia.org/wiki/B%C3%B6 🤪 Hört man so selten in der Form … 2022-03-06T16:19:54Z Oh no. The hard disk in my old gaming PC (the one running Windows XP) has died. Getting I/O errors. 😢 2022-03-06T16:21:41Z (#ybjufvq) I have one other spare disk lying around, but I’m not very motivated at the moment to reinstall Windows. 2022-03-06T16:24:02Z (#ybjufvq) I mean, what else do you do with these old machines? It’s an Athlon 64 X2 4200+ with 3 GB of RAM. I probably couldn’t even donate it. 2022-03-06T18:53:54Z Hypothesis: Diving into nostalgia all the time and becoming emotionally attached to objects from the past means that your current life sucks a bit. You can’t make new happy memories but must instead cling to the old ones. 😬 2022-03-06T20:41:04Z (#tp7pfda) @ Yay! https://movq.de/v/43666dd1c9/98.js.solitaire.win.mp4 2022-03-07T15:53:29Z (#tp7pfda) @ It’s my own: https://uninformativ.de/git/katriawm (and the bars are https://uninformativ.de/git/bevelbar + https://uninformativ.de/git/infofeld2). It started out as a learning project on Christmas 2015 (“How do window managers really work?”) and then I just kept using it. 🥴 2022-03-07T16:04:17Z (#xo2ynza) @ Glad you like it!

Go for it! Doing a timelapse of a single day might also be interesting. My webcam isn’t good enough for that, maybe I can set up something using the DSLR. 🤔 2022-03-07T16:14:39Z (#mwi7snq) @ Your counter-hypothesis is certainly very appealing as well. 🤔 For me personally, it’s probably a mix of both. 2022-03-07T17:00:46Z (#apfbgnq) @ That’s a tough question, because I’m not really an Ansible user. I can’t really compare the two.

A coworker started the BundleWrap project around the same time that Ansible started. Some time in 2012, I think. Shortly after that, we started using it at work. We knew about Ansible but it wasn’t really usable for our cases. Had Ansible been more mature back then, we might have chosen it instead, who knows.

The thing is, BundleWrap grew with our needs and, thus, it fulfills our needs pretty good. Hence I never really looked at *current* alternatives, to be honest. (But BundleWrap’s main dev knows more about it than I do.)

Also, we’re not good at marketing. Maybe we should put together a comparison page, “BundleWrap vs. Ansible”. 🤔 2022-03-09T16:58:43Z So much going on in the twtxtiverse. I can’t keep up anymore. 🤪 I either need to follow fewer people or I need to somehow rework my client’s UX. 🤔 2022-03-09T17:02:42Z (#t47rjwa) @ Good thing I never tried to set up federation. The Matrix server that I run is purely for my family. I just whish I had known about [FluffyChat](https://fluffychat.im/) earlier, because it’s much easier to use than [Element](https://element.io/). 😕 2022-03-09T17:03:39Z (#t47rjwa) @ But now I’m confused. You said:

> But this "Federation" thing is a joke. It doesn't mean what anyone thinks it means

I thought it means that it works similar to e-mail: User A on server A can talk to user B on server B. Is that not what it is?! 🤔 2022-03-09T19:59:34Z (#g3vczua) @ Hm, interesting, how does it work? 🤔 Does it mute threads, keywords, … ? 2022-03-13T20:05:20Z (#g3vczua) @ Phew, that’s quite the elaborate system. 🤔

I think I’ll try playing with mutt’s `collapse_unread` setting first. I don’t want this for *email*, but it could be useful for twtxt. It basically keeps all threads collapsed, unless you explicitly open them. 2022-03-13T20:08:57Z New upstairs neighbors. They immediately set up a ton of WiFi access points and thus (almost) completely ruined the 2.4 GHz band. Alright, so I finally had some motivation to set up 5 GHz. 😊 Much better. 2022-03-13T20:37:48Z (#55675cq) (I guess “incentive” is a better word here instead of “motivation”. 🤔) 2022-03-14T14:51:02Z Spent the better part of the day debugging sporadic network failures in a kubernetes cluster.

TIL:

- k8s uses lots of iptables magic under the hood.
- iptables has a mechanism to apply rules *based on probability* and that’s how k8s does load balancing (e.g., if you have a service that points to several pods): https://man.archlinux.org/man/iptables-extensions.8#statistic
- The root cause of our sporadic failures were stale iptables rules: Some of them pointed to no longer existing pods (but because probabilities are involved, they didn’t always trigger).
- This isn’t Sparta, this is madness. And probably a k8s bug. 2022-03-14T14:57:46Z (#cjv32ca) Well, the question is: What’s the root cause of the root cause? Why did those rules become stale? I’ll never know. 2022-03-14T15:58:31Z (#cjv32ca) @ I’ll have to check tomorrow. This is “managed kubernetes” at Google, so I don’t know if I know which plugin it is. :-) We have zero control over the master(s?). 2022-03-15T16:18:17Z (#55675cq) @ Yeah, I use LAN cables whenever possible. But sometimes it isn’t – or, well, annoying, like when lying in bed with the laptop. 😅

Shared mediums suck, I wish the other people wouldn’t use WLAN. 😜 2022-03-15T16:19:20Z (#ltfbs2q) @ Holy smokes. 😳 It’s just cloudy over here, but not yellow. 2022-03-15T17:39:59Z (#mpfwcdq) @ I've had to “clean up” several accidental “Prime” subscriptions in my family. So, yes, I’m pretty sure they know what they’re doing. 2022-03-16T13:46:16Z I’m gonna try to learn some basic Braille:

![](https://movq.de/v/7efc4361bf/IMG_3341.JPG-small.jpg)
![](https://movq.de/v/7efc4361bf/IMG_3342.JPG-small.jpg) 2022-03-16T14:00:29Z (#t3wjdlq) Here’s the “Why”:

My eyesight is getting worse every year. I can still drive a car, so it’s nothing serious yet (hey, I’m german, so let’s use “is able to drive a car” as a benchmark 🤣), but it’s starting to freak me out a little that this doesn’t stop. Normally, eyesight stabilizes when you in your mid-20ies, right? Anyway, I just want to see how far I can get. Can I use a computer? Would I be able to do my job? I’d have to get a hold of a Braille terminal, of course, or maybe try a screen reader some day.

I’m fully aware that it’s going to take a long time to develop this skill. Maybe I’ll abort next week. Maybe not. We’ll see.

In general, I’d like to be able to get a better understanding of what it’s like to use a computer using a Braille terminal. Are the web sites that I make any good? Are my programs good? Yes, it’ll take even longer until I reach a point where I can answer these questions. See you in a couple of years.

(I don’t know if it’s arrogant to believe that I can learn this in the first place. I expect it to be pretty hard, but it’s probably even waaaaaaay harder. No idea. We’ll see.) 2022-03-16T15:35:36Z (#aonqv4a) @ Could be, the network is a bit flaky lately. 🤔 2022-03-16T15:49:51Z (#gpge5la) @ I don’t know yet. I’ve been trying to ignore it. 🙈 I’ll have a doctor’s appointment later this year. (Which, to my surprise, is hard to get. Eye specialists are overbooked in my area?!) So far, the only official diagnosis is just “myopia”. 🤷 Let’s hope it’s nothing more than that.

How about you, if I may ask? If I remember correctly, you can still see, but only a very small area? Is it a sharp image? 🤔 2022-03-16T16:42:02Z (#b5fqwna) @ Oh, so it’s a loss of central vision for you? Oh crap. 😳 2022-03-16T17:07:18Z I’ve got a whisky tasting set here. One of the samples is whisky finished in Sauternes wine barrels.

It really has that typical “wine flavor”. I hate wine. This is the worst whisky I ever had. 🤣 2022-03-16T17:13:57Z (#xmhoibq) @ You just looked at The Nightmare Bird. 😈

It’s a parent carrying its chicks. 😅 2022-03-16T19:27:36Z (#ltfbs2q) @ It was very foggy here today and I *think* it was also a big yellow-ish. But I’m not sure. Maybe I just want it to be yellow, because, yay, something special! 😅 2022-03-16T19:36:28Z (#t3wjdlq) @ I think it’s more or less the same internationally: https://en.wikipedia.org/wiki/Braille#International_uniformity

Actually, me playing bass is a bit of a problem. There’s lots of hard skin (Hornhaut) on most of my fingers and I discovered that there are actually some “dead spots” where I can’t feel anything. It’s easiest to feel the dots using my left thumb (which is hardly ever used when playing bass). 🥴

(I once knew a martial arts fighter who went blind due to this sport. This guy’s fingers were basically just … weapons. He could hardly feel anything. He really struggled *a lot*. 😢) 2022-03-18T15:47:21Z (#642j7gq) @ Vim plugin managers (like “Pathogen”) predate the built-in plugin system of Vim, don’t they? 🤔 IIRC, this feature was only introduced in Vim 8 (2016). But I have no idea why things like Pathogen *still* exist today. 🥴 2022-03-18T15:49:34Z So far, I really enjoy the second season of “Star Trek: Picard”. 👌 It isn’t much like TNG, but it’s good in its own way. 2022-03-19T07:40:48Z Next level: Trying to read the Braille labels of medication, because that’s the only real Braille stuff that I have lying around.

![](https://movq.de/v/e795ff4b20/s.png)

It’s a lot harder than my 3D printed practice set, that’s for sure. Those dots are pretty flat. I’m sometimes having trouble telling them apart from minor damage on the box. 😳 2022-03-19T07:47:33Z (#fob5q6q) But: I *can* make out the dots and, thus, the letters. I still haven’t memorized what they mean, so I’m looking them up in a table on my computer screen (which is a huge advantage, of course). Like, I feel ⠑ and then the table tells me that that’s an “e”. 2022-03-19T08:00:17Z (#642j7gq) @ Probably true. I just wonder: Had I made such a 3rd party plugin, would I have stopped its development once Vim 8 landed?

Ah, haha, look at that: There is a notice in Pathogen:

https://github.com/tpope/vim-pathogen

> For new users, I recommend using Vim's built-in package management instead.

And it used to look like this:

https://github.com/tpope/vim-pathogen/commit/e9fb0914dba5bdfe2feaa364dda2e9495c5620a2

Apparently, a clear deprecation warning scared people? 😅 2022-03-19T11:44:16Z (#ybjufvq) Hmmm … I can read the disk just fine using some USB adapter on my main machine. And SMART values appear to be fine, e.g. no `Reallocated_Sector_Ct`. 🤔

Maybe it’s not the disk that’s broken. I’d actually prefer that. If there was an issue with the mainboard, then this machine would be a lost cause and I wouldn’t need to bother keeping it alive. 2022-03-19T16:53:52Z (#fob5q6q) @ It’s all still very hard and confusing. 😅 There have been instances where I immediately felt the whole ⠗ and immediately knew “ok, that’s an R”, but that’s rare. It’s mostly a lot of fiddling, searching for the individual dots and building a mental image of the whole letter. Takes an eternity. 2022-03-20T14:01:37Z (#bmvmpya) @ It varies a lot. With my 3D printed practice set, I can recognize the shape pretty quickly, let’s say a couple of seconds. The real Braille labels on my medication, however, takes much longer, can be up to a minute. (All medication here in Germany has Braille labels.) 2022-03-20T14:02:05Z (#642j7gq) @ Do it! 🍿😈😉 2022-03-20T14:02:45Z (#zi7jfja) @ Mit Messer und Gabel. 🤣 2022-03-20T17:40:55Z A bizarre glitch in a cookie banner:

https://movq.de/v/bf4209f9b0/cookie-banner-glitch.mp4

It wants to grow. But it can’t. It’s stuck. 2022-03-23T18:05:27Z (#iphs6mq) @ I’m having more and more mixed feelings about shell scripts myself. I used to love them (heck, my Gopher server is a Bash script), but they have so many pitfalls and especially working in teams can be a real nightmare. 🤔 2022-03-23T21:06:15Z (#iphs6mq) @ https://uninformativ.de/git/sgopherd Yeah, it’s kind of weird. Let’s just say, I wouldn’t do it this way again. 2022-03-24T14:07:34Z (#iphs6mq) @ I wasn’t really using sgopherd as an example for “shell is bad”. I brought it up, because I wrote sgopherd in a time where I was a hardcore fanboy of shell scripts. :-) If anything, this is an example of how far you can go with shell. It’s a bit weird/unusual, yes, but at the end of the day, it’s not a particularly complicated program: It just reads a short string from `stdin` and then looks up and prints the requested file to `stdout`. It’s basically a bridge between inetd and cat (plus a little bit of magic).

sgopherd doesn’t implement any “server” functionality. That’s the job of inetd. Implementing a full server with stuff like socket handling *as a shell script* would indeed be inappropriate, if you ask me. But that’s not what this is.

Also, in the case of sgopherd, it hardly matters to me if it’s shell or Rust or whatever. It’s mostly a personal toy project of mine, so, meh, whatever. If I were to rewrite it *today*, I wouldn’t use shell again, but it’s not a complete disaster that demands a rewrite immediately, either.

I should probably write up a short blog post or something about the reasons where I *don’t* like shell scripts. 🤔 2022-03-24T14:09:28Z (#37k22oa) @ Heh, yeah, I saw that a while ago. 😅 2022-03-24T14:11:38Z (#vpqb2dq) @ Even warmer today. I bet you’ll take a reaaaaally long hike today. 😅 2022-03-25T21:43:40Z (#wvojvbq) @ Ok, wow, 32 is probably a once-in-a-lifetime shot. 😲 👌

Looks like an awefully small puddle. Good luck, little ones. 2022-03-26T09:00:15Z (#3chj77a) I was ordering something and the parcel got missing, so I got all worked up and angry – and then I remembered this story, which puts my one single missing parcel into perspective. 🤦 „Schlimmer geht’s immer …“ 2022-03-26T09:03:08Z (#idtsqdq) @ “Captain, we have to tech the tech into the tech to avoid a tech tech!” – “Make it so, Mr. La Forge!” 2022-03-26T17:05:11Z (#idtsqdq) @ Not bad! 🤣 2022-03-26T18:10:31Z One of my favorite bands:

[Stoned Jesus – Seven Thunders Roar](https://www.youtube.com/watch?v=f2qYX69lrC8&list=OLAK5uy_np5PaIYYqU5bcUyOZNg1jyzdsTuH6tS8g)

They’re from Ukraine.

A recent “interview” with the frontman: https://insounder.org/ukrainian-musician-igor-sidorenko-there-are-no-concerts-you-could-miss-siren-behind-loud-music-and 2022-03-27T06:49:51Z (#nfldldq) @ It’s lost. Nobody knows where it is. 🤦 It was new glasses, btw, can’t avoid that. 🤓 It’s not a big drama, I contacted the shop and they re-issued the order. It mostly just cost a lot of time. 2022-03-27T08:43:35Z (#ltebqqq) @ Hmmmmmm, when you put it that way … 🤔 Maybe DST is a good idea after all: It forces our software to be (a little bit more) compatible with different timezones. 🤣

@ Well, I read this this morning: https://www.tagesschau.de/inland/zeitumstellung-maerz-sommerzeit-101.html tl;dr: a) allegedly only germans have an issue with DST, b) they still fight over “permanent DST vs. permanent normal time”, c) we don’t do anything because France doesn’t do anything? 2022-03-28T14:26:50Z (#a5uhg5q) @ That’s how it looks like in mutt: ![](https://movq.de/v/12287b4b77/s.png) 2022-03-28T14:32:01Z (#mmshy2q) @ Arch on desktops/laptops (because I’ve been using it since 2008 and I’m way too lazy for change; I’d go for Void these days, but meh, Arch works fine, too; it’s possible, though, that Arch [drops support for my CPU at some point](https://www.uninformativ.de/blog/postings/2022-01-29/0/POSTING-en.html)) and OpenBSD on servers (because of its stability, i.e. few changes; secure by default). 2022-03-28T14:35:14Z (#6ga5fga) As for “which desktop environment”: I made my own, basically. It wasn’t intentional, it just happened over time by slowly replacing all the components. For example, I wanted to learn more about how window managers work, so I wrote my own. 😅 It’s great now, everything works just the way I want it to. 2022-03-28T15:04:58Z (#kujx7ca) @ I used Windows up until XP. I originally switched to Linux because of all the security issues in Windows. Since then, though, my view has changed quite a bit. I would never voluntarily use a closed system like Windows (or macOS) again, at least not on my private machines:

- I don’t trust closed systems in the slightest way anymore (didn’t care back in the day) and I don’t want to be forced to link my private computer and its activities to some “cloud” account or whatever.
- Windows/macOS are commercial systems that constantly try to follow/create new trends/fashion. Not interested in that.
- Computers are a hobby of mine. I want to tinker with the system and I want to be able to know exactly how everything works. (This was mostly possible with Windows 3.11 and even Windows 95, and then it gradually got worse with every new release of Windows. Today, it’s a hypercomplex leviathan.)
- Since I know Linux very well now, it’s actually much easier for me to use than Windows/macOS.

I don’t know, the list probably goes on for a while. 😅

I never really think about this, to be honest. Closed systems are simply not interesting to me (except for the historical ones that I happened to have used as a kid, so they have nostalgic value). Linux and the BSDs are appealing to me, because I know that I can do whatever I want with them. 2022-03-30T13:45:25Z (#palzduq) @ The company that I work for might not be the best example (because we do a lot of things differently), but we hardly care about formal education or certificates. Some of our best employees have literally zero formal education in their field (devs, admins), many others have just the bare minimum. Only a tiny amount of people has a University’s degree. We instead care a lot more about what a person has actually *done* in the past – and this includes their spare time. In the absolute best case scenario, a candidate can show us their Git repos: Real code that they have written. We can then talk about that code and discuss it with the candidate in their interview. This (reading the code *and* talking about it with the candidate) tells us a lot more about the actual skillset and mindset of that person than any formal education ever could.

I guess it’s very different when you apply for jobs at really big companies. They get so many applications that you’re probably dismissed automatically if you don’t have certs. (The question is: Do you want to work at such a company?) 2022-03-30T17:40:31Z Hitting a road block with the Braille thing: I ran out of training material. I’d need to acquire a book in Braille (you can’t just buy these on Amazon or something …) or an actual Braille terminal for my computer (costs thousands of Euros). Hmm …

But so far, I’d say it’s much more doable than I thought.

Of course, modern websites that are riddled with JavaScript will be impossible to use. My banking website, for example – I don’t see how that’s ever going to work. 2022-03-31T17:16:51Z (#palzduq) @ I’m not really sure I understand the question. 🤔 😅

Here’s a hypothetical example. Let’s say you’ve written a little blog software in Python/Django. You’ve never actually used that software to drive your blog, though, you still use Wordpress. I’d call this a “practice project”. It’s only 20-30% interesting to me, because we can’t talk about how your program evolved:

- Why did you choose Python as a language and Django as a framework? Do you have prior experience in that area? What did you use before?
- Have you hit any major obstacles while writing your program? Which ones?
 - Did you have to refactor parts of it?
 - Did you run into performance issues?
- In this case, it’s software that runs on a public server (a public blog), so how about security? (Like, if that blog has an admin area, we can talk about how you prevent other people from accessing that …)
- Is there a test suite?
- Did you use any “project planning tools” or methodoligy? (To me, personally, it’s not really important to follow a particular method, but it’s still an interesting topic.)

And so on. You can only answer any of that if it’s an *actual program that you use* (and not just a practice project).

Is that … does that answer your question? 😅 2022-03-31T17:22:08Z (#palzduq) Actually, let me rephrase that a bit: That’s not a standard set of questions that we ask our candidates. I actually had to think for a while to come up with these specific questions. 😅 The point is: You can talk about that stuff *naturally* when you talk about a real project that you wrote and that you really use. And this conversion then tells us a lot about how you work. 2022-03-31T17:54:31Z (#l3w3z6a) @ That’s what I call Australia, too. 🤣 2022-04-01T12:30:45Z (#uzy3ora) @ “Critical mass” is probably more of a personal thing with twtxt, though? There’s only so many feeds that *you* can follow. Above a certain level, you probably need tools and filters, because you can’t read it all manually. 🤔 2022-04-01T12:31:56Z (#w4szh7a) @ That is a *great* shot. 😳 Very balanced lighting. What camera is that? 2022-04-01T13:49:44Z (#obbvbga) @ You mean no X11? Usually not, no. On nixers.net, there’s the [Week in the TTY](https://nixers.net/Thread-A-Week-In-The-TTY) every now and then, and I’ve done that a couple of times. On modern Linux, you actually have a framebuffer device, so you can watch videos (including YouTube) even when there’s no X11 running. And with [GPM](https://en.wikipedia.org/wiki/GPM_(software)), you get copy-and-paste, too. It’s actually not that bad – if it weren’t for modern web sites. 2022-04-01T13:51:05Z Now we’re having snow, too, but I doubt that it’ll stay. ⛄ Temperatures have dropped by 20°C in the last couple of days. 2022-04-02T18:01:29Z Maybe I should get me a bow, just for the lulz … Jesus, how amazing is that: https://www.youtube.com/watch?v=e4McVxHYg24 😳 2022-04-03T06:15:33Z (#5ga53xq) @ Haha, no. 😁 I’m not really into archery. Tried it once, totally destroyed my hands. And it was very weird, because aiming at something accurately is very hard or next to impossible? Even the instructor said: “You can’t really aim, just follow your gut.” And, well, he did indeed not hit a lot of the targets. Maybe the course was just garbage, dunno. 2022-04-03T06:31:30Z (#63iwr2q) What the guy said was along these lines: https://www.youtube.com/watch?v=Y-RnSsP3ix8 I guess it makes some sense … but this really weirds me out for some reason. 🤣 2022-04-03T18:43:41Z (#5rgfyba) Funny how the author doesn’t mention Usenet at all. Instead he praises web forums. Forums were constantly ridiculed by the old timers who were very active on Usenet, “but these days, only shitty web forums exist”.

Things just shift. I wonder if there’s going to be a point where we all collectively miss reddit, because it has been replaced by something else. 2022-04-05T18:54:37Z (#5ga53xq) @ Ha, look at that! Yeah, making your own bow sounds exactly like your kind of thing. 😁 Have fun!

(I bet that mention of @ didn’t go through. 🥴) 2022-04-05T18:55:20Z (#lpmrc3a) @ The worst thing about this is that it’s from 2012. 2022-04-05T20:03:05Z Seeing that you’ve made progress at learning something is the best feeling ever. 😍

I bought that smaller bass guitar a while back. My hands are not that huge, so I had some trouble on a much larger long-scale bass (i.e., a “normal” bass). I just couldn’t stretch my left hand wide enough and my pinky finger was very weak.

That short-scale bass indeed allowed me to practice more easily. I stopped worrying about “small hands” or “weak fingers”, and just focused on practicing *finger control*. And now I’m starting to see the results. 😊

Even more so, I’m way more comfortable on my large bass as well. All those stretches aren’t that much of a problem anymore. The funny thing is, I ever intentionally practiced stretching – I just practiced moving my fingers in a relaxed and neutral position. And now that my brain is starting to learn how to do this stuff, stretching isn’t that big of a deal anymore, either.

As for “weak fingers” … this was an eye-opener: https://www.youtube.com/watch?v=S_RdSSQeqU0&t=115s Yup, there is more than enough strength. I need to learn how to *use* it, though. 2022-04-06T19:13:30Z (#nh42sfq) @ Haha, good point, this really is a rabbit hole. 😅

> If it's all so terrible (which I don't necessarily disagree), what's an alternative better approach? Gemini? Gopher?

We could go down the Gemini route: Only serve *documents*, not *applications*. That would make browsers much more simple.

However:

The browsers that we have today allowed us to move from native programs to “web apps”, so basically the browser is the operating system now. And that means things like: I can easily run Google Meet on Linux these days, because it runs in Chromium or Firefox. 25 years ago, this would have meant that “Google Meet” was a native Windows program which had to be ported to Mac and Linux and FreeBSD and what not. So I think our software world became *a lot* more platform independent. Maybe I wouldn’t be able to use exclusively Linux if it wasn’t for modern web apps.

Then the question becomes: Are browsers the only way to achieve that goal? Certainly not, just look at Java, which has been just as platform-independent for a long time. Is that any different, though? Nope, Java is a VM just like the browser is today, so the complexity just shifts. So maybe C with GTK as a toolkit – but then you’d have to provide binaries for all the OSes again.

When you look at the whole browser situation from the perspective of “let’s try to be platform-independent”, then, well, browsers just one of many possible solutions. I like to rant about browsers a lot, but they do have advantages.

Then of course, you could say that being platform-independent never was the goal of Google to begin with, they just want to control the market and push everybody else out. Platform-independent software was just a happy side effect.

There are so many aspects to this, technological and political. (And I lost my train of thought while trying to keep this reply “short”. 🤣) 2022-04-06T19:21:18Z (#n2zbynq) @ Everybody is the hero in their own story. 2022-04-06T19:23:27Z (#g7ayamq) @ If it wasn’t so damn expensive, I’d make my own printer. Or scanner. Or network switch. Or WiFi access point. Or keyboard. Or mouse. Or laptop. God dammit. 2022-04-08T13:11:28Z (#nfldldq) Lol, now this turned out to be a ridiculous story.

A month ago, I went into the shop to buy new glasses. At the end, the sales person asked me: “Should we send it directly to your home, so you don’t have to come in again?” I said yes. Because, you know, Covid and all. So the process looks like this: Go to the shop, pick a model, they fit it to your head, then they send that particular piece to their factory where they make the actual glasses/lenses, and then the final thing gets sent to your home.

But since our postal service screwed up, that parcel never arrived at my place. So I re-ordered.

Yesterday I got a call from the shop: “Your glasses have arrived!” Cool, I went to pick them up.

The girl in the shop was a bit confused, though, because … it was the original parcel. The one that got lost.

So, our postal service failed to deliver that thing to my home (twice, they said), then failed to deliver it to our local post office (I went there three times trying to pick it up, because they originally claimed that it’s there), then screwed up the package tracking (I called the postal service hotline – which took forever, fucking voice menus – and they had no idea where it was), but then they somehow were able to execute “return to sender” so it got delivered to the shop.

Remember, the original idea was that they send it to my home, so I won’t have to come to the shop pick it up. That plan failed spectacularly. 🤣🤦 2022-04-08T15:11:39Z (#nfldldq) No, just one set of glasses. The shop cancelled the second order as soon as the mysterious package arrived. 🥴 (Would have been very funny if I ended up having two sets. What would have happened? Would I have been forced to return one pair? Why, what are they going to do with it? Would I have been forced to pay for it? 🤷 Maybe I’ll find out next time. 🤣)

The world looks very weird now. It’s not a good idea to change glasses mid-day. We’ll see tomorrow. 🤓

And there’s a slight blue shimmer … Must have something to do with this fancy modern coating. 🤷 2022-04-08T15:19:25Z (#ytmfkfq) @ ![](https://www.uninformativ.de/desktop/2022-04-08--win311-happy-birthday.png) 2022-04-08T17:59:08Z (#t4dyocq) @ Would you mind sharing the source code of your (Chromium-based) browser? I know that using WebKitGTK is super easy, because it’s just a GTK widget – but I’ve always refrained from doing anything based on Firefox or Chromium since they’re totally different beasts, much harder to build your own browser on top. 🤔 2022-04-08T18:01:46Z (#ytmfkfq) @ That screenshot is from a VM. I have a real installation of Win 3.11 on my other machine (like https://movq.de/v/6d901477b2/IMG_2869.JPG – I think I posted these a while back), but I was too lazy to boot it just for that screenshot. 🤣 2022-04-09T05:31:49Z (#jdqchtq) @ Heh, well, so it looks like the warnings on https://wetter.tagesschau.de/unwetter/ were correct then. 😁 Must have been cold as heck, especially when wet … 🥶 2022-04-09T05:36:53Z (#ytmfkfq) @ There’s Opera, too, if you prefer: https://movq.de/v/e652e37023/IMG_2872.JPG 😅

@ Yeah, quite a bit nostalgic over here. 🥴 But it’s not like I have a museum of old PCs, it’s just that one machine. And if it dies some day, then it’s over. 2022-04-09T05:46:14Z (#ytmfkfq) @ Speaking about networking: I think we did not yet have internet access back then. 🤔 There were local mailboxes / BBS systems, but I only really remember browsing the web with Windows 95. 🤔 Memories are pretty fuzzy, though.

That machine you see in the photos is not the original setup. I re-installed this around 2007, I think. 2022-04-09T05:47:37Z (#mckjpjq) @ 64 kiB/s? Now that’s a number I haven’t seen in a while. 😳 2022-04-10T09:36:21Z (#nfldldq) @ Pretty much acclimated, yeah.

The sky? Every time I look at the sky, it’s black. 🌃⭐ 2022-04-10T17:01:50Z (#g6k5fea) @ In which way did it break? 🤔 2022-04-11T13:11:17Z (#rgmw5ma) @ “just” 2022-04-11T13:14:12Z Electrostatic discharge is an issue here, especially with low air humidity. A few moments ago, I went from the kitchen back to my desk, then ZAP, so hard that my X11 server shut down. (Why or how it decided to shut down, I have no clue. All logs just say “server shutdown”.) 2022-04-12T12:51:24Z Problems of modern PCs, part 479283: [Bootloader doesn’t use the correct GPU](https://lists.archlinux.org/pipermail/arch-general/2022-April/049666.html) 2022-04-12T12:51:50Z (#rklcjea) (I had a typo in there at first, I wrote “CPU” instead of “GPU”. I wonder when that is going to happen.) 2022-04-12T12:54:43Z (#duevkhq) @ … that is a tick? Phew, I didn’t remember them being so large. 😳

And look at that, yet another cabin in the woods! 😅 2022-04-12T18:52:03Z (#nfldldq) I just got an email from our postal service which says that my package will arrive in a couple of days. What kind of clusterfuck is this? 2022-04-12T19:41:12Z (#nfldldq) @ That would be the best case scenario, ’cause it would mean that they know what they’re doing … 🤣 2022-04-13T13:31:11Z (#nfldldq) @ I see! 🤔 That would explain why the glasses are better than expected. (They are a replacement for another set which broke, so they have the same dioptres as the old ones – and yet the image is sharper than before.) 2022-04-13T13:32:15Z (#obbvbga) @ Ah, crap, taxes. I should start doing them, too … 2022-04-13T13:35:51Z (#nfldldq) Meanwhile … That mysterious second package should have been delivered today. I saw the delivery car on the street. Then the car left. Since that exact moment, the shipment tracking says: “The shipment could not be delivered.” Aha, thank you. 2022-04-13T13:40:53Z After many, many, many heated discussions over the last years, “Kiev” has now been renamed to “Kyiv” in the timezone database: http://mm.icann.org/pipermail/tz/2022-April/031381.html 2022-04-14T11:43:52Z (#obbvbga) @ It depends a lot on your circumstances, but it’s true: For me, it’s rather easy. I still don’t like doing it. 🤣 2022-04-14T13:20:02Z (#nfldldq) I am *pretty* sure you can guess what happened next … https://movq.de/v/b8df127c10/s.png 2022-04-14T13:24:12Z (#nfldldq) The best thing about this: I just called the shop and they said I should just keep it, because they’d simply have to throw it away … 🤣 2022-04-14T17:15:17Z (#hxlxoga) @ Lovely summery shots with great lighting! 😊

Those are chestnuts, right? Reminds me of https://en.wikipedia.org/wiki/The_Chestnut_Man 😅 2022-04-14T19:27:22Z (#y56yyoq) @ Ah, there he is, the little bugger! Quick, follow him, so we can finally find out where he hides those pesky eggs … 🐰 2022-04-15T17:05:14Z (#hfvas7a) @ Also wenigstens heute am Carfreitag hätten sie es ja mal machen können. #BadumTss #IHeardYouLikeDadJokes 2022-04-16T14:31:14Z Do people still consume blogs and such via RSS/Atom, btw? If not, then what else? 2022-04-16T18:24:46Z (#tl3gdha) That’s good to hear. I sometimes panic and think that feeds might be dead. 😅 2022-04-16T18:25:36Z ![Today’s full moon rises.](https://www.uninformativ.de/pics/photo/astro/2022-04-16--IMG_3356-full-moon-rises-scaled.jpg)

(Could use more contrast and more dramatic lighting, but I didn’t want to edit this.) 2022-04-16T18:30:58Z (#nv7jn7q) @ Does that include a landline phone? Or just a cellphone? 2022-04-17T19:52:59Z (#x4uxzcq) Thanks!

Just one day later: The moon now rises about a whooping 84 minutes later, so it’s way past sundown – and everything is too dark to make a good shot. I either get a [white ball](https://movq.de/v/01e999d3e5/white.jpg) with some buildings visible, or a [nice-ish moon](https://movq.de/v/01e999d3e5/black.jpg) and the rest is black. 🥴 2022-04-17T19:56:39Z (#exbqzwa) @ Welcome to nixers, I guess. 😅 2022-04-18T18:24:21Z (#x4uxzcq) @ Yup, the moon is too bright – at least for my camera. It was quite the spectacular site for the naked eye, though. I wish I would be able to capture that with a cam. Needs some HDR magic. 🤔 2022-04-18T18:30:39Z (#bp6l7ba) @ Ohh, great shots! Love all that green. Poor froggy, though.

I nominate 08.jpg and 39.jpg for wallpaper candidates. 😊 2022-04-20T13:27:25Z (#cqgl4yq) @ Wait, what? Ads? My Netflix doesn’t have ads. 🤔 2022-04-21T15:21:13Z (#6uhmw4q) @ Ugh! 😡 I hope it doesn’t come to that. That might finally push me to cancel my subscription. 2022-04-21T19:55:25Z [Rust9x: Compile Rust code for Windows 95, NT and above](https://seri.tools/blog/announcing-rust9x/). 😅 This might actually come in handy. 2022-04-21T19:58:35Z (#igudava) @ 🥳 Has it been 6 months already? Time flies. ⌚ 2022-04-21T20:00:13Z (#igudava) @ Look at that, there’s finally a seq(1). 🤔 I wonder what changed their minds. 2022-04-22T16:15:39Z (#igudava) @ https://man.openbsd.org/jot.1 usually 2022-04-22T16:17:10Z (#rmhwrxq) @ Who knows, maybe some day! DOS has a bright future! 😅 2022-04-24T07:43:50Z Oh dear. I’ve been really busy these past few days with a blog post of mine that ended up on the frontpage of Hacker News and, thus, blew up in my face. Not a pleasant experience. I need a break. 2022-04-24T07:46:15Z (#3ne7d5a) (To be fair, it was kind of an emotional rant. I never expect anybody to actually read this … but here we are. Lesson learned.) 2022-04-24T09:03:10Z (#wdfcqqa) @ Sounds like a relatively smooth transition indeed. Good thing that you were already using i3. 2022-04-24T09:39:14Z (#3ne7d5a) @ Not sure if it’s a good idea for me to link this again 😅, but it was this one: https://www.uninformativ.de/blog/postings/2022-04-21/0/POSTING-en.html 2022-04-24T16:57:37Z (#t3e4s2q) @ As long as you don’t hold them as a pet … “Du hast ’ne Meise!” 😅 2022-04-24T17:07:21Z (#3ne7d5a) @ The storm happened in my inbox and in the comments on HN, yes. (I made the mistake of trying to read the comments over there, because I was curious to see if I had overlooked some essential part. Maybe I was just missing something. I didn’t find much enlightenment, though. 🫤)

You have a good point regarding exceptions. 🤔 I was thinking solely of libraries and their API here. That’s where the-Java-way was helpful to me. But yeah … 2022-04-24T17:09:28Z (#t3e4s2q) @ One of my favorite bird names is [Basstölpel](https://de.wikipedia.org/wiki/Basst%C3%B6lpel), btw. I can relate to that! 🤣

(The literal translation into English would be “bass idiot” or “stupid bass player” or something like that.) 2022-04-24T18:30:08Z (#3axefza) @ Oof, thank god. 😌 2022-04-25T19:51:21Z (#3ne7d5a) @ Yes, very much undesired. I didn’t post it there myself, I don’t even have an account there and I hardly use these platforms. Someone else posted it. Not gonna lie, though, it was exciting at first. 😅 Then the negative stuff and the insults started pouring in …

You’re right, negative voices make more noise. I guess positively minded people just don’t want to interact too much with “haters”, do they? Just walk away, let them rant, and try to spread positivity some other way. ✌

(That’s something that I regret: The original text was very negative and waaaaay too dramatic. I generally don’t want to publish stuff like that. It just happened, though, it was a mistake. And of course, people pick up on that … I’ll probably delete that version soon. It’s not good, I don’t want it around.) 2022-04-25T19:53:26Z (#xunmtbq) @ Oh dear, now that I see that: It has been *ages* since I’ve been around a real fire. 😳 I miss that. 2022-04-25T19:53:50Z (#twsfiga) @ That’s one of the drunk posts, isn’t it? 😂 2022-04-25T19:57:40Z (#l3fhzqq) @ A custom script around [feedparser](https://pypi.org/project/feedparser/), it turns feeds into mails. (mutt is my “information hub”, that’s also why twtxt ends up there.) It has a few bugs, I’m just too lazy to switch to [sfeed](https://codemadness.org/sfeed.html), because it “mostly works”. 😅 2022-04-26T16:26:38Z There is a hype around Blåhaj, which I never quite understood: https://www.ikea.com/us/en/p/blahaj-soft-toy-shark-90373590/

I got my hands on one of those today. It is *gloriously fluffy*. 😲 🦈 2022-04-26T20:21:12Z (#6bmld3q) @ Hm, I’ve seen lots and lots of these things on Mastodon – and some of my coworkers have like 2473 of them. 🥴

Not sure I’ll buy one, because Ikea is a long-ish trip from here … and, ugh, I already have lots of Tux plushies and I’m not sure if I need *more* plush animals at my age. 🥴

But that thing sure is fluffy as heck. I almost wonder how they do it. 2022-04-26T20:24:36Z (#rynwiqq) @ The twtxt / Yarn community is still tiny, comparatively. I guess it’s *our job* to mention it … 😅

(Also, I get the impression that people have a hard(er) time understanding federated systems. It worked very well with Email back in the day, but all the newer stuff often seems to bamboozle people when I try to introduce them to it …) 2022-04-26T20:32:25Z (#3ne7d5a) @ I just read it again, too … yeah, I can’t spot most of the drama anymore, either. Bah, confusing. Good thing I’m not a writer for a living.

What the original version certainly does, though, is having a “condescending” tone. Or rather, it creates the impression that I know everything and that I’m telling you what’s right and what’s wrong. That’s probably not very wise. 🥴 The second version focuses more on how those type hints just don’t add up with *my expectations* (at least that’s the goal).

Gah. Deckel druff. Gonna play some bass, yeah! 😅 2022-04-26T20:33:49Z (#t3e4s2q) @ Weiß der Geier! 😂 2022-04-26T20:50:42Z “Our gig is 36 minutes long … alright, let’s play two songs” 🤣 🤘 🎸 // Om - Live at Amoeba Records // https://www.youtube.com/watch?v=2SDOwgCKb1M #NowPlaying 2022-04-26T21:24:08Z (#ht5xqba) @ That’s a tough question. On the surface, apparently an unwillingness to accept the status quo. “That sucks, I’ll fix this.” But on deeper levels, i.e. why or how that happens (brain chemicals), I have no idea … 🤔

Did you find any answers? 2022-04-27T16:08:32Z (#t3e4s2q) @ Ohhhhh, I didn’t know either of that! Again what learned. 🙃

Birds nesting in the head? Easily fixable: Crack open the skull, free the bird. Problem solved! 🫠 2022-04-28T06:12:45Z (#6bmld3q) @ I’m strongly against animal cruelty. 🤣 2022-04-28T06:24:34Z Back at the office. Apparently, Covid is over: Lots of people, most don’t wear a mask.

Also: Boom, I’m making overtime. 🤪 “Nah, alright, I’ll just quickly finish this up, before I hit the road for my 1h drive.” 2022-04-28T06:25:27Z (#vqofyyq) @ Indeed! I didn’t know what to expect when I joined, but it turned out pretty well! 💚 2022-04-28T19:32:00Z I’d love to play upright bass. Neighbors would kill me, though. Should I save for this beauty? 🤪🤑 https://www.thomann.de/intl/yamaha_slb_300_silent_bass.htm 2022-04-28T19:41:05Z (#6vkgdxq) The real deal: https://www.youtube.com/watch?v=qYuXOGhxa_8 😍 2022-04-28T19:42:08Z (#6vkgdxq) This is the closest I can get to emulating that sound (with my cheap electric bass guitar for 80 bucks 🤣): https://movq.de/v/84e1de1010/b.ogg (headphones required) Meh, kind of, but not really … Requires a bit of trickery and an awkward position to play in. 🫤 2022-04-28T19:44:31Z (#7w4hniq) @ D’oh! Batteries are the worst. Always empty when you need them. 2022-04-28T19:54:17Z (#ig5mrmq) @ Heh, “proof of wasted energy”, I’m gonna use that term from now on. 👌 2022-04-30T05:55:07Z (#6vkgdxq) @ There are cheaper ones, but that’s the only model that I could find which actually sounds like the real thing (or close to it). I might save up for one of those (still 600 bucks), maybe. 🤣 Dunno, this is all just for fun. 😊✌ 2022-04-30T06:12:23Z (#r7qmfyq) @ Is it just that one day or are you going back to the office regularly? By the way, does you office have windows that you can *open*? Many of our rooms don’t. 🥴

Offices were a necessity in the past, but we should get rid of them wherever we can … Especially the IT field. I only went there last week to work on a network switch, couldn’t be done remotely. (So I’m not back 100% and I hope that I can avoid that.)

As for your flextime account, that’s not a good sign. 😟 (Unless you thouroughly enjoy your work with all your heart, of course.) Is it at least paid good (or paid at all)? I used to do lots and lots of overtime, but this really wears you down over time and then the quality of your work drops to 0 … 2022-04-30T11:01:35Z (#hxlxoga) @ Huh, look at that. So my guess “chestnut” was very wrong then, eh? 🤣 2022-04-30T11:04:43Z (#jwkfiqq) @ Write a bot and find out. 🤓 2022-04-30T11:31:08Z (#r7qmfyq) @ So then it’s the first meeting you guys have after a very long time? I bet you won’t get *anything* done, because everyone is so focused on socializing – that’s what happened to us. 😅 I wouldn’t be too worried about people wanting to do this every week. I think they’ll quickly realize how annoying and silly it is to be stuck in traffic.

Ah, it’s the same here, the teams decide how/where they want to work. This is really great and I hope this becomes the new standard in our field. You could easily take a job at a company at the other side of the country. Wouldn’t that be awesome?

People have to learn how to use a damn chat, instead of just coming to my desk or shouting across the room. I don’t know where this culture comes from 🤔, even though I did it myself in the past … 2022-04-30T11:33:08Z (#oyczkbq) @

> Now we changed office rooms in the meantime. Twice. Without being even in the office ever since. A moving company moved things around for all of us.

What?! 😂 That must be a pretty big company … 2022-04-30T11:36:13Z (#22pdtoq) @ ImageMagick maybe?

```
for i in *jpg
do
 convert -strip -quality 50 -resize '>640x480' -auto-orient "$i" "$outdir/$i"
done
```

I create my “galleries” using [this](https://uninformativ.de/git/html-index) happy little accident. 2022-05-01T16:46:32Z (#r7qmfyq) @

> As a bonus the greenhorn gets extra introduction into the project via this "sidechannel".

That’s a good point. 🤔 I tend to forget about newbies – our team rarely gets new additions and I, myself, haven’t been in that position for a decade. 😂

> you can work much more concentrated on a subject. That's what I really, really enjoy. No more background noise

Absolutely. I really love that. 😊 And it goes both ways: I like to walk around while thinking, which is hardly possible in an office. At home, nobody cares. So, not only does nobody interrupt me, *I* don’t interrupt people, either.

(It’s almost like the infamous Großraumbüro was the worst idea ever. 🤣) 2022-05-01T16:47:23Z (#jyqgjhq) @ Heh, you’re welcome. ImageMagick has so many flags and features, it’s hard to know them all … 2022-05-01T16:48:54Z (#22pdtoq) @ You’ve probably already seen it without knowing it. Some examples:

- https://www.uninformativ.de/pics/index.html
- https://www.uninformativ.de/desktop/

It’s probably not good on smartphones or tablets – because I use neither of those. 2022-05-01T16:50:14Z (#7kxa5vq) @ Whoa, the ocean. Haven’t seen that in a while. 😳 Is the water still warm? 2022-05-01T17:03:15Z Came across some of my older LaTeX documents. God, I really miss math and physics. If I won the lottery, I’d drop everything and go back to university – to study those properly, not just as a minor subject. 🥺 2022-05-01T19:27:12Z (#22pdtoq) @ Sure, go ahead. 😊 I’m looking forward to that tool of yours! (Although I’ve mostly given up hope that non-tech-users, i.e. my family, might use it. Google/Apple is just too convenient for them.) 2022-05-01T19:27:48Z (#7kxa5vq) @ Wahaha! Well, now she knows. 😅 2022-05-01T19:29:57Z (#knvl3sa) @ Good old LyX. 😅 I’ve never really used it, though, I was a heavy [Geany](https://www.geany.org/) user back then. 2022-05-01T19:32:52Z (#hr7xmca) @ @ Yup, that would be me, hello. 😁 👋 2022-05-01T19:37:22Z Song of the weekend. Having so much fun playing this. 😊🎸 // Bob Marley - Stir it up // https://www.youtube.com/watch?v=S3UqvWk8-uw #NowPlaying 2022-05-01T20:18:54Z (#knvl3sa) @ No idea, this was before I finally switched to Vim. 😅 There appears to be a [plugin](https://plugins.geany.org/vimode.html), but I’ve never used it. 2022-05-01T20:19:22Z (#at5jmqq) @ Happy birthday 🥳 2022-05-02T13:16:37Z (#22pdtoq) @ The Git repo browser is [stagit](https://codemadness.org/stagit.html) with a few local patches. I run it locally and then rsync everything to the server. Saves me the need to run (and maintain) any server-side software except for httpd itself. It does have some drawbacks, though, like not displaying images. 2022-05-02T13:29:40Z (#knvl3sa) @ Which heavy dumpster fires? LyX or Geany? Then yes. A Makefile and a text editor of your choice will do the trick. Actually, this is how I’ve used LaTeX most of the time.

*But* if you consider Geany a heavy dumpster fire, then LaTeX might not be the right tool for you. 😅 LaTeX is pretty large and, sadly, pretty slow. The results are awesome, but it’s far from being lightweight.

If you’re looking for an alternative, troff could be interesting. Seninha gave a talk about it at the nixers conf last year: https://nixers.net/Thread-Nixers-net-Conf-2021 2022-05-03T16:06:33Z (#gneet3a) @ Don’t worry, I took it seriously for a moment, too. 😂 2022-05-03T16:15:29Z Driving to the office feels absolutely bizarre now. This car traffic … everyone acts like it’s a race track. Sheer egoism, everywhere you look: “I won’t let YOU pass, who do you think you are?!” It’s probably always been like that, I’ve just grown blind to it over time. 😳 2022-05-03T16:15:50Z Erstma’ ’n Schnaps. 2022-05-03T19:20:21Z (#7kzz5ua) @ Hopefully not. 😅 I have to do some networking stuff on-site. That’ll hopefully be finished on Saturday. After that, I’ll try to go back to working from home. 2022-05-05T15:40:33Z (#7kzz5ua) @ Nah, there’s now “weekend bonus”. It’s paid overtime, yes, but the same as every other day.

Bah, that train story of yours … How long is the ride? And you did that every day before Covid? 2022-05-05T15:47:24Z (#zk3mema) @ Ha, I love that idea. First time I hear about something like that. 🤔

(Original link: https://johnpublic.mataroa.blog/blog/the-asshole-test/) 2022-05-05T16:32:53Z (#vgdnc6q) @ I’m only 17 minutes into the talk, but that is suuuuper interesting. 😳 2022-05-05T17:35:22Z (#ffmtsva) @ Hail? All the car owners: 😱😱😱😱😱😱😱😱😱😱😱😱 2022-05-05T19:46:25Z (#7kzz5ua) @ Errr, yes, it’s a “no”, not a “now”. I mean, it’s still flextime, so I’m going a little slower this week or next week. So at least there’s that.

Your situation sounds “lovely”. It’s very similar here when using public transportation (1:00-1:30 hours for one way). The sad thing is, using a car really is a lot faster here: Best case is 20 minutes. And it’s usually realistic to actually complete that trip in 20 minutes if you avoid the rush hours – which I can, see “flexibility” above. (Well, unless thing’s don’t go my way and I miss the golden window. 😅) Best case with public transportation is still roughly 1 hour. The reason is simple: It’s just 16km, but the bus does not use the highway but crawls through the inner city.

Commuting just sucks. 🤣

(Also, lol @ “even bummeliger Bahn” 😂) 2022-05-05T19:47:26Z (#5pxpbsa) @ Gah, teeth are the worst. I hate them so much. 🤣 All the best to you! 2022-05-06T09:45:40Z (#ha7mmmq) @ 🤤 2022-05-06T09:48:12Z (#vgdnc6q) This is definitely going to be my next pet project. 😊 (As soon as my energy levels are no longer at 0%.) 2022-05-07T15:00:31Z (#opev6mq) @ @ IIRC, this was done deliberately: The fragment in `feed_prev` is relative to the feed you’re currently fetching. Think multi-protocol feeds here.

Could you elaborate what you’re trying to do? 🤔 2022-05-07T15:03:26Z Well, that was a horrible day at work (on this lovely Saturday). Rack too small, room too small, shitty cable management, can’t even access the back of the rack, lots of swearing, took way longer than expected, … 😮‍💨 2022-05-08T05:25:38Z (#opev6mq) @ So the point is: When you move from one pod to another, you start *afresh* on that new pod? You don’t take your current feed and the archived feeds with you?

Example:

- 2022-01-01: Starts twting on foopod.example.com
- 2022-02-01: Moves to barpod.example.com, puts `prev = $hash foopod.example.com/twtxt-old-$hash.txt` in header of new feed at barpod; actual feed at barpod.example.com starts empty

Is that it? 🤔

(If yes, then this raises another question for me: What if I want to move from one pod to another and want to keep my entire feed? That’s would I, personally, would want. Like, when I open an account on a Yarn pod, there could be an “import this twtxt file” feature – dunno if that’s already possible.) 2022-05-08T05:29:48Z (#zitnbvq) @ Yeah, it’s paid overtime, luckily. 2022-05-08T05:31:54Z (#clv7woa) @ The feed is not (yet) linked on your page, is it? 🤔 2022-05-09T14:10:56Z (#opev6mq) @ I’m not 100% sure yet if I understand the use case correctly. 🤔 Is this for setups where you can’t install redirects on the HTTP level? (Or maybe I’m just too dumb and the other guys understand it. 😅) 2022-05-09T14:12:44Z (#zitnbvq) @ Mostly, but I have some more debugging to do. Means: More time in the office. 😑 2022-05-09T14:13:54Z (#clv7woa) @ Ah, thanks, I missed that. (Yup, `` would be very handy – even though the major browsers ignore it these days …) 2022-05-09T14:21:25Z (#duqvxja) @ I’ve never seen a bike like that. 😲 Actual *chairs* instead of those tiny saddles – is that as comfortable as I think it is? 😅 2022-05-09T14:37:04Z (#7kzz5ua) @ Whoops, I forgot about that reply. But now that you’ve mentioned bikes in the other thread, I remembered … 😅

This is the height profile that Google has calculated: ![](https://movq.de/v/f381ca3895/s.png) Looks exhausting, if you ask me. I never tried, though, I don’t even own a bike at the moment.

Fun fact: It’s 21km if you’re going by bike. *Everything* is optimized towards cars. I wish they would just dedicate one lane on the highway for bikes and the other lane has a limit of 30kph. Or something like that. 😐

And then, when I arrive at the office, I’d have no idea where to put my bike. If it’s just me, I’d find a spot, sure – but what if everyone does it? Turns out, it’s a [bit of an unsolved problem](https://www.youtube.com/watch?v=9HdqTZs3vjU). (But hey, if we *wanted* to do this, if we *wanted* to get people to use bikes, we’d find a solution. Even those underground parking garages in the video sound like a dream to me.) 2022-05-11T05:23:06Z (#7kzz5ua) @ It’d take a bit over an hour, they say. So they’re assuming a speed around 16kph – is that realistic?! 😅

Right, going with a bike on a highway isn’t going to be fun *if* things stay as they are now. But imagine the number of cars reduced to 10% and they’re only allowed to go ~30kph or maybe 50kph … Yeah, it’s never going to happen, I know. 😑 2022-05-11T05:28:29Z (#7tdwgdq) @ God dammit 🤣 2022-05-11T05:31:03Z (#stlehta) @ I don’t think it went wrong. That’s the best you can get if you can’t change the exposure time. 😅

(And if you *can* change it, you’ll see nothing but the moon, no clouds anymore. Boom, you have to go for HDR. It’s really not that easy to take pictures of this little rock floating through space.) 2022-05-11T05:32:41Z (#eawyw6a) @ Working fine on my end. 👌 2022-05-13T13:39:12Z (#3gtuw3a) @ What the heck, that’s crazy. 😁 2022-05-13T17:52:43Z [Kloidt ze di Penussen!](https://www.youtube.com/watch?v=6pSVrPNxvbY) 😂 #GermanKabarett 2022-05-15T05:56:46Z (#itqyskq) @ Me neither. I just knew him from "Die Anstalt" and such. (Honestly, I'm not sure if it's my cup of tea, because they literally focus a lot on *reading* stuff ... I like it more when they're speaking freely. %) 2022-05-15T05:57:03Z (#gioykcq) @ That sure is a lot of water. :o 2022-05-18T12:42:26Z (#itqyskq) @ Nah, I meant Tresenlesen. They did a reunion recently: https://www.youtube.com/watch?v=ghkLLpXyols So it’s really mostly the two guys sitting there and reading from their notes. 🥴 (It’s still good, though!) 2022-05-18T12:43:11Z (#itqyskq) @ … and, yeah, I didn’t follow Die Anstalt for quite a while, either. I think it got too depressing at some point and then I stopped. 😅 2022-05-18T12:49:01Z Spent the last few days debugging network issues at work.

Exhausting. You never get a full picture. You poke a little here, poke a little there, … Form a hypothesis and test it. Eventually, maybe, you can narrow it down a bit to some segment or even some component.

A very time consuming process. Even more so if you try not to cause downtimes for your users.

I want a magical device that allows me to look inside a cable/fibre.

But hey, at least we got rid of a bunch of Cisco switches in the process. So there’s that. 2022-05-18T19:46:35Z (#j2hiwdq) @ Lovely! 😁 I wonder which distro that is. It’s a pretty new kernel and it’s running systemd, so it can’t be something ancient. 🤔 2022-05-19T13:07:34Z (#j2hiwdq) @ Nice, thanks! 2022-05-19T13:11:50Z (#m6xngra) @ In this particular case: Figuring out why a switch decided not to forward ARP broadcasts to certain switch ports. Like, you connect two devices to the switch ports 3 and 4 and they can `ping` each other – but when you move one of them to port 5, no `ping` anymore. So, rather low-level stuff.

Or, we have another switch that intermittently doesn’t respond on its management IP anymore (even when you connect your laptop directly to the switch with no other networking hardware in between). I still haven’t figured out this issue. 2022-05-19T13:12:23Z (#jjjxnzq) @ 🤣 2022-05-20T12:25:40Z (#m6xngra) @ I’ve tcpdump’ed and wireshark’ed the shit out of this. 😂 It’s not very helpful. I’d need to gain insight into the decision making of the switch itself. *Why* does it drop certain packets? That’s almost impossible to find out (unless it happens to be included in the switch’s logs, which it usually isn’t).

Like @ said, it’s usually some kind of misconfiguration. Hence you begin to dump the entire switch config into a file and then run `diff` against the config of a working switch. 🤣 Sometimes this approach works, sometimes it doesn’t …

We recently changed from Cisco to [MikroTik](https://en.wikipedia.org/wiki/MikroTik) switches. At least those switches offer some kind of basic API, which means we can configure them via our config management – instead of using the switch’s web UI or SSH, like some cave men. That should make our life much easier.

Honestly, all the switches I’ve seen so far were total crap. So far, MikroTik is the best thing. Maybe there are actually good switches out there, but they probably cost a *ton* of money, and we can’t afford that. 2022-05-20T12:26:07Z (#m6xngra) @ Sad but true. 🤣 2022-05-20T12:27:01Z So, monkeypox. Surely, that won’t be the next pandemic, eh? 🤣 😭 2022-05-22T09:25:56Z (#m6xngra) @ IIRC, we gave Juniper a try a while back. 🤔 Something wasn’t right, but I don’t remember anymore what it was (probably the API not being available or not good enough?). 🫤 But this was 5 years ago or more, maybe it has changed …

I hope we can stay with MikroTik for a while. Changing switches is not that much fun. 😂 2022-05-22T09:30:27Z (#lz6e7ra) @ To be honest, I’m not doing that much computer stuff at the moment. After work, I’m usually heading right for my bass. 👌 (Or Netflix. 😂) 2022-05-22T19:41:37Z Buckle up, @ (and maybe @). More heavy thunderstorms are on their way. 2022-05-24T18:46:12Z (#2vspqoa) @ People sure are donating quite a lot. 😲 Is it useful stuff? I hope they don’t just dump their old garbage on you. (Although it might be hard to tell sometimes if things are still useful …) 2022-05-24T18:46:59Z (#sstu4eq) @ I’m happy with “some rain”, too. They issued official warnings for that day – but it really wasn’t bad over here. 👌 2022-05-24T18:53:29Z (#5jmg2aq) @ Why is anyone taking this stuff seriously? 🤔 2022-05-26T10:11:44Z (#2vspqoa) @ Yes, exactly, I noticed lots of “decoration crap” on those photos, that’s why I asked. 😅 Sounds like a nice bell curve distribution of people.

(I just realized I never heard of an event like this in my area. Hmm.) 2022-05-26T10:25:29Z (#w3pw2vq) @ Oof, that’s a big boi. Also, nice lens flares. 👌

That caterpillar took me to this interesting thing: Apparently, some butterflies only eat when they’re a caterpillar. Once they turn into a butterfly, those species can’t eat anymore. They then die after a week or so. 😳

https://en.wikipedia.org/wiki/Saturniidae#Adults
https://de.wikipedia.org/wiki/Glucken_(Schmetterlinge)#Lebensweise 2022-05-27T18:06:30Z IIRC, I didn’t really understand his [first video](https://www.youtube.com/watch?v=bHIhgxav9LY) on this topic, but this one, I can get behind:

[How Electricity Actually Works](https://www.youtube.com/watch?v=oI_X2cMHNe0)