# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 6523
# self = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=6396
# next = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=6496
# prev = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=6296
@movq I fully agree with you on https://www.uninformativ.de/blog/postings/2025-07-22/0/POSTING-en.html!

Although, in the first screenshot, the window title background is much darker in the new version than the old one@1@1 :-P Kidding aside, the contrast in the old one is still better.

Also, note the missing underlines for the Alt hotkeys now. I just think that the underline in the old one is too thick.
@movq LOL! No, I mean Wayland.
Of course, @kat! But I'll first write some instructions (hopefully this week) and then let you know. :-) Should be much easier then.
I have a Python script that transforms the original YouTube channel Atom feed into a more useful Atom feed by removing the spam description and replacing it with the video duration, filtering out videos by title, duration, etc. I just updated it to exclude the damn Shorts garbage more efficiently. Finally, YouTube updated their Atom feed generation, so that the video URL contains /short/ if it's of this useless kind. Never thought that they ever actually will improve their Atom feeds. Thank you, much appreciated!
@javivf Perfect, it's fixed! :-)
Hi @javivf, your TLS certificate ia broken:

> certificate is valid for cluster029.hosting.ovh.net, not adn.org.es
@movq Oh boy! Fingers crossed.

That's what you get when playing with bleeding edges. :-D
@kat I have absolutely no idea, but I wouldn't be surprised if it uses the closest full image after your cut point and not the one before. Hence, the deltas between the two full images have nothing to really refer to. So, the video player just shows the first full image it finds and "freezes" the image until the video stream actually hits it.

Let me try to visualize it, | represent full images, . just subsequent deltas:


Original start of video
↓
|......|.....|........|......|..
   ↑                      ↑
   Cut point      Cut point

Resulting video:

   ....|.....|........|....
   ↑↑↑↑
   This is where it freezes         


Could be complete bullshit, though. Wouldn't be the first time that I'm wrong. :-)

I'm just curious, what exact command line do you use to cut the video?
@kat Yup, can't complain! :-)
@kat Nice use of dmenu.
@movq @kat Any text format beats a binary configuration format. However, YAML and XML are both terrible choices in my opinion. I'd prefer YAML over XML if I had to.
Folks, another unicorn vomited in our sky tonight: https://lyse.isobeef.org/abendhimmel-2025-07-19/

Beautiful colors after sunset
@doesnm Haha, nice! :-D I haven't come across this one before.
@movq That's an interesting idea. For privacy, I'd just omit the Referer altogether. But maybe this helps talking to misconfigured HTTP servers that reject requests without such a header. No clue.
@movq I only know three letters: S (...), O (---) and E (.). ;-)
@arne Das ist wie mit Kulis. Die verschwinden auch urplötzlich auf völlig unerklärliche Weise.
@movq Yeah, you can't rely on them. Anybody could just transmit whatever they wanted. Bots and spammers abuse them all the time. But maybe some older version of that page actually referenced your site. :-?
@movq X.org forever!
@bender Finally! Let's wait and see how it turns out. :-D
@arne Au, Zelturlaub klingt klasse! Bei mir ist es auch bald so weit, freu mich schon. Dank der Ausrüstungsüberprüfung im Materiallager haben wir demletzt festgestellt, dass gleich zwei Spinnen (so Metallketten, an denen die Jurtendächer hochgezogen werden) fehlen. Ein Probeaufbau – und sei es nur unter Laborbedingungen – lohnt sich in jedem Fall. Improvisieren zu können ist zwar von Vorteil, aber wenn es sich vermeiden lässt, fängt der Urlaub gleich ein wenig entspannter an. :-)
@movq I also had to laugh when I saw that. :-)
@movq Don't forget about Morse Key Monday and Teletypewriter Tuesday.
What a banger! I just came across the band Year Of The Goat: https://www.youtube.com/watch?v=H3FoOGp0jmc
@movq That's really cool! I wanted to experiment with Landlock in tt as well. But other than just thinking about it, nothing really happened.

Depending on the available Landlock ABI version your kernel supports, you might even restrict connect(…) calls to ports 80, 443 and maybe whatever else has been configured in the subscription list.
A mate visted me and we went on a few hours long hike. We came across a mythical creature in its natural habitat:

