# 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 6510
# self = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=5034
# next = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=5134
# prev = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=4934
@movq No, LibreOffice didn't exist back then. :-D The user interface was somehow green. No clue.

TeXNicCenter is either dead or just finished. All features implemented and all bugs fixed. That's the thing, one doesn't know with completed software. ;-)

(Lol, there was a fuzz on my screen. Just perfectly aligned, so it looked like an accent grave and I was wondering how the quote got corrupted. :-D)

Agreed, a lot of people don't need the real document structure markup.

I actually cannot remember when I wrote my last letter using LaTeX. Maybe it was some kind of termination letter for a service that could not be cancelled online. It must have been a few years ago. The last "proper-ish" use of LibreOffice was at the end of last year when printing a quiz and map for the scouts I think.

Today, I was in a meeting where a workmate gave a talk. I noticed the LaTeX beamer look and feel and was intrigued. He said, that he cobbled together the corporate design, but it's not ready for official use yet. But that's really cool. My last prepared presentation with LaTeX beamer was in my previous company a few years back. But I didn't care about corporate design at all.
Regarding https://www.uninformativ.de/blog/postings/2024-05-23/0/POSTING-en.html: I remember using Star $Something back in the days. I don't remember the exact name anymore and none of the screenshots of StarOffice look familiar. Hmm. I have a green UI in mind. Not sure if I completely hallucinate it or whether that was actually the case. It was a commercial software, not freeware, we had to buy it, I think.

My first LaTeX distribution was MiKTeX with – if I remember correctly – the TeXNicCenter. A bit later on Linux I used Kile as my LaTeX editor. LaTeX produces the worst error messages I've ever come across. So compile early and often. But the results are amazing.

I know people who never make use of headings and the like to this day. Bold, italics, underline etc. is all they use. Despite writing larger documents. Admittedly, it took me a while to figure out and appreciate all the advantages of actually marking up the document structure properly.

These days I rarely reach for LaTeX or LibreOffice to craft new stuff in my private life. Simple text files is usually it. RST and Markdown if it has to be more fancy.
This is cool, the Engineerguy talks about the engineering of duct tape: https://youtu.be/E-F2QQuZZGk
@movq @prologic @bender Oh, I neither noticed the DDG downtime nor was I aware of their partnership with Bing. O_o Oh dear! Never heard of most search engines in this linked graph.
Heck yeah, that's a super cool catapult! https://www.youtube.com/watch?v=1XGACnLDEps I'd love to build one now.
Just before the rain hit us hard:

[![Green trees in front of dark clouds](https://lyse.isobeef.org/mittagssonne-2024-05-22/01-vorschau.jpg)](https://lyse.isobeef.org/mittagssonne-2024-05-22/01.jpg)
@prologic Depends on whether you consider your favorite secret service third-party or not. :-D
Riders^WColors in the sky: Sunset of the day
@movq Yeah, not so much stuff left that is made around the corner.
@movq I don't know. I thought that I had to accept beeing added to the contact list before somebody could message me, but apparently, that's not the case. Let's see how that unfolds.
@movq Ah ja, der Holgi. ;-)
Oh dear, I got plenty of spam – if not even worse – on one of my jabber IDs. One sender JID was on exploit.net or exploit.im or something like that (I already forgot).
@stigatle Oh cool, that looks nice! Great job. Would he be able to jump the fence when standing on his hut's roof? How does the door lock work? Also, that's some giant bone. :-) I bet he loves that one.

I couldn't help myself but notice that it appears your stairs and the left of the deck need some countersinks for the screws. 8-)
Thank you, @prologic. Once you leave the shitty towns, our scenery is very nice. Doesn't compare to other places, but I've seen also way worse. :-)
Hmm, didn't yarnd automatically inline image URLs back in the days? Looks like I have to resort back to markdown images again.
@iolfree I n d e e d ! W o r d s a r e p r o p e r l y s e p a r a t e d
Let's just go with that view: https://lyse.isobeef.org/wanderung-auf-den-wasserberg-und-das-fuchseck-2024-05-18/24.jpg
Two mates and I went on a 25km hike yesterday to the Wasserberg (lit. Water Mountain) and Fuchseck (lit. Fox Corner) on the edge of the Swabian Alb. They arrived by train and of course it was delayed by half an hour, "due to limited availability of tracks". That was a first one, I never heard that reason before. Another train had a breakdown in a train station and later my mates' train had to be rebooted, too. That restart alone took 10 minutes. O_o Software problem, it can't be helped.

