# 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=1234
# next = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=1334
# prev = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=1134
@adi It might be easier to just ask the question. I'm certainly not an expert, but I have worked a bit with it.
@stackeffect Indeed, if every commit gets pick-ed then nothing will happen, the commit IDs remain unchanged. However, it reports a successful rebase, which might had thrown us (@movq and me) off. I was also under the impression that even pick-ing rewrites the history. I must have confused this with something else. You just have to use another editor, scnr. ;-D It would be pretty cool to detect an unchanged file, though. But I don't use jenny (yet?), so don't count my vote, @movq. ;-)
After sunset the sky was a bit greenish today. It doesn't show super well on film and the exposure time was too long without a tripod. https://lyse.isobeef.org/tmp/abendhimmel-2021-11-08.jpg
@movq It is http://www.uninformativ.de/git/jenny/commit/18ab31ab34423322337fcbc32fdcfb8713a051de.html 8-)
@thecanine Hahaha, very nice! I can't stand these videos.
@adi They're over at: https://git.isobeef.org/lyse/ But didn't you say you're so glad not to touch git? ;-)
@prologic Oh, you're right! :cq! does indeed exit with 1. I wasn't aware of this command, though. Cool.
@prologic @movq Thank you! That was certainly a top of the world feeling.
@prologic Hmm, my vim always exits with code 0, even when :q!-ing. Or what do you mean exactly by aborting? ggdG clears the whole file, not sure if there's something shorter out of the box.
@fastidious Thanks mate! Yes, I fully agree with your description. Everybody was smiling over both ears at the view.
@movq Yeah, surviving in the cold up here is what I'm always wondering, too. They're not built for this kind of climate I reckon.
Boy, oh boy, holy fuck, I just witnessed one of the greatest spectacles of nature I've ever seen! The whole day we had quite some fog so I thought that's probably going to be quite a boring hike today. But maybe I can play around with the foggy lighting. On the foot of our local mountain one couldn't even see past 20 meters. Surprisingly, the summit was above the clouds. Just the Emperor mountains and Albtrauf were showing, otherwise completely surrounded by clouds. Bloody awesome, never seen anything like this to that extent! All the other hikers were also freaking out. Absolutely stunning, can't believe it. https://lyse.isobeef.org/nebelspaziergang-2021-11-06/
@prologic @movq Uuuuuuhhh, awesome, very nice! We don't have any parrots here. When I had to change trains in pre-Corona times I could watch a few parrots in the morning in the trees of a station in the summer. According to the legend, they escaped from a zoo.
@thecanine Hahaha! :-D Snow is getting very rare over here, too. In the last 20 years it dropped to a few days of snow if at all. Last year was quite nice again with about two weeks in total maxing at ~10cm if I remember correctly. Still far away from the past.~
@prologic @fastidious Thanks guys! The colors are really crazy right now. Even though it was very cloudy the leaves were still bright and shiny everywhere. It's just a Nikon Coolpix S6500 with a ton of fuzz in the lens, making me spend a bit of time with the healing tool in GIMP on some photos to get rid of the gigantic crap in the middle. It's a pretty nice camera, I like it a lot except for the dirty inside of the lens (I'm afraid of opening it to clean it :-(). I have it for about seven years now and it served me well ever since. The optical 12x zoom is fantastic and the small size perfectly suited to conveniently carry it around. When lighing isn't great, e.g. in late dusk or inside, getting sharp shots is really tricky (as to be expected with fairly cheap cameras). I usually don't tweak the photos afterwards, just try to get rid of the ugliest dark spot in the middle if needed. I try my very best to mask that in the first place by positioning myself in a way that the fuzz is hardly identifiable in the final result. Depending on the subject that's not always working out, though. Very, very rarely I brighten the shaded areas (can be counted on the fingers of two hands). In the past days I found myself rotating a few pictures by at most one or two degrees (@movq told me so ;-)), but other than that I don't edit them. My goal is always to take perfect pictures in the first place so I don't have to fiddle around in post. If in doubt, take more shots and then remove all except one to at most three on the computer. That's much quicker and also more natural.
@thecanine Haha, absolutely! :-) Is there enough snow to ski in your area?
@thecanine Best wishes mate! Haha, those sunglasses look fricking cool. The ones on your dog are hot, but your own ones really rock hard. ;-)
Quick trip to the colorful woods: https://lyse.isobeef.org/waldspaziergang-2021-11-05/ The bridge is open for traffic even though the final railing is still to be installed. They just clamped the contruction barrier to the brige for a temporary measure.
@prologic Haha, my actual computer science days have also long been gone.
@prologic I reckon the automaton will have a single state which is also a final state and all input transitions into the same state again. Like that: https://lyse.isobeef.org/tmp/dfa.png It's just a return true.
@movq Testing in Konsole (the KDE terminal emulator) shows an itty bitty improvement, but one or two symbols more isn't really making much difference. So back to Urxvt it is. Actually I don't care about emojis at all. My old-school smileys are good enough for the girls I go out with. I try to avoid all GTK applications as much as possible. Their UI usually just sucks and basic functionality is stripped with each release, so no, thank you. Haha, great idea, that RTL bug material might be fun to test with. :'-D
@prologic I might have misunderstood you but "Lists" is quite a generic name for that. :-S
@maya Newsboat of course! 8-)
@stigatle The oilfield is on fire, nice! :-)
@prologic @eldersnake Any string contains an empty string, so that's not surprising to me at all. :-)
No worries, @prologic, I fully grasped your intention to help and inform. :-) Haven't looked deeply into the code, @fastidious, but that craw operation might be quite similar to what my tt offers. I'm highlighting unfollowed mentions, so I can quickly check them out in the browser or even follow them in the URLs view. @xandkar's crawling might be much more sophisticated, though. Could be worth spending an extra view for the discovery in the future. So thanks for the crawling hint, I actually missed that initially! Now added a TODO in my README.
@fastidious Are you satisfied with emoji support on runlevel 3? ;-)
@fastidious Sure, it's still a scary dog, but now that it is laughing I think the really bad mien is now softened to just evil laughter. :-D So the animation definitely helped. Maybe I was manipulated by the filename. :-?
@xuu Those attempts are always good for a quick laugh.
@fastidious Thanks for digging that up!
@fastidious, ta! Yes, it's quite a cool concept to just reuse and join existing words in order to come up with other nouns. The only downside is that compound words are longer than "artificially" crafted new ones, but I don't mind that at all. Haha, in fact that one worked, just the other one didn't, @movq: https://lyse.isobeef.org/tmp/tt-emoji.png :-D Indeed, I'm using urxvt. So what terminal do you guys recommend? I have plenty of terminals open, so I want them to start really fast and don't use too much memory.
Weather forecast was quite off today. When it was supposed to rain it didn't. We even had hail some time. While buying milk in the evening I ran into drizzle although dry air was predicted. Made for nice photos though. https://lyse.isobeef.org/waldspaziergang-2021-11-02/
@thecanine Less fearful now. ;-)
@prologic Interesting, it seems there's another client called tt. That's defintely not mine since I'm still relying on the original twtxt client to fetch the feeds.
@thecanine Oh, I see. Look, you now just really have to upload the GIF somewhere, so we can enjoy the chewing or whatever is going on. :-)
@movq I thought so. An original installation would be quite crazy. ;-)
@stackeffect Contentual it is a reply to #vsxe6fq, but I just replied to the whole conversation and did not fork. There's the debate going on whether to prefer flat conversations or more e-mail like threading. Seems like more people are on the flat conversations side, that's why I took that route. So it might be seen as a user error on my side, but certainly not a bug.
@movq Wow, you still have working ancient software. :-) Looks pretty good actually.
@jlj Nice! Today was supposed to rain cats and dogs, but it wasn't too terrible. No idea what happend to the images. Next time I try to have a look at the HTTP responses.
@thecanine Cool dog, but his mouth is a bit terrifying.
@jlj Thank you! Walking under this one was quite a bit scary. :-)
@movq Ta! Oh, nice black and white version! 29 is the diagonally hanging tree in 28.
@laz Exactly, pretty recognizable. I think I stumbled across them more often when I was younger. Haven't seen any for ages despite I'm more often outside nowadays than ever before.
Yesterday's hike: https://lyse.isobeef.org/wanderung-zu-den-schurrenhofpferden-2021-10-31/ I'm pretty proud of 31 I must say.
@prologic It's really good for me (that's why I'm using it). However, it's a whole different story for all the other folks out there. ;-)
@prologic Agreed!
@jlj I finally managed to get the whole photo. :-)
@jlj Hmm, the image only loads the top lines, hitting refresh brings in a few more. This works for some time but about half way (just see top of the red boots) it stops and I'm not able to get any further. Very cool scenery, reminds me of a similar spot I've been yesterday. Have you been successful?
@movq @fastidious Yeah, let's get rid of all this summer time crap. It's a useless mess. Standard time for the win!
@laz Nicely written!
@fastidious Hahaha, no offence taken. tt really sucks, it's terrible!
@prologic Exactly. I don't see the consistency thing, since I hide subjects. ;-) But yeah, good point, though.
@off_grid_living What a transformation, I nearly didn't recognize it! This looks great, mate.
tt now swapped mentions and subject in the reply template, so that replies to multiple people can be composed easier without manually moving around stuff in the template. The subject is now preceding the mentions. Also it strips surrounding whitespace from the twt automatically (as hopefully demonstrated by this one).
@prologic If I were an operator I might care. But I'm not. ;-) The point was that I thought that it will affect every feed, which – as you clarified – is not the case. So all good.
@prologic That's quite a beak!
Lovely, @prologic! That's quite a fat cow if we see the same one, @darch.
@local_wonders Glad to see this feed reviving! :-)
@kt84 Nice. Which path did you take? Over the weir or the bridge?
@stackeffect Nah, no need to apologize! It wasn't my intention to blame you on missing citation at all! I'm honestly very happy that you could phrase it in a way that people actually got the points. :-)
@prologic @fastidious Yeah. So garbage feeds like a handful "test" twts will not be covered by that measurement, right?
@fastidious @prologic Just remove target=_blank from each and every anchor and open all links in the same tab? (I hate it when somebody decides their website should not be left and open everything in new windows/tabs. We're all aldults and can decide on our own. :-))
@prologic Oh, okay! I thought that would affect all feeds. But only empty ones is of course a completely different story.
@prologic Cute little frog!
@movq Fucking awesome, that was quick! I left a few remarks and even more questions.
@prologic I like the counter idea. When reconfiguring the duration the counters need to be adjusted by (old_duration - new_duration), too. The counter might have a glitch if a yarnd instance is not running for a day or more. But that's acceptable I reckon, people can't login if the instance is down, so that's fair. ;-) Just be sure to thoroughly test this, destroying data would be bad.
Exactly, @eldersnake, you've managed what I failed at – to extract the important bits from my brain. :-) Granted, the posted messages themselves give away much more and if operators really want to get more insight, they can just look at the access logs or even maintain their own fork. But I strongly believe that the less data one gathers, the better. If there is a trough, pigs will come.
@prologic Okay, lots of carefully placed mirrors, nice!
@prologic If yarnd takes data protection and privacy seriously, then yes, I'd say it matters. Not sure how the transition between "a short time ago", "a while ago" and "a long time ago" can be implemented, though. But that would be the coolest thing, I agree. :-)
@prologic What do you want to consider in v2? Support for different encodings? So people can now also chose EBCDIC? ]:->
@prologic Cool. Is the dinosaur projected onto the rock or is it just a huge screen?
@prologic Nice snake, but it hasn't much space. Is it a green tree python?
@prologic What's this? I see that there are two mirrors, but I don't get it.
@local_wonders Oh yeah! Quickly head over to its end and get the pot of gold!
@prologic To further lift the protection standard here the timestamp just needs to be date, no need for time granularity. For your outlined use case even a calendar week should suffice.
@prologic Both @movq and @fastidious are literally converting them to e-mails, I just apply a quite similar concept. In my eyes we have a muuuuuch superior way, but everybody has their own taste. ;-)
@prologic If it would be as easy as that. ;-)
@prologic The "yarnd" at which the redirect is initiated could just display a fake login page from the entered target yarnd and thereby trick the user to believe he's on the real instance and this way steal user credentials. Also not so sure on the usability. Copying a feed URL over to one's yarnd seems pretty straigt forward to me. Entering ones own URL on the other hand sounds quite weird to me. But again, I don't use it.
Looks like @stackeffect is much better at writing specs than I am, maybe he should take over. :-D Steps 2-4 is exactly what I meant a couple of days ago. I quite like the idea of some kind of append header.
@prologic Indeed. :-)
@stackeffect @fastidious @prologic The original Twtxt File Format Specification even requires the file to be UTF-8 encoded. Nevertheless, sending the proper charset in the Content-Type header is always a good thing and highly recommended in my opinion.
@prologic Not most efficient, but certainly easiest thing in my opinion. Hmm, I don't get it, which extension makes this trivial model useless? :-?
@fastidious Thanks mate! I agree, autumn is just so colorful! I also enjoy the wind (although it has been quite calm so far). Exactly, these are beehives.
You ran out of postcards? No worries, supplies have arrived! https://lyse.isobeef.org/waldspaziergang-2021-10-29/
@prologic I'm afraid I don't have the slightest clue on how to do that conveniently on a website. When j/k scrolling in the terminal it's easy enough to hit r. I like to do this manually, so I can keep some twts still as unread to have some kind of marker.
@prologic Well, you follow everbody and everything there is out there. :-D Luckily my client counts for me, so I don't have to.
@rocknswap Try to counteract and bring more rocks than you take next time.
@rocknswap Hahaha, now suddenly kids in @prologic's area want even more time on the devices.
@prologic I see a man in the middle rubbing his hands.
@thecanine @jlj The read status is one of the most important features, I couldn't live without it (was one of the first things I implemented). I know of two clients that support it: @movq's jenny/mutt combo and my tt (unfortunately still not yet ready for production use by others).
@thecanine @prologic I don't use yarnd but that sounds like a pretty good compromise to me.
@prologic I really don't have a problem with twts from the future. I just mark them read and the next time they will be hidden just as any other read twt. ;-) But to be fair I deal with time travelling twts only a couple of days now. Prior to my fix they just showed up when their time came.
@prologic Absolutely. It appears there's not much interest in this topic, maybe wait a couple more days before finally settling on a decision.
@prologic Well, it depends on the client. The original twtxt client for example just caches a copy of the current feed, so on next update cycle it just replaces everything it had for this feed with the current contents. I'd imagine that's a common model.
@fastidious Ah, I see. So quite typical I'd say. That's quite an amount of data.
Holy moly, nearly 200 new twts today… O_o This will take some time to go through.
@fastidious Cool, makes absolute sense. Are you going through the photos regularly or "just" every now and then whenever you feel like it? Like, are there some "special occasions" in this tradition?
@fastidious Very good, ta! With resetting I meant "removing" the field, like undeclaring it. But that's way too enterprisey I guess and is completely opposite of what the code does at the moment. I think for nick and description specifically clients may just take the very last value and discard any previous ones. Other than bookkeeping a history of transitions, actually doing so would not add too much value, would it? As for the url field it might be beneficial to redefine the handling in the Twt Hash Extension Specification and state that the last (and not the very first) url must be used for hashing. Or introduce a new hashurl (or whatever it may be called) to be used for hashing. The parser could use the latest encountered hashurl from now on when generating the hashes. So when a feed moves to another URL it states the old and the new hashurl at the correct positions in the feed (haha, no ordering is mandatory) so hashes of older twts don't break. But that's a different story. Also much more thought needs to be put into that, too.
Hey twtxt users I want to hear your opinions! Our Metadata Extension Specification does not explicitly state anything about empty values (empty keys, however, are explicitly forbidden). First I thought that empty values would be a good thing to have when implementing the fix today. Maybe useful for flags. But then, talking to @xuu on IRC arised two questions: 1.) What kind of flags even? 2.) Why would such a flag not have a value of "true", "on", "1", whatever? An empty value would probably be handled the same as an absent metadata field anyways. So why make it more relaxed than it needs to be? Thus I'm wondering, do you have any real use case where an empty value would be useful? Otherwise I'd say for simplicity we just require that both key and value must be non-empty. If a value is empty, the parser would treat it as a regular comment and not a metadata field. Since we add metadata to a list, we also can't reset a field using this technique either. Also, why would one want to reset a field? Glad to hear your thoughts.
@fastidious Hehe. ;-) I heard that Asians take so many photos on their holidays so they can go throught them afterwards and hereby really enjoy their journey. In their culture it's more about the past experience than the current moment. Could be completely wrong, though.