# 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 196264
# self = https://watcher.sour.is?offset=172356
# next = https://watcher.sour.is?offset=172456
# prev = https://watcher.sour.is?offset=172256
> you've ruined twtxt

Not sure what to say here. 🤔
> you've ruined twtxt

Not sure what to say here. 🤔
> Thank you for all the hard work put into the project.

Thank you to whomever said this! 🙇‍♂️
> Thank you for all the hard work put into the project.

Thank you to whomever said this! 🙇‍♂️
> Many of the faces go hand in hand or depend on the selected protocol a feed is published with or client features. I'm pretty sure people interpret different things into these terms.

See previous. Sorry 😞
> Many of the faces go hand in hand or depend on the selected protocol a feed is published with or client features. I'm pretty sure people interpret different things into these terms.

See previous. Sorry 😞
> Not sure what to think about the stack ranking question. I care that it’s a simple text file i can just stick on my server. Security, identity, &c come out of how I manage the server.

See previous.
> Not sure what to think about the stack ranking question. I care that it’s a simple text file i can just stick on my server. Security, identity, &c come out of how I manage the server.

See previous.
> I don't know what all the facets mean. E.g. what's the difference between "Integrity" and "Authenticity"?

Yes, I totally get where you're coming from. However after ~22 results, I _think_ y'all have figured out how to rank them appropriately anyway 🤣~
> I don't know what all the facets mean. E.g. what's the difference between "Integrity" and "Authenticity"?

Yes, I totally get where you're coming from. However after ~22 results, I _think_ y'all have figured out how to rank them appropriately anyway 🤣~
Sharing the comments of the poll (_anonymous so I have no idea whom the comments are from_):

> your poll should include questions about markdown. personally i think inline bits like style, links, images are yes. block quotes, code blocks, bullet lists are mid. but tables and footnotes are no.

Yes sorry about this, I wasn't able to change much after publishing the poll 😅
Sharing the comments of the poll (_anonymous so I have no idea whom the comments are from_):

> your poll should include questions about markdown. personally i think inline bits like style, links, images are yes. block quotes, code blocks, bullet lists are mid. but tables and footnotes are no.

Yes sorry about this, I wasn't able to change much after publishing the poll 😅
[47°09′47″S, 126°43′02″W] --no signal--
@slashdot GTFO 🤣
@slashdot GTFO 🤣
cc @xuu
cc @xuu
@bender I believe it is Unix-Unix Copy Protocol. Not Unix Copy-Copy Protocol.
@bender I believe it is Unix-Unix Copy Protocol. Not Unix Copy-Copy Protocol.
> 83(4) GDPR sets forth fines of up to 10 million euros, or, in the case of an undertaking, up to 2% of its entire global turnover of the preceding fiscal year, whichever is higher.


Though I suppose it has to be the greater of the two. But I don't even have one euro to start with.
> 83(4) GDPR sets forth fines of up to 10 million euros, or, in the case of an undertaking, up to 2% of its entire global turnover of the preceding fiscal year, whichever is higher.


Though I suppose it has to be the greater of the two. But I don't even have one euro to start with.
Wind's picking up. The guys are busy; you're in charge. Ya know what? You're a goddamn swordboat captain! Is there anything better in the world?
@bender Well as you've pointed out in the past, both protocol suffer from Discovery (_as I've stated as well_) and more often than not, users that publish Twtxt feeds over these protocols tend to just "point into the void" and it's next to impossible to have _any_ kind of "social interaction" (_ignoring personal choices of course, if one's feed is intended for 1-way ..._)
@bender Well as you've pointed out in the past, both protocol suffer from Discovery (_as I've stated as well_) and more often than not, users that publish Twtxt feeds over these protocols tend to just "point into the void" and it's next to impossible to have _any_ kind of "social interaction" (_ignoring personal choices of course, if one's feed is intended for 1-way ..._)
I _think_ there's a bug in yarnd hwoever:


$ yarnc debug https://sunshinegardens.org/~xjix/twtxt/tw.txt
...
bqor23a 2024-09-26T11:09:28-07:00	if twtxt 2 is dropping gemini support, i will probably move on and spend more time on my gemini social zine protocol instead. i think the direction of the protocol is probably fine, but for me web is a tier 2 publishing channel. if the choice is between gemini and http i'm always going to pick gemini. its been a fun ride, but i guess this is where i get off.


The yarnc CLI tool and the lextwt parser we use in yarnd _correctly_ parses the feed and sets the Twter.HashingURI to the latest # url = found in the feed. However my pod hasn't picked this up 😢 I follow @cuaxolotl as https://sunshinegardens.org/~xjix/twtxt/tw.txt
I _think_ there's a bug in yarnd hwoever:


$ yarnc debug https://sunshinegardens.org/~xjix/twtxt/tw.txt
...
bqor23a 2024-09-26T11:09:28-07:00	if twtxt 2 is dropping gemini support, i will probably move on and spend more time on my gemini social zine protocol instead. i think the direction of the protocol is probably fine, but for me web is a tier 2 publishing channel. if the choice is between gemini and http i'm always going to pick gemini. its been a fun ride, but i guess this is where i get off.


The yarnc CLI tool and the lextwt parser we use in yarnd _correctly_ parses the feed and sets the Twter.HashingURI to the latest # url = found in the feed. However my pod hasn't picked this up 😢 I follow @cuaxolotl as https://sunshinegardens.org/~xjix/twtxt/tw.txt
I _think_ there's a bug in yarnd hwoever:


$ yarnc debug https://sunshinegardens.org/~xjix/twtxt/tw.txt
...
bqor23a 2024-09-26T11:09:28-07:00\tif twtxt 2 is dropping gemini support, i will probably move on and spend more time on my gemini social zine protocol instead. i think the direction of the protocol is probably fine, but for me web is a tier 2 publishing channel. if the choice is between gemini and http i'm always going to pick gemini. its been a fun ride, but i guess this is where i get off.


The yarnc CLI tool and the lextwt parser we use in yarnd _correctly_ parses the feed and sets the Twter.HashingURI to the latest # url = found in the feed. However my pod hasn't picked this up 😢 I follow @cuaxolotl as https://sunshinegardens.org/~xjix/twtxt/tw.txt
@prologic I will not be following anyone on those two protocols. Can’t care less.
Gemini/Gopher Twtxt feeds account for less than 1% in existence:


$ total=$(inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk '{sum+=$1} END {print sum}'); inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk -v total="$total" '{printf "%d %s %.2f%%\n", $1, $2, ($1/total)*100}' | sort -r
7 gemini: 0.66%
4 gopher: 0.38%
1046 http/https: 98.96%
Gemini/Gopher Twtxt feeds account for less than 1% in existence:


$ total=$(inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk '{sum+=$1} END {print sum}'); inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk -v total="$total" '{printf "%d %s %.2f%%\\n", $1, $2, ($1/total)*100}' | sort -r
7 gemini: 0.66%
4 gopher: 0.38%
1046 http/https: 98.96%
Gemini/Gopher Twtxt feeds account for <1% in existence:


$ total=$(inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk '{sum+=$1} END {print sum}'); inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk -v total="$total" '{printf "%d %s %.2f%%\\n", $1, $2, ($1/total)*100}' | sort -r
7 gemini: 0.66%
4 gopher: 0.38%
1046 http/https: 98.96%
Gemini/Gopher Twtxt feeds account for less than 1% in existence:


$ total=$(inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk '{sum+=$1} END {print sum}'); inspect-db yarns.db | jq -r '.Value.URL' | awk -F'//' '{if ($1 ~ /^https?/) print "http/https:"; else print $1}' | sort | uniq -c | awk -v total="$total" '{printf "%d %s %.2f%%\n", $1, $2, ($1/total)*100}' | sort -r
7 gemini: 0.66%
4 gopher: 0.38%
1046 http/https: 98.96%
Note however this doesn't solve the problem of Caching at all. It just works around it and with enough clients fetching a Gopher/Gemini feed, this # refresh becomes useless anyway at a certain point of scale.
Note however this doesn't solve the problem of Caching at all. It just works around it and with enough clients fetching a Gopher/Gemini feed, this # refresh becomes useless anyway at a certain point of scale.
@bender Well this is the thing really. Gopher and Gemini are very broken ways to distributed content. Broken in the sense that for Twtxt either support a) caching in any way shape or form b) discovery in any way shape or form.

This is a bit of a problem because if a Feed author complains (_nad they have in the past_) that their Gopher/Gemini feeds are being hit "too hard", well that's really kind of on them for choosing to host their feed on an ill advised protocol thatc cannot possibly support Caching at all.

This is primarily one of the reasons we introduced the idea of a "feed advised refresh interval" that clients SHOULD respect.

See: https://dev.twtxt.net/doc/metadataextension.html#refresh

> refresh
> This optional field is used by feed authors as a hint to clients to control how often they should fetch or update this feed.
>
> The value of this field is seconds represented by an integer.
>
> NOTE: An empty, bad, or unparsable value is ignored.
@bender Well this is the thing really. Gopher and Gemini are very broken ways to distributed content. Broken in the sense that for Twtxt either support a) caching in any way shape or form b) discovery in any way shape or form.

This is a bit of a problem because if a Feed author complains (_nad they have in the past_) that their Gopher/Gemini feeds are being hit "too hard", well that's really kind of on them for choosing to host their feed on an ill advised protocol thatc cannot possibly support Caching at all.