Kobold in the woods

https://lyse.isobeef.org/waldspaziergang-2025-07-12/
@iolfree Oh dear! All the best to this feller. I wouldn't want to trade places with him.
We covered quite some ground in the two and a half hours today. The weather was nice, mostly cloudy and just 23°C. That's also why we decided to take a longer tour. We saw four deer in the wild, three of which I managed to just ban on film, quality could be better, though. My camera produced a hell lot of defocused photos this time. Not sure what's going on with the autofocus. https://lyse.isobeef.org/waldspaziergang-2025-07-10/

When the sun came out, colors were just beautiful:

Meadows with a corn field and woodland on the hill
@prologic @bender That's what I thought as well, sounds way too expensive to me. But I have no idea what the prices are over here. Probably also astronomical. Campers sit around most of the time, one really would need to use them a lot to justify spending so much money on them.

But yeah, each to their own (expensive) hobbies. :-) I, for example, burn my money on tools that I don't really™ need. :-P
@bender An older Firefox on Debian.
@movq This one is too bleeding edge for me, not even my browser can render it.
@movq I couldn't agree more! It's far from easy. I'm not free of this guilt either. But I'm hardly trying.
We got some colorful spots in the sky this evening: https://lyse.isobeef.org/abendhimmel-2025-07-08/

Backlit clouds after sunset
@movq I'd love to have a Python script pushing my local CSV, too. But that's never gonna fly, not in a thousand years. I can't imagine that ever becoming reasonably stable without having to fix everything after the reverse-engineered API changes again.
@prologic Ta!
@movq Yeah, luckily, there is the suckless project. I couldn't live without dmenu!
@movq Yeah, it's a shitshow. MS overconfirms all my prejudices constantly.

Ignoring e-mail after lunch works great, though. :-)

Our timetracking is offline for over a week because of reasons. The responsible bunglers are falling by the skin of their teeth: https://lyse.isobeef.org/tmp/timetracking.png

1. The error message neither includes the timeframe nor a link to an announcement article.
2. The HTML page needs to download JS in order to display the fucking error message.
3. Proper HTTP status codes are clearly only for big losers.
4. Despite being down, heaps of resources are still fetched.

I find it really fascinating how one can screw up on so many levels. This is developed inhouse, I'm just so glad that we're not a software engineering company. Oh wait. How embarrassing.
@movq Happy birthday and good health! :-)
Yesterday's moon through the window: https://lyse.isobeef.org/mond-2025-07-06/

Moon
@movq https://www.youtube.com/watch?v=Y8wyZIKQo9U
I hear you, @movq! :'-(

At work, too. For a few weeks now when I try to log into this horrible Outlook web intershit (Because why would they fix the Evolution integration?! It's cactus for well over a year now. Probably more like two.), it forwards me to the corporate weblogin, I enter my credentials, even do the bloody MFA crap and get redirected back to Outlook. "Loading mailbox…" "Please wait for us to log you out, do not close this window while this process is underway." Fuck you! I have to delete the cookies for this damn domain each and every fucking time. Otherwise, this goes in circles forever. I tried the game for 15 minutes, no joke.

But wait, there's more! Why just fuck it up only a little bit? This week I get logged out at the middle of the day. Every. Single. Day. Not even close to eight hours since I started, no. What the hell!? I reckon I just don't even bother reauthenticating anymore in the arvo. No more e-mails for Lyse after lunch. Fuck it. It's just distraction, anyway, right?!
It wasn't all that busy tonight. Maybe also 500 fireflies, but the route was longer. Not sure if I accidentally kicked a frog or toad one and a half meters away or whether it jumped on its own. It was too dark to see properly out of the corner of my eye. :-(
@movq Willsch a bissle Eis schlotza? https://www.tagesschau.de/inland/regional/badenwuerttemberg/swr-schwere-hagelgewitter-weisse-strassen-in-sipplingen-100.html
The lid is on and the first saw brackets are done. Let's see how impractical they are. I might have to add heavy chamfers to better guide them in.

Lid keeps crap from falling into the upper drawer

Saws are now stored upright in their new brackets to save space

I added 07 to 11: https://lyse.isobeef.org/tmp/hobelbankschubladen/
@movq @bender I never saw that. Neither the website nor the logo. I like the old one more, although I have to admit the story behind the new one is actually really cool: https://www.sudo.ws/about/logo/
I didn't manage to leave the house yesterday. But when I went into the woods this evening, activity first was 10% of what it had been the day before yesterday. By the end it got a lot busier, about 50% of last time I reckon. Around 500 fireflies I'd imagine. I might have been faster than the days before. When I left the forest, I was right in the fog, that was cool.

Shortly after, I saw another lightshow. Right behind the Wasserberghaus somewhere on the Swabian Alp there was very crazy heat lightning every 5-10 seconds. That looked absolutely amazing. :-)
@movq Hahaha, I love them! :-D
@prologic This looks really nice! I love the view. For a brief second, the rock in the left bottom corner of the first photo reminded me of a croc tail. These are some massive cliffs, I get the impression that walking down there feels cool during the heat. Yeah, it's winter over there, but it cooled me off by just looking at it. :-) Oh no, somebody lost their hat.
Heck yeah, I've been a firefly taxi again! \o/ One landed on my hiking boot and rode along a few meters. It then took off on its own without me having to help it. I saw easily a thousand glowing individuals tonight, bloody cool. :-)