It rained the whole day before, so a lot of foot paths had turned into small creeks. Also, the mud levels were much higher than usual. We also took one or the other shortcut which were even messier. And also reeaalllly steep (see 07 and 08). It didn't help that my guiding abilities also sucked a bit and I took the wrong turn twice. Oh well, we just explored new paths I've never been on. That's a win in my book. :-)

After a rest at the Wasserberghaus with a Spezi, we then decided to also visit the Fuchseck, since we're just around the corner. It took a bit longer that I remembered and after enyoing the view and eating homemade waffles with apple sauce, we then made our way home.

About 100 meters in front of the train station it began to rain. The thunderstorm caught up on us. We just made it in time, a couple of minutes later, the train was supposed to show up. I quickly walked home and was a bit soaked when I unlocked the front door.

It was great fun, it was a nice stroll for me, my mates were absolutely exhausted. Well, I admit, my feet hurt, too. :-)

Here's a nice view on the Three Emperor-Mountains in the distance. From left to right: Hohenstaufen, Rechberg and Stuifen, the left one is my backyard mountain:

https://lyse.isobeef.org/wanderung-auf-den-wasserberg-und-das-fuchseck-2024-05-18/42.jpg

More pics: https://lyse.isobeef.org/wanderung-auf-den-wasserberg-und-das-fuchseck-2024-05-18/
@prologic That's a lovely campfire! Let's see what my hike produced yesterday.
@movq Oh, made in Denmark.
@thecanine Woof, woof. :-)
@movq That's what I always think of with a shake of my head, too. Nowadays people voluntarily and actively feeding Stasi with all their information.
Hahaha, what an evil idea, @aelaraji. :-D

@movq At work, I mostly open Jira tickets in new tabs and don't navigate them. But yeah, GitHub unsurprisingly fucked up here. One more reason not to use it. ;-)
Hell yeah, this is some amazing bee stuff! https://www.youtube.com/watch?v=YgOYLDf5Wv8
@movq Classically navigating through the history still works perfectly fine on most (if not all) websites I visit.
@prologic @movq @bender Yup, I second that. :-) We went to Ebersberg Castle with the scouts. It was great fun and very exhausting at the same time.
All packed, ready to go.
@mckinley That's a cool idea!
@prologic Kehrwoche! :-)
@prologic I noted it in my calendar, looking forward to it. :-)
@prologic Cool!
@movq I'm subscribed to 48 feeds at the moment. And only a fraction is actually active.
@prologic Oh, was I? I don't recall any of that. But who knows. ;-)
@prologic I won't see any activity again, unless somebody else I follow interacts with them. Yep, fetching the feeds still happens with a patched version of the original twtxt client. tt is just a viewer of the database contents.
Righto, it's time for a rotation into archive feeds again.
I just cleared my following list. Kicked out all the 26 feeds that have not been updated for two years or more. This will reduce a bit of useless traffic.
@prologic I figured, yep.
@prologic Does one need a build timestamp anyway? That's an enemy to reproducible builds. Maybe just use the commit timestamp? That would work at least for official releases. It would be off for dirty working directories during development, though: git show -s --pretty=format:%cI
@movq Yeah, I did.
@prologic Oh wow, still so many left. Cool.
@prologic Looks much better, although I'd strip the "v" prefix in yarns' "v$branch@$hash".
@prologic Nice!

Btw. the versions in the search.twtxt.net and twtxt.net footers are both a bit wonky now. 8-)
@prologic FWIW, at least five feeds were _not_ empty. But their feeds still looked dead, since the last posts were from 2020 and 2021. So that was probably before the date of last login was recorded.

