# 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 6525
# self = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=3896
# next = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=3996
# prev = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=3796
Sunset was not bad:
Colorful sunset
@prologic Well, gotta pay the keysmith a visit on Monday.
@prologic Thanks! The manure spreader had been very busy in 5. ;-) We had 7°C and with the sun out and little wind it felt about 10°C I'd say. Definitely dont want to trade your heat. ;-)
Today's temperatures were quite weird. A bit too cold and a bit too warm at the same time. Constantly buttoning up the jacket just to open it up again shortly to repeat the cycle. Camera ruined every other shot today, completely out of focus, what the heck!?
Flipped up ice floe in a runlet
Unlocked the door and went into the house while pulling out the key at the same time. Looks like I moved too quickly and bent the key 45°. Attempting to straighten it back in the vise split it in two. That was expected. At least it didn't snap off in the keyhole.
@prx "Praise the meteor to clean up the Earth" is fantastic! :-D I will try to remember and use that.
Hmm, some of these expired Toffifee taste quite a bit like soup seasoning. Weird.
@bender Exactly, whoever lives down in that puddle, their skylight windshield is made of ice. ;-)
@xuu Thanks, will look into that. Didn't know about the clean
command.
@prologic But isn't this just duplicating old dependencies on your proxy then? :-?
@prologic That works, yeah. But then I have to redownload a shitload of dependencies again next time. Well, just abandon dependency hell projects I reckon.
This night we had -8°C and the sun heated it to 2°C over the day. Completely calm, no wind at all. We didn't see anybody today. Literally zero humans in the wild. Much appreciated.
What's this, desert wellers? A broken windshield?
No, just a frozen puddle
Any good ideas on how to maintain ~/go/pkg/mod and to remove old garbage?~
@abucci This algorithm can be simplified by not adding and removing a "triage todo list" entry in the first place.
I've got a question to all fellow Atom feed authors out there: Do you know of a reliable way to use relative URLs in Atom feed entry contents? My motivation is to cut down the feed size in bytes by avoiding all this repeated base URL information for my nature photo feed.
I tried to switch from absolute URLs to relative ones and set <content type="html" xml:base="…">
, but that didn't work out at all. I should have used <base>
in <content type="html">
instead. No luck, either. In the Firefox extension Feed Preview the feed URL is used to resolve all the links which resulted in tons of dead links, because the base URL and feed URL are quite different.
In Newsboat and Vivaldi's feed view this worked, though. Newsboat implements several mechanisms to resolve URLs, e.g. <link>
and even xml:base
attributes, but unless I didn't miss it, there's no special handling for <base>
tags in the <content>
. Not sure on the exact algorithm Vivaldi implements.
I simply cannot find any official documents explicitly stating relative link resolution strategies. Section 2 of the Atom specification explicitly allows the use of xml:base
:
| Any element defined by this specification MAY have an xml:base
| attribute [W3C.REC-xmlbase-20010627]. When xml:base is used in an
| Atom Document, it serves the function described in section 5.1.1 of
| [RFC3986], establishing the base URI (or IRI) for resolving any
| relative references found within the effective scope of the xml:base
| attribute.
|
| — https://www.rfc-editor.org/rfc/rfc4287#section-2
But that only counts for XML and not HTML, as the Feed Preview author pointed out to me after I sent him an e-mail.
To make things worse, the W3C Feed Validator issues a warning when using <base>
in the <content>
:
| content should not contain base tag
The explanation is of completely generic nature and doesn't help a bit in this particual instance.
Both the issued warning and the lack of documents describing URL resolution heavily suggest that this is not a bug in the Feed Preview but rather some implementation detail that might just work, or not. I wasted several hours with a mate this evening to experiment and read specs. No result, though. Thus, I reverted back to absolute URLs. Quite sad, can it be true that this simply doesn't work reliably? Any hints and thoughts are greatly appreciated!
@bender Hahaahaaa, sounds about right! :'-D
@prologic Shortly after it turned into rain and all white was gone.
@justamoment I meant you could select a handwriting font and then do calligraphy, too. At least from a result's point of view. :-)
@movq Hahaha, this is hilarious! Not just great explanations in general but also a brilliant outro: "Remember to brush your teeth". :-D I wasn't expecting that. I love it! @abucci Just a little bit. :-D Like the comments said, Lauri used it on himself years ago. :-D
@movq Ah, that explains it. Well, I backinserted exactly the one, that jenny missed. I will keep that in mind and try to avoid it in the future.
@movq Yeah, I was surprised, too. But I can't remember when I played last time and had one of these sticks in my hand. At least over a decade ago.
Is jenny doing range requests? I can't see it in the source code but maybe you're running an unpublished version.
@stigatle Nice satellite dish. Are you going to build it yourself?
@prologic Thank you! Those timbers probably become construction timber with some luck. Or firewood, beech goes through the chimney here because it has good burning properties. Quite sad, it handplanes really well, too. Didn't work with beech a lot, but it was always a charm when I did.
Welcome to Mordor. So much destruction, this looks like a crime scene. Sun was out and the 6°C felt quite nice. Lot of forest owners were working in the woods toady. One woman was even splitting wood with an axe in the middle of the road. Chainsaws howling.
Forest looks like a war zone
@movq At least there's that, good. Well, I guess, have fun pooling then. ;-) @prologic I reckon I make this a hard condition when I switch jobs, too.
@movq Oh crap, five weeks!? Hell, this is bad. :-( I don't understand it either how we did that years ago day in, day out. Feels just so wrong. I hear you, I even complain if I have to come in once every one or two months. It's a giant waste of time.
But did you get the WiFi finally fixed? Or has the insane commute to continue? 😰
@movq It was muddy indeed (as witnessed by my hiking trousers and boots). But I've seen worse. We had rain for the last days, which is quite nice for nature, so I don't mind it too much. I can hear the pattering just now. Quite calming.
Yesterday, I came into constant drizzling literally a minute after leaving the house for a stroll to the dairy farm. An hour later I was well-soaked, because I didn't take an umbrella with me. Oh well. But I put on the backpack rain cover. Luckily, it's semi-attached to the bag. I think I have to build some kind of dryer rack/stand/thingy so that I can hang my wet stuff over the bathtub to let it drip. Earlier I rinsed out my trousers in a bucket to get the majority of the mud off.
Exactly, we reckoned it is a Kleiber, too. You could have just looked at the alternative text of the image in the announcement twt. 8-) But it's always good to have an independent second opinion that came to the same result. :-)
Good timing, it started to drizzle when we were nearly home again. Other than that the weather was a gray soup. My camera had a hard time with long exposures in this darkness.
We came across a section that was heavily harvested. 18 and 19 show 3.5 to 4 meter tall piles of logs. Several hundred meters were lined with stack after stack. On the one hand it was cool to stand next to it a big heap but also quite sad at the same time.
Hard to believe, but 13 and 14 is the same tree. We reckon that is a birch because of the white bark, but this cobble stone texture (for the lack of a better term) at the bottom doesn't really look a birch at all. Neither of us has seen that before.
Nuthatch
@thecanine To hand in some types of garbage (e.g. construction rubble over one bucket load) at the local civic waste collection points you have to pay a fee. But you'll find all sorts of crap in the wild that you can dispose of for free at these centers. No idea what they are thinking. It remains a mystery.
@stigatle Wow, like a painting out of a picture book.
@off_grid_living Ah, ta. Just had a look at some high resolution photos of those timbers. How gorgeous. I suddenly feel like building something in the woodshop.
@movq That sounds much more reasonable.
@jlj You did very good! Crazy how much you gathered in such a small amount of time. It's sad to see how people are just disposing of their rubbish like that. @thecanine Not at all. Unfortunately, that sounds familiar. You won't believe what we dig up each year with the scouts at world cleanup day or our own forest cleaning event.
@bender Thank you very much! :-) Only blue sky and more sun would have made for even nicer scenery. But I don't want to complain at all.
For the record (if you don't care, just wait for this to be evicted from the cache :-P), here's what I said on IRC, partially sprinkled with some brief explanations I added after the fact.
> It’s another language to learn (SQL)
Yes, but it's not too terrible, you probably don't need all the features, you stick to a simple subset of the language that can easily be learned in my opinion.
> It adds another dependency to your system
Sort of. But you can omit your own archive/cache implementation in return. Provided, you use a properly tested and well-proven database, you don't have to worry about your own invention.
> It’s another failure mode (database blows up, scheme changes, indexs, etc)
That does make exactly no difference from your own stuff blowing up in your face or changing anything regarding schema or indexes. Your own cache/archive can become corrupted, too. Changing the data that will be stored means even your own solution has to deal with that as well.
> It increases security problems (now you have to worry about being SQL-safe)
Same here. You have to think about that with your own implementation as well. Gotta simply have to secure your cache and archive data on disk. I probably misunderstood the part on SQL-safety, hence there was a follow-up argument on IRC:
> There is no possibility of any silly SQL injection flaws
Yes, but every serious database driver has simple solutions to avoid injections. Don't get me wrong, it is a point, but just so minor, that it can be easily addressed, esp. when components are properly cut to their responsibilities (aka there is a storage access layer that can simply escape everything, if explicitly needed).
Another advantage with a database is that there is already wide tool support out there. You don't have to come up with your own specialized tooling in order to look into your dataset when trying to figure out what rubbish has accumulated etc. I'm just thinking about all the discussions with bad data we had in the past. As far as I understood it, initially there was no way to analyze that, custom code had to be always written first.
Having said that, I'm backing off this discussion. Please note, I don't want to convince anybody to switch to a database, I just think these arguments are flawed (that term might be too harsh, who knows, English is not my mother tongue).
@prologic And probably be even more horrific. On a serious note, I believe this can be avoided, when done properly. But the incentives these days are such that nobody in companies actually care too much.
@abucci Exactly! What's wrong with that? :-D
@eldersnake Wow, crazy! Nice writeup. Let's hope that Starlink doesn't produce a similar data breach.
@abucci Not really an answer to your question, but I usually try to reduce the number of dependencies to a bare minimum in the first place. Of course this doesn't always work out perfectly. If something becomes unmaintained there's always the possibility to fork myself to either keep it at this version or maintain it a bit. Eventually, I probably move on to something else, though.
@prologic No, that feller was already there. We didn't modify anything except from leaving out footprints in the snow. ;-)
@eldersnake Oh yes! I kind of doubt that curated search engines will get somewhere in the end. It's just the sheer amount of rubbish that has to be gone through.
@stigatle @prologic Snow camping is really tempting, unfortunately, my sleeping bags are not rated for these temperatures. If I had a tent and planned ahead, I could try it this night, it is only supposed to get down to -2°C. On Sunday night/morning it should even reach -6°C. Brrr. Keep us posted with your snow camping adventure! :-)
@bender @jlj Thanks, mates! :-) Yes, seeing this for real is something entirely different. All the subtleties don't show up on camera. Not just because of the white balance and snow causing everything to overexpose. But like clouds moving in at the summit and darkening the environment over there a wee bit. It's only a tiny bit, but still just noticeable. And then looking the other way and observing that it is still brighter because the clouds haven't reached that spot yet. Low hanging clouds are always super crazy to experience first hand.
As you can see in 01, when we reached the mountain foot, the view to the top was certainly not great but also not too bad, at least we could still see it. Finally up there, zero visibility, because of the clouds (16). It then cleared for a few seconds (17) at the same spot, but only barely. Closed up again quickly, the clouds still had us. The more we descended, the more the clouds moved on as well. Back down, the view from up top must have been heaps better again (at least we could see the flying flag once more). ;-)
All the ice crystals on the trees are really amazing. Super crazy to see what the wind managed to do, building up these beautiful structures.
Another thing that doesn't come across is walking in the snow and ice. Unfortunately, you miss out on all sorts of different noises it produces and how it feels. Scrunch varies with powdery snow, frozen snow and hollow ice sheets. Also what I really like is how quiet it gets. Snow is an amazing sound dampener.
The wind made the flags raddle around, on our descend we got tricked numerous times and thought that somebody is coming up that snowy beaten track. Walking in that snow and the flying flag made almost the exact same sound. :-)
Sorry, @bender, I can't think of a single word describing that. Even asked my parents and neither can they. If you eventually stumble across it, let me know. ;-) You can just translate it and say „das Unzufriedenheitsgefühl mit der derzeitigen Geschäftsleitung“.
Today's hike photo gallery is mainly single-colored. Even with my good hiking boots I nearly slipped about twenty times. Paths were extremely icy. I reckon 14 and the video show a frozen spider thread, we've seen a couple of them, pretty nice. No icicles were visible far and wide, though.
Stormbrushed ice crystals on twigs
@movq Wow, this is super interesting to see! Thank you very much, mate. <3 Now that hook is cool, I'm surprised that it can extend the ink supply that long. Quite genious.
Holy moly, half an hour for a few lines?! This is really something. But the result is totally worth it. Your writings look amazing, let me tell you. I bet the receiver of the birthday card was incredibly pleased.
Do I read the wikipedia article correctly, drying takes around a day? This can't be true, can it? Anyways, bring us joy with calligraphy in the future. :-)
If you'd take your time, @justamoment, your handwriting could be nice, too. :-D
@movq Oh, cool. :-) Does your pen have an ink cartridge or do you dip it in an ink jar? The result looks very uniform, so I suspect the former, but I can't be sure.
@movq Ah, I see. Although the two "E"s are quite a bit different, I can't decide whether I prefer one over the other. They have both some very nice and unique features. How did you get into calligraphy?
Alright, at closer examination the "u" has a small prong in the left lower corner.
Fingers crossed, @jlj! And you didn't have one, @xuu? :-D What the heck, seriously?
@movq Oh, even Fraktur! It took me brute force to decypher "Heute", mainly due to the "H". Both "n" and "u" look identical to me, so my brain tricked me into believing that it of course has to be an "n". Looks quite beautiful, keep it coming.
@off_grid_living I can't tell, are these steps brown or purple? What kind of wood is that? Nice garden!
@bender Great work, looking good, mate! I hope the third round goes equally smoothly.
@ychbn This is an interesting read, very cool!
Heck, yeah! Look who came to pay me a visit!
Bushy tail in the tree, who could it be?
I should have closed the door to avoid the heat escape into the video frame.
@stigatle Noice! Especially the first one looks like miniature wonderland. :-)
@movq Nice, even not too little!
@abucci Great introduction to threat models! I'd love to have seen that when we were about to create one ourselves at work. :-)
@movq A bit of snow, indeed:
Blackbird in the snow
Don't know if that's uncommon or not. Haven't attended so many funerals (yet).
The surprisingly powerful sun was out and made the -3°C really not too bad at all. In direct sunlight it felt much warmer than yesterday. There were even more trees piled up next to the forest road this time. The dude had cut down really a lot. His forwarder made super deep (easily 50-70 cm) mud holes everywhere. Looking quite creepy now.
The neighbor district had about 8 cm of snow, we only got 4 cm I'd say. Quite weird, because they're actually a bit lower lower in altitude. It was great fun, though, walking through the snow.
@mckinley Phew, the German Wikipedia still looks the same. What sucks in the new English layout is that I have to open a stupid menu first in order to switch languages. To make things worse, at most eight items are visible at the same time. Menus should be illegal in the web. Thanks for the ?useskin=vector
workaround!
Thanks, @prologic. In the beginning my hands were quite cold, indeed. But after a bit of walking, I heated up. Even had to strip my scarf on the ascend.
@prologic Ah, you were lucky this time. In contrast, @bender, not so much, though. :-D There, have this nice hook.
Like last Thursday, I went on a hike after lunch and enjoyed the 0°C cool daylight. Gotta make use of the flextime, I can work when it's dark. :-)
When passing the sheep I smelled all of them. It was a surpringly pleasant odor in the air. Sheep often stink a bit, but not this time. Forest workers made use of the slightly frozen ground and pulled out plenty of trees. I even came across a working forwarder. Photos turned out all shitty, though.
Entering and leaving the mountain village, I ran into a funeral. I was glad to wear my good hiking boots, the path up the mountain was one thick sheet of ice. Very hard to walk on. At the summit, the Berg-Back-Buben ("Mountain baking boys") were active and put their baked goods into the oven. Never witnessed that moment before. That smelled really, really awesome.
Sheep chewing grass on the snowy paddock
@prologic At least that's the goal. However, progress will not be made until the weekend, that's for sure.
@movq @prologic It's been quite a while, but Ada could be a candidate in my opinion. Still quite compliated for beginners, though.
@prologic Tview itself ships a list and tree widget, but they're extremely limited. List items must all have either one or two lines, tree items can only be one line long.
@prologic Ah, that only provides graph stuff. Unfortunately, doesn't help me.
I could paint on a second screen and then copy over the cropped segment that should be in view. I think I've seen this happening in urwird for scrolling. I could be wrong.
@movq Absolutely. Stopped for today, have to consult my pillow. @prologic What's that? I don't find anything useful with that term.
I'm currently writing my own tview tree table widget where items can be multiple lines long. Turns out scrolling and offsets are quite a challenge. I might have to revisit my mental model. Building this on top of urwid was much easier as I could use some existing widgets as building blocks like a list that already implemented scrolling for arbitrary long items. Tview on the other hand doesn't offer me anything that I can reuse for this undertaking. Starting from scratch.
Aha, @carsten! „Im Gegensatz zum ICMP bei IPv4 ist ICMPv6 zwingend für den Betrieb von IPv6 nötig. Ein generelles Blockieren von ICMPv6 auf der Firewall führt dazu, dass IPv6 nicht funktioniert (vgl. RFC 4890).“ – https://de.wikipedia.org/wiki/ICMPv6 (Translation for the English speaking world: In contrast to ICMP for IPv4, ICMPv6 is mandatory for the operation of IPv6. Generally blocking ICMPv6 on the firewall causes IPv6 not to function.)
@carsten Something is off with your server. I have a lot of trouble with the official twtxt client's Python AsyncIO to fetch your feed for a few days. Always get a ServerTimeoutError('Connection timeout to host https://yarn.zn80.net/user/carsten/twtxt.txt')
. It turns out, both IPv4 and IPv6 addresses are resolved and the v6 one is preferred. However, connecting via v6 (2606:54c0:5540:18::14:2a4
) fails and an attempt with v4 (81.172.204.59
) is not made at all, the whole thing just aborts. :-( (I believe this is an error with aiohttp
.)
curl
, on the other hand does fall back to v4 automatically and then suceeds in getting your feed. It also attempts v6 first if I interpret the verbose output correctly. I temporarily monkey-patched the twtxt
client to force IPv4 usage and was able to download your feed.
Now the really weird thing: Your firewall seems to block ICMP for v4, but not for v6. ping4
returns nothing, ping6
happily replies back. What the hell?
@carsten Looking forward to the photos. :-)
@eaplmx ISO 8601 calendar weeks for the win, indeed! Week 1 contains 4th January, basically the first week where most days are in the new year rather than the old year. Which calendar week definition is used in Mexico?
What was the issue you had?
@justamoment Hahaha, what a great story. :-D I never had anything close to this happen to me.
@stigatle Hahaha, that sounds like a nice lazy Sunday. For you, that is, not so much for your dog. ;-) I'm enjoying the rain from the indoors this weekend.