Moon
@movq I first wondered how the lists could be ever improved, but then b.png shows the better approach with the inset boxes on the left. No surprises there. Very clearly communicated.
@kat Ah! I see there is now some competition going on between the Tux avatars. ;-)
@kat That's an interesting concept I never heard of before. Though, as a German, my data protection kicks in. ;-)
@kat Which one(s) are you looking right now?
@prologic Oh cool, completely disconnected is the best! Looking forward to the photos. :-)
@movq Yeah, the crash killed it.
@movq Yes, flat UIs *are* broken! I'm used to that by now, but it's still more work to recognize than when there are borders around buttons, etc.

These are lists in your Inkscape example, right? (I'm too lazy to start Inkscape myself and look at it. And writing this took longer than just seeing for myself, but here we are. I met up with one of my best schoolmate this morning and it's fucking hot already. So I blame the heat.) Nested tabs are probably an own death sin in itself. I know, I know, the upper ones can be made into windows and dragged around, but still.
@movq Yeah, it's been a while. Didn't feel this long, though. Not at all, I'm quite surprised. :-O

But like with every quality content, there is no publishing schedule. Eventually, @mckinley will write another article for all of us. :-)
I was wondering: What the heck is the light on my boot!? Turns out between sock and shoe tongue was a firefly, unbelievable! ;-D I've no idea how that happened. After untying, it took me five attempts to finally get it off. How crazy!

Watching several hundred glowworms tonight did not get boring. It's just so damn cool. :-)
I went to the firefly party again and checked them out on a different path. Boys and girls, there were so many of them! Apparently, I took the wrong turn and the numbers dropped. Still several hundreds if not over a thousand, but I'm spoiled now.

On the way there I noticed an absolutely spectacular sunset. However, I didn't bring my camera. Should have peaked through the closed shutters before I left.

It turns out the disco music from the next town over wasn't only audible in the forest but is also free-to-air in my bed. :-( It's earplugs time.
Thanks @bender! Yeah, so super cute. I couldn't pet them, though. Despite very curious, they were also very restless.

I persuaded my dad to check out the fireflies with me tonight. He only wanted to go for a short trip, so we came just across a couple hundred of them. Otherwise, the thousands mark would have been exceeded in no time. He was super glad I talked him into that. :-)

It was also my first time to see them over the meadows. Those numbers don't compare to the ones inside the forest, no question, but we probably saw 60 or so. Haven't come across them there before, I only heard and read about that.

Note to future-Lyse next year: Leaving at 21:45 seems like a good time. We left earlier and had to wait just a few more minutes for them to come out in masses.

Too bad it's impossible to share photos or videos. My camera isn't made for that at all, not even close.
Hahaha, I'm sure there were well over one thousand fireflies today! Basically at all times I could watch at least 15 of them around me. At better spots where one could see a few meters into the forest, there were easily 30 individuals, probably more. One even landed on my small finger. I didn't feel anything at all, but my finger glowed. :-) Awwww! After a 20 meters ride it took off.