Btw. how many accounts are there currently on twtxt.net? https://twtxt.net/user/stats/twtxt.txt looks like a grave, too. :-D
@movq wc -l .zsh_history gives me 7100. That's surprisingly a bit more than I thought. I used to regularly clear new stuff by hand and keep important commands to about twenty-something. I don't recall the numbers anymore.
@bender In the end the cameraperson overtakes him again. But yeah, who knows with today's AI crap everywhere.
@movq @prologic :-)
@movq Yep, I use it all the time, too. Except for Go, where I use Ctrl+x+o for Go-specific completion. But Ctrl+n still comes in very handy for strings and the like. In fact, it scans all the open buffers for completion suggestions.
Quite the acrobatic piece: https://youtu.be/p5GU_BvvHso
We had a nice sunset: https://lyse.isobeef.org/abendhimmel-2024-05-03/

[![Sunset](https://lyse.isobeef.org/abendhimmel-2024-05-03/02-vorschau.jpg)](https://lyse.isobeef.org/abendhimmel-2024-05-03/02.jpg)
@bender Rest assured, it was really disgusting.
Wow, it's crazy how many people already delivered donations for our scout flea market today. Collecting and delivering officially starts tomorrow, today was just the setup. Covering the floor of the town's multipurpose hall, transporting and arranging beer tables and benches, setting up sign, that sort of thing.

But on the flipside, we've also been abused as dumpsters again. Some asshole brought us a deep fryer. With the oil still in it. Unfortunately, we discovered that too late.

The big work starts tomorrow morning at 8:30. And the flea market where we actually sell the stuff is on Sunday. It's gonna be a hell of a weekend.
@mckinley When typesetting our graduation newspaper ("Abizeitung" as we call it), I destroyed the work of a whole day. :-D

I plugged in the USB stick of my mate (exact same model as mine) to do a backup of that day's work. Since mine was already plugged in, the mount path /media/USB_DISK or whatever it was already existed. Throughout the day I saved everything on my drive (I don't know the reason for that anymore). The newly plugged in thumb drive then got automatically mounted by Konqueror as /media/USB_DISK2 or something like that. I wanted to show off my other mate how cool Linux was and how quickly the command line was able to get things done. By force of habit I cded into the wrong path to first rm -rf *, so that there was room for the new stuff. Indeed, the data was ruined super quickly.

When I noticed my fuckup I aborted immediately, but it was already too late. I went to the family computer to research recovery tools. All the files I was able to restore were corrupted. The Scribus XML files ended somewhere in the middle. So then we decided to redo all the work instead of wasting more time trying to fill in the missing XML. Unsurprisingly, it turned out that not only the last closing tags were missing, much more of the contents disappeared. I remember that I gladly noticed the second typesetting round went much faster. :-)

I could be totally wrong here, but I think one problem was that write operations to external devices were not immediately synced, one had to expicitly flush the write cache, e.g. by umounting it properly. Early on in the typesetting process we decided to have each page or spread as separate *.sla, because a) our computers were not powerful enough to handle a large project and b) once the layout template was cast in stone, we could easily work in parallel and join everything in the end. That helped to limit the damage to just my work. My mate's was still there I believe.

Oh yeah, that's certainly the best strategy, @bender! ;-)*
@movq Wasn't too bad in the end. Just a hand full louder thunders and decent wind. It smells really good after the light rain. Mjam!
The thunderstom is closing in on us now. It just started to drizzle.
@prologic I read the help and it's a bit clearer now. Still a bit wonky. I will probably have it already forgotten by this evening. "Term" is exact match and "Match" adds some kind of unknown fuzziness on top.

The second bullet point can be addressed I reckon. It's purely a UI thing. Also, I'd add a short explanation for the search types next to them, so people don't have to look things up all the time through the help or even follow the links to the bleve documentation.

I like the magic detection™. That's what people expect. At least I did.
Thanks, @prologic. It was taken near the dairy farm. Came down the hill in the forest on the right and tried my luck. It turned out the photo gods were in my favor. :-)
@bender I see, thanks for educating me. :-) At least you're interacting with native speakers a hell lot more than I do. I'm speaking English almost every day at work, but it's basically never anybody's mother tongue.
@mckinley For testing purposes make dev works perfectly.
Thank you very much, @bender! I just linked the thumbnail to safe on people's bandwidths. I figured if someone wants to view the photos, they just go to the album anyways. If one has no interest, it's less invasive on them.