This is primarily one of the reasons we introduced the idea of a "feed advised refresh interval" that clients SHOULD respect.

See: https://dev.twtxt.net/doc/metadataextension.html#refresh

> refresh
> This optional field is used by feed authors as a hint to clients to control how often they should fetch or update this feed.
>
> The value of this field is seconds represented by an integer.
>
> NOTE: An empty, bad, or unparsable value is ignored.
@bender To be fair, this has never been a problem for folks that have/use stable Feed URI(s) 🤣
@bender To be fair, this has never been a problem for folks that have/use stable Feed URI(s) 🤣
Oh, and I think I said this before, but just in case, fuck Gemini. Hell, fuck Gopher too. Bring on telnet, and UCCP. 😈
This is confirmed to be the case:


$ for url in gemini://sunshinegardens.org/~xjix/twtxt/tw.txt https://sunshinegardens.org/~xjix/twtxt/tw.txt //sunshinegardens.org/~xjix/twtxt/tw.txt; do yarnc hash -t '2024-09-26T11:09:28-07:00' -u "$url" "if twtxt 2 is dropping gemini support, i will probably move on and spend more time on my gemini social zine protocol instead. i think the direction of the protocol is probably fine, but for me web is a tier 2 publishing channel. if the choice is between gemini and http i'm always going to pick gemini. its been a fun ride, but i guess this is where i get off."; done
fk2af7q
7kvnpaq
bqor23a
This is confirmed to be the case:


$ for url in gemini://sunshinegardens.org/~xjix/twtxt/tw.txt https://sunshinegardens.org/~xjix/twtxt/tw.txt //sunshinegardens.org/~xjix/twtxt/tw.txt; do yarnc hash -t '2024-09-26T11:09:28-07:00' -u "$url" "if twtxt 2 is dropping gemini support, i will probably move on and spend more time on my gemini social zine protocol instead. i think the direction of the protocol is probably fine, but for me web is a tier 2 publishing channel. if the choice is between gemini and http i'm always going to pick gemini. its been a fun ride, but i guess this is where i get off."; done
fk2af7q
7kvnpaq
bqor23a
Either way, it is the last time I do something like this. It turns on my fastidiousness, and kind of makes me feel uneasy. Will pause a bit longer from now on.
Yup confirmed!


# url = //sunshinegardens.org/~xjix/twtxt/tw.txt
# url = https://sunshinegardens.org/~xjix/twtxt/tw.txt
# url = gemini://sunshinegardens.org/~xjix/twtxt/tw.txt


@cuaxolotl has changed the url of their feed (_yet again_) and changed every hash in their feed.

@antonio is right to call this out. We should drop the reliance on the # url metadata field and in fact we should probably just drop this entirely from the spec and go with # uuid as the basis of a feed's identity.

Even though this happens very rarely (_feeds moving to new locations_) it more frequently happens with folks that try to serve their feed from Gopher, HTTP and Gemini.
Yup confirmed!


# url = //sunshinegardens.org/~xjix/twtxt/tw.txt
# url = https://sunshinegardens.org/~xjix/twtxt/tw.txt
# url = gemini://sunshinegardens.org/~xjix/twtxt/tw.txt


@cuaxolotl has changed the url of their feed (_yet again_) and changed every hash in their feed.

@antonio is right to call this out. We should drop the reliance on the # url metadata field and in fact we should probably just drop this entirely from the spec and go with # uuid as the basis of a feed's identity.

Even though this happens very rarely (_feeds moving to new locations_) it more frequently happens with folks that try to serve their feed from Gopher, HTTP and Gemini.
@bender Hmm I _think_ I know why...


2024-09-27T01:28:53+00:00	(#bqor23a) @<cuaxolotl https://sunshinegardens.org/~xj9/twtxt/tw.txt> Wait, what!? We're dropping Gemini support!?


From @aelaraji's feed. I think @cuaxolotl doesn't do threading properly, I've run into this once before. I'm not sure what client they use? 🤔
@bender Hmm I _think_ I know why...


2024-09-27T01:28:53Z\t(#bqor23a) @<cuaxolotl https://sunshinegardens.org/~xj9/twtxt/tw.txt> Wait, what!? We're dropping Gemini support!?


From @aelaraji's feed. I think @cuaxolotl doesn't do threading properly, I've run into this once before. I'm not sure what client they use? 🤔
@bender Hmm I _think_ I know why...


2024-09-27T01:28:53+00:00\t(#bqor23a) @<cuaxolotl https://sunshinegardens.org/~xj9/twtxt/tw.txt> Wait, what!? We're dropping Gemini support!?


From @aelaraji's feed. I think @cuaxolotl doesn't do threading properly, I've run into this once before. I'm not sure what client they use? 🤔
@bender Hmm I _think_ I know why...


2024-09-27T01:28:53Z	(#bqor23a) @<cuaxolotl https://sunshinegardens.org/~xj9/twtxt/tw.txt> Wait, what!? We're dropping Gemini support!?


From @aelaraji's feed. I think @cuaxolotl doesn't do threading properly, I've run into this once before. I'm not sure what client they use? 🤔
@bender Hmm I _think_ I know why...


2024-09-27T01:28:53+00:00	(#bqor23a) @<cuaxolotl https://sunshinegardens.org/~xj9/twtxt/tw.txt> Wait, what!? We're dropping Gemini support!?


From @aelaraji's feed. I think @cuaxolotl doesn't do threading properly, I've run into this once before. I'm not sure what client they use? 🤔
@prologic yes, it has gotten kind of messy. Someone deleted/edited. That’s the only explanation.
Search engine doesn't know about it either: https://search.twtxt.net/twt/bqor23a
Search engine doesn't know about it either: https://search.twtxt.net/twt/bqor23a
@bender Re that broken thread (#bqor23a). Its the same one. My pod doesn't have the Root Twt: https://twtxt.net/twt/bqor23a => 404 Not Found.

How in the hell did you even reply to this in the first place?=
@bender Re that broken thread (#bqor23a). Its the same one. My pod doesn't have the Root Twt: https://twtxt.net/twt/bqor23a => 404 Not Found.

How in the hell did you even reply to this in the first place?=
@prologic and this one? It’s madness!
@prologic what was this in reply to? 🤭
Hmmm https://twtxt.net/twt/bqor23a => 404 Not Found 🤣=
Hmmm https://twtxt.net/twt/bqor23a => 404 Not Found 🤣=
@bender What was this in reply to? 🤔
@bender What was this in reply to? 🤔
@aelaraji Probably not.
@aelaraji Probably not.
@cuaxolotl Context?
@cuaxolotl Context?
(#bqor23a) @aelaraji
@cuaxolotl We probably won’t in fairness. i only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
@aelaraji
@cuaxolotl We probably won’t in fairness. U only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
(#bqor23a) @aelaraji
@cuaxolotl We probably won’t in fairness. i only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
@cuaxolotl We probably won't in fairness. U only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
@cuaxolotl We probably won't in fairness. I only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
@cuaxolotl We probably won't in fairness. I only called it out because discovery is made much harder with Gopher and Gemini. Caching is also impossible too.
Last chance to have your say before tomorrow's meetup:

http://polljunkie.com/poll/xdgjib/twtxt-v2
Last chance to have your say before tomorrow's meetup:

http://polljunkie.com/poll/xdgjib/twtxt-v2
@aelaraji it is not.
@cuaxolotl Wait, what!? We're dropping Gemini support!?
@cuaxolotl Wait, what!? We're dropping Gemini support!?
@cuaxolotl Wait, what!? We're dropping Gemini support!?
@quark HAHAHAHAHAHAHAHAHAHAHA! 🤣
@quark HAHAHAHAHAHAHAHAHAHAHA! 🤣
@quark HAHAHAHAHAHAHAHAHAHAHA! 🤣
@aelaraji ooooh! It's that kind mission! /me stands, salutes, turns around, and exits the room. LOL.
@aelaraji ooooh! It's that kind mission! /me stands, salutes, turns around, and exits the room. LOL.
@quark HAHA I wish! but no. It's actually deleted/edited images can't not break threads. right!? LOL
@quark HAHA I wish! but no. It's actually deleted/edited images can't not break threads. right!? LOL
@quark HAHA I wish! but no. It's actually deleted/edited images can't not break threads. right!? LOL
🧮 USERS:1 FEEDS:2 TWTS:1105 ARCHIVED:79381 CACHE:2634 FOLLOWERS:17 FOLLOWING:14
FIN?
@aelaraji why, having a party with lots of libations? LOL.
@aelaraji why, having a party with lots of libations? LOL.
@aelaraji not missing it at all!
as a matter of fact! don't mind anything I do/say for the next 72 hours xD
as a matter of fact! don't mind anything I do/say for the next 72 hours xD
as a matter of fact! don't mind anything I do/say for the next 72 hours xD
Don't mind this twt!
Don't mind this twt!
Don't mind this twt!
On My Blog:Real Life in Star Trek, Cost of Living https://john.colagioia.net/blog/2024/09/26/cost-living.html #scifi #startrek #closereading
-¿Cómo que te vas a dormir?-
/https://baldo.cat/media/photos/IMG_2140.jpeg) #catsoftwtxt
-¿Cómo que te vas a dormir?-
#catsoftwtxt
-¿Cómo que te vas a dormir?-
#catsoftwtxt
Gato negro sobre cabezal
#catsoftwtxt