But it looks like I have to go already at 21:30 at sunset the next days. Today, I left the house at 22:00 and all the above happend in the first half. The second half of the walk was rather boring, maybe just around 70 glowworms in total. The extremely busy route yesterday was virtually dead this time I came around. They all have already gone to sleep, or something like that.

I also encountered two toads. I nearly stepped on the first one, but it luckily jumped to the side in time. No animals harmed.
@movq @kat It's awful, "just" 32°C here. When I rode my bike into town I came across some spots where the heat was stationary built up and really intense. The airflow felt like the sauna attendant poured water over the heated rocks and severely fanned the hot air with his towel.
@movq That short segment is fairly close to reality, even though it obviously looks heaps better in person: https://youtu.be/u8YVorNRcDM?t=66
@movq I also don't think that I'm a particularly good speaker. :-) The workshop model is a good idea, I like that.

Yeah, it's really good fun. I can highly recommend it. This is also a good way to train (new) developers to think like attackers, how to break in, destroy something or raise awareness of some classes of bugs. Then you can avoid them next time. It's surprising to me what vulnerabilities come up during this event every time. So, absolutely worth it, win, win.
@movq Oh, really!? You should come visit. :-)

As far as I know females are sitting in the shrubs and males fly around, but they're not all that quick. They are slowly moving glowing dots that you can easily follow with your eyes. The bigger problem might be that they turn off and then on again. So, one could count duplicates. However, there's typically a bit of distance between them (at least 30-50 cm I'd say, often more). Counting the same individual multiple times is not all that common (assuming that they don't speed up when turned off). My counting was also conservative I believe.

Ah, Die Maus also covered them a few days ago: https://www.youtube.com/watch?v=OVGD5QEvtoc At the end, there's a video were you can see the speeds a bit.
@movq Tada, cool! :-)
OH, FUCK ME DEAD! On the way home from today's walk I saw easily 800 fireflies! Yes, over eight hundred! That was absolutely amazing. First time this year and already this many. Crazy! They were just fricking everywhere in the entire forest. I counted to one hundred and then stopped. The darker it got, the more fireflies came out and glowed around. :-) There were spots where in under ten seconds I counted 20 glowworms. Super sick. Soooo beautiful. <3

Before I left I tried to call a mate to join me, who apparently wasn't home yet, though, didn't pick up. But in the very end I surprisingly met her in the forest and we were super happy to encounter all the fireflies. She also said that today was her first time this year to spot them. I'll definitely check them out in the next days, too.

Apart from all the glowworms, I also came across some goats, two deer (one of which only the ears showing out of the grass), according to the sounds I sadly must have scared up four more, bucketloads of tadpoles, four big and very active anthills next to each other and three bats to finish the stroll off. I call that extremely successful.

Goat

There ya go: https://lyse.isobeef.org/waldspaziergang-2025-06-24/
@movq *Interesting* internal education sessions are way too infrequent here as well. There are a bunch of "knowledge transfer" meetings actually, but 90% of the topics already sound totally boring to me. The other 9% talks turned out to be underwhelming, sadly. I only attended a single one where it was delivered what has been promised. They're all talks, not real hands-on trainings like you did.

Once a year the security guys organize a really great hacking event, though. Teams can volunteer to hand in their software dev instances and all workmates are invited to hack them and report security vulnerabilities. That's a lot of fun, but also gets frustrating towards the end when you don't make any progress. :-) There's also some actual hands-on training in advance for preparation of the two days. Unfortunately, I missed the last event due to my own project being very stressful at the time.

When I had a Do What You Want Day I also show my direct teammates what I learned in the hopes of this being interesting to them as well. I'm the only one in my team using this opportunity, sadly.
On today's research journey on pledge(…)/unveil(…)/landlock/capabilities I came across the great EWONTFIX blog, in particular this article here: https://ewontfix.com/17/ Super interesting.
@prologic Bon voyage! I hope you'll find some well-needed rest.
@movq All the returns tell me that you're not a real Rust programmer. :-D Personally, I would never omit them either. They make code 100 times more readable.
@movq Yeah, not too bad. I completely agree with you on completeness. Also, I hate complexity without having to learn that during on-calls. :-)
Finally, the two drawers are mounted on the workbench. Some kind of a lid board on top to keep the dust out is still missing. I also gotta build the drawer inserts for the saws.