Picking the money shot is always tricky. Especially since I have been sorting through them for an hour or more. I try to keep at most 10%. And yes, I very often do hate myself for pressing the trigger so many times when I come home. So by then I'm kind of sick looking at them any more. :-D Sorry, I try harder next time. ;-)
@bender Damn, I got caught. :-D

Btw. how does it work in English? In German it's ambiguous which weekend one addresses when saying "next weekend". Is it the coming one this week or the one in the next week? Different people interpret it differently if it is not inherently obvious from the context, like when talking about dates. I also noticed that sometimes the same person even switches between meanings. I think I do, too. But I don't know why.

Maybe it depends on when one says it. I could be totally wrong here, but earlier in the week, like on Mondays and Tuesdays chances for "weekend in the same week" are higher than towards the weekend (Thursdays and Fridays), then it's more likely to refer to the weekend in the next week. And yes, the week of course starts on Monday. ;-)

Not sure if it changes with dialects. :-? I assume that doesn't play a big role and is the same for all German-speaking regions.

On the other hand, "this weekend" is very well defined as the upcoming weekend in this week. It's only the term "next weekend" that can be problematic.
@prologic Good question. Two things come straigt to mind, although, I'm not sure how low hanging they are. Probably not even remotely.

1. I don't know what these three search types mean: "Match", "Term" and "Query String". I could read the help page (I probably should), but they are sooo far off from my little brain that I can't even think of a possible explanation. My (possibly broken) intuition would categorize "Match" and "Term" to be the same. Zero idea what "Query String" is supposed to be. But then I think a search should be so easy to use to not having to read up on it in a manual. Admittedly, the basic search works alright.

2. When "Match" is the default, why is it not selected? Similarly, when it searches all fields by default, why is "_all" not selected? This technical spelling "_all" with the leading underscore also doesn't look pleasing to my eyes. It's been a hell lot of time that I looked at the code base, so I forgot everthing by now, but that should be easy to fix.

3. Okay, three things. :-D Apart from the search results taking up soo much space, it would really be nice if the markdown would be rendered. Yes, this is probably very tricky, as the matching search terms are highlighted. So I imagine both the highlighting and markdown rendering probably contradict each other. Also, how to go about matches that are part of markdown link URLs, image alternative texts and the like. Not easy at all.

I reckon that's certainly not what you had in mind or wanted to hear. :-( Sorry about that. I doubt it myself if this is any helpful feedback.

No promises, but I _try_ to toy around with the search more in the future. Maybe even look into the code base and see what I can do. The next weeks will be full of activities with the scouts, though. So don't expect something in the near future.
@prologic Thanks mate, looking forward to the next weekend. :-) It appears I'm just in time with this tiny usability improvement: https://git.mills.io/yarnsocial/search/pulls/22
@movq I hear you. :-( Flight tickets are way too cheap. I'm also astonished, that night flying restrictions don't apply for politicians. Of course.
@prologic I believe that only a search box on the front page is better. Just like it is now. I still haven't got used to the advanced options, but that's an entirely different story.
@bender Glad you do. :-D
@prologic @movq Thank you! :-)
@bender Let's hope your life quality will improve with that single purpose tool. :-D
@prologic Heck yeah, grats!
@prologic Like @movq said, it is a very niche thing. But that has always been a good thing in my opinion. And I do still think so. :-)

yarnd in particular is too heavy for me personally, I just like the simplicity of wacking a file on my server and voilà. But other than that, I still support that software. :-)

And I come back to twtxt.net every now and then to read up on conversations that seem to be incomplete in my own client. Like if a new feed appears that I don't follow (yet). That's certainly a convenience that I do enjoy. Thank you for that!
Went on a 20-25km long hike yesterday. Birds were beautifully singing, the lovely smell of freshly cut grass was in the air and the terror of rotary mowers reached my ear constantly. It was a bit cloudy, but the sun peaked through every now and then. Really a wonderful day to be outside. About 21°C and some wind.

Amazing scenery

https://lyse.isobeef.org/wanderung-2024-04-28/
@adi Oh wow, I'm really surprised that it still sounds a lot like Stairway To Heaven. I'm pretty sure I would have gotten that even if I hadn't read the title. Music-wise of course. Not from the lyrics. :-)
Damn it! My camera battery didn't charge, so all the nice deer and tad pole in a puddle imagery did not work out. :-( I saw two pairs of ears showing in the grass. Suddenly, three deer took off. One went straight into the strip of trees nearby and back behind me into the woods. The other two ran more into the meadow and then alongside the path I was taking. They unexpectedly overtook me and crossed in front of me to the other pasture. Then they headed back into the forest like rockets. Holy cow, they were super fast. Really amazing to watch. Battery flattended after the second of video I recorded in the beginning.

Ears showing in the grass

https://lyse.isobeef.org/waldspaziergang-2024-04-29/
@bender @prologic Thanks mates. I'm not the only one, @xuu does, too. :-)
Executing all tests of the online registrations I'm building for the scouts takes now 70 seconds. Initializing a new SQLite database in RAM and creating all the tables for each test case sums up and takes its time. During development cycles I more often resort to the -run flag for go test to specify only one area of tests to be executed. Much more fun this way to quickly go back to writing code.

At least the service layer line coverage is a whopping 99.5%, branch coverage is 93.3% (the latter could still be bumped slightly). However, only 17.6% lines of the web layer are covered (I definitely should increase this by a lot). This still good test base, if I say so myself, came in extremely handy a lot of times when refactoring stuff. Esp. the service layer changed, web not so much. It slows development down quite a lot, that's for sure. I reckon it's easily five to ten times more effort to come up with useful tests than writing productive code, probably even more. I'm bad at guessing. But the confidence of not breaking stuff is sooo much more valuable. The tests certainly paid off in the past, zero doubt about that.

It takes a lot of discipline to first write all the tests in the service layer before doing the web stuff and finally see it in action and play around. It's funny that I always have to force myself to do so, but in the end, I'm always happy to have done it exactly like that. It once again worked out very smoothely that way. But something inside me wants to fast forward. I wonder if that irrational part eventually fades away.

Having a code coverage report does make a night a day difference. It actually turns writing tests into a fun game for me. The older I get, the more I do enjoy writing tests. Rest assured, producing productive code is still cooler. :-)

I'm also sooo happy about vim-go. I can't believe how much that sped up and boosted my development process.

Whoops, 57 minutes later, this message turned out much more elaborated that I initially envisioned. Oh well. ;-)
I just found out about last(1) and lastb(1) while wondering about _/var/log/wtmp_. This can come in handy! The filenames remain a bit mysterious: https://unix.stackexchange.com/questions/127211/why-are-utmp-wtmp-and-btmp-called-as-they-are_
@movq Oh wow! Better not mess up with that responsibility. :-)
@movq @prologic Hahaha, thanks for sharing, @bender! :-D

> IBM has realized it's cheaper to buy Hashicorp than to buy Vault licenses
@movq Yeah, things like that can really make one ill.
@movq I can't think of a single one. Pretty lucky so far.

@bender Holy cow, congrats on that title. I do have plugged in the more important equipment in a power strip with surge protection. The weird thing was, that only one of the monitors went black for a second. The other one (both are behind surge protection) remained operational the entire time. Maybe EMP? It was closer to the window than the other one.
Speedy recovery, @bender! Ouch, @movq!
After a nearby lightning strike one of my screens turned off for a second. That was the signal to call it quits today.
@movq Such piece of shit software makes me want to quit. Esp. if it is just for useless compliance garbage that never helped anybody accomplishing any real improvement. Is it from IBM? We once had to build a threat model with some terrible generator and my goodness, you can't believe what a myriad of hopelessly useless, wrong entries it produced. Thousands of thousands of lines. At least it was markdown. We basically removed like 99% of its output after reading through every single item. Did this once and refused to touch it ever since. All hand-written now and actually helpful.
@prologic Speaking of broken mentions, do you want to install a more recent yarns version so that my error log is not spammed anymore with 404s? 8-)
@movq Zero progress on mine. :-( I still rely on the official twtxt client to download the (main) feed.
Thanks, @movq! Hahaha, didn't think of that. :-D Nah, this guy is not creepy, he's just a melting flower snowman. ;-) Rest assured, he was unharmed on the table, you can see him here: https://lyse.isobeef.org/waldspaziergang-2024-04-21/23.JPG
Jaja, @movq, immer schön aufmerksam der guten Steckdosenpräsi folgen und im Anschluss in der Exzellenztabelle was eintragen und ausrechnen lassen! :-D Klingt alles recht albern. Ich schätz aber mal, dass einem das gar nicht mehr auffällt.

@bender Fenster 11 → Windows 11; KraftPunkt (or Steckdose) → PowerPoint; Deppendrehkreuz (awesome translation btw, I had to laugh hard!) → GitHub.
Went out in the cold and noticed that taking photos half an hour on top of the drafty summit is not the very best idea. Not suprising that I freeze if there is snow. Gloves would have been actually great, I only wore my beanie. But it was a very good afternoon and evening. Looking at the snowmen, there must have been heaps of snow on the ground earlier this day.

I came across several different birds and two deer. 36-38 shows the same one, one meadow further, another deer jumped across the road. That was cool.

The focus often wanted to do its own thing, unfortunately. 25 shows the flatness of the Kaiserbergsteige (literally "Emperor Mountain Steep Road").

Flower snowman

https://lyse.isobeef.org/waldspaziergang-2024-04-21/
@movq Vobis doesn't ring a bell. I looked them up, but still nope.

Yeah, HDDs aren't the fastest things in the world. :-)
@movq @bender Sadly true. :-(
@movq Interesting. Never came across the term presentation manager in my life, but I also never used OS/2. :-)

Yeah, stopping the scanning thread is more a learning experience than a necessity. The scanning message is hardly visible in your videos. It's already very quick.
I'm with you, @bender, weekends are way too short.
Oh, you finally did implement multithreading, @movq. Cool, cool. :-) https://www.uninformativ.de/blog/postings/2024-04-21/0/POSTING-en.html Just in case you want to keep working on PMdusage, my suggestion for a future upgrade is to make the scan abortable. 8-) By the way, what does "PM" in "PMdusage" stand for?

Always great to see that bugs are quickly fixed.

There's a tiny typo in the second to last paragraph: "Windows NT is something that I _had_ no contact with…"
@mckinley Haha, interesting read.
@aelaraji Nice, I can confirm it's now fixed. I reckon the Content-Type: text/plain; charset=utf-8 did the trick. Something in the twtxt client must have incorrectly guessed ISO-8859-1 or something along those lines when there was no charset advertised in the response header.
@prologic @bender Agreed, looking heaps better. <3
Thanks, @movq! What?! I'm heading straight to Wikipedia…
@movq That's what I figured, since ncdu shows it at the bottom. ;-) But it's actually pretty smart, to be honest. More space for precious content. And the title bar exists anyway, so why not make use of it with something helpful? Also, with entries being in descending order, it's actually natural to show the sum as the even higher number above the largest entry and not at the bottom in another status line widget. 8-)
Welcome @aelaraji!

What the heck is going on with the encoding here?! The feed's Content-Type header does not include any charset, but I'm still relying on the official twtxt client to fetch and parse feeds. Haven't noticed this with any other feeds. Where in the chain is this messed up? :-? Seems like the "space" is the Unicode line separator U+2028, that we use for newlines.

Maybe WTF-8 encoding!?
We have great April weather over here. Yesterday sun, rain, sun, rain, sun, hail, sun, hail, sun, rain, etc. It didn't hail today, but sun alternatd with rain a bunch of times. Went out this evening and boy, what an absolutely gorgeous scenery!

View from the edge of the forest into the lovely lit distance

https://lyse.isobeef.org/waldspaziergang-2024-04-18/
@movq Oh nice, it even shows the sum in the title bar.