I upcycled decades old table football aluminium pipes to become my handles. The spacers are made from the inner tube. Two minutes of handsanding with 400 grit sandpaper polished it up nicely.

Drawers on the workbench

https://lyse.isobeef.org/tmp/hobelbankschubladen/
@thecanine With the teeth this looks like a vampire dog. :-D And I don't get the reference either.
@aelaraji Oh, that's great! I haven't heard about any of them before either. There's also a caveat though, that I ran right into the very first time I tried this in zsh:

$ ls > /dev/null
$ echo $_
--color=tty

Yeah, exactly what you think:

$ which ls
ls: aliased to ls --color=tty

Alt+. is going to be my favorite one! In the above, it would also give me /dev/null, which might be probably more what I would expect.
I probably should implement some editing feature in tt. Sure, I can easily edit my feed in vim to fix typos. But then I still have to manually remove the old message from the cache so that the new message is inserted on next reload and I don't end up with "duplicates" in the message tree.
@movq Must be a decode ago that I last used Wine. I wanted to play GTA2, but that didn't go as planned.
@movq And there the air raid siren goes off.
@kat Oh no, how unpenguinly! But at least it runs, even races. :-)
@movq That sounds great! (Well, they actually must have recorded the audio with a potato or so.) You talked about pledge(…) and unveil(…) before, right? I somewhere ran across them once before. Never tried them out, but these syscalls seem to be really useful. They also have the potential to make one really rethink about software architecture. I should probably give this a try and see how I can improve my own programs.
Wet t-shirt contest time! After our forest stroll I just wrung out the damn thing. Fuck me!
@kat Cool, that's a nice summary!
@kat Na, I'm too old for this shit.
@movq No.
@movq Yeah. :-( But hey, there are at least six of us using mail as it should be™. :-)

I sent the dealer an e-mail about that with all sorts of other issues as well. Let's see if they fix anything of that some day. Or yet just even read it.
Come on, why is the bloody IBAN only in the damn HTML part of your e-mail but not in the plain text!? Grrr! Don't you wanna get paid, dealer!? Your new web shop system sucks so bad, I want the old version back.
Righto, infusion time in the sauna! It started to lightly rain. Bah, why's the heavy thunderstorm canceled?
Meh, the stupid shorts get longer. I need to increase my duration filter in order to ban all this garbage.
@movq Lol, what the hell!? Reports like that turn me away even more from iron oxide. Also, great naming choice on the method they made there. display() doesn't actually display it. But it's a Rust thing.
I'm now going to delete 7,336 old photos (previews, resized web versions and index.htmls) and reclaim 3.3 GiB disk space on my laptop.
@kat Cool! Does it still run on your machine? :-)
@movq Hmmm, that indeed surprises me, too. Looks like I live in a moorhen shortage area. Even ducks and geese are not all that common. But then also, there aren't any substantially sized lakes around here. Just a few smaller ponds, which I don't visit all that often.
@quark Ta. Hmm, what's wrong with the blue text color? Is it too dark on the black background for you? :-?

Normal links are blue while images are teal. I thought I differentiate the two if I easily can. The underline of URLs comes from my terminal and is not tt's fault.

Configuring colors is in the todo list. But of course, providing a sane default is definitely something I'd like to have.
@bender Let's start a counter penguin feed! Or something along those whiskers. Should also at least mentally help with the heat.
@quark Oh boy. Glad you survived.
@quark LOL! :-D
There ya go, @quark, these are the two most important views.

Message tree view:

Screenshot of the message tree view

Reply form:

Screenshot of the reply form
@aelaraji I'm glad to hear that you don't find it too terrible. :-) There are still heaps of bugs to fix and things to improve. Bucketloads of them.
@kat @movq A Tux improves the life. :-)
@movq Thanks. It's already over, the heat got us. :-(
@movq Kein Muckefuck, wohl bekomms. :-)