# 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 196277
# self = https://watcher.sour.is?offset=172325
# next = https://watcher.sour.is?offset=172425
# prev = https://watcher.sour.is?offset=172225
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
Gato negro sobre cabezal
#catsoftwtxt
Gato negro sobre cabezal
/https://baldo.cat/media/photos/IMG_2137.jpeg) #catsoftwtxt
What does this image means?

That board is really… something (really can’t explain it with words). Also found interesting that’s a board for a single five-stars user, “Admin”. 😳
[47°09′50″S, 126°43′07″W] Transponder fixed
Pinellas County Running: 4.05 miles, 00:08:38 average pace, 00:34:58 duration

#running
Pinellas County Running: 4.05 miles, 00:08:38 average pace, 00:34:58 duration

#running
Pinellas County Running: 4.05 miles, 00:08:38 average pace, 00:34:58 duration

#running
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.
syndicating to the honknet | https://nilfm.cc/eureka.html
@mckinley dogecoin or nothing. Dogecoin is life! 😅
@mckinley I could have sworn that it resumed even a partial file the other week. But maybe that was because the first attempt used scp when the connection broke. And then rsync detected that only the last part of that file was incomplete and transferred the missing bits. So, lucky by accident. In any case, I will always include -P from now on. :-)
Ah, I see! Thanks, @bender.
@david Sounds lovely. :-)

We had rain all day long and my mate and I still went for a walk with our umbrellas. It was a bit wet. But now I can send my drying rack over the tub on its maiden voyage. Should have built a second rod for more capacity.
[47°09′47″S, 126°43′06″W] Resetting transponder
Thricegreat's Webpage | https://thricegreat.neocities.org/
Thricegreat's Webpage | https://thricegreat.neocities.org/
@prologic that "little database that could" is simply amazing, isn't it? I run Conduwuit (nevermind, this one is RocksDB), and GoToSocial using it as a backend, no issues. And, of course, sqlite is the database of choice for a lot of things under iOS.
@prologic that "little database that could" is simply amazing, isn't it? I run Conduwuit (nevermind, this one is RocksDB), and GoToSocial using it as a backend, no issues. And, of course, sqlite is the database of choice for a lot of things under iOS.
No reason I haven't switched. I trust Gitea (for now).
No reason I haven't switched. I trust Gitea (for now).
@david SQLite
@david SQLite
@prologic, are you running Gitea with an SQL backend, or using sqlite? Any reason have haven't moved to Forgejo?
@prologic, are you running Gitea with an SQL backend, or using sqlite? Any reason have haven't moved to Forgejo?
@david Yup! 🤞
@david Yup! 🤞
@prologic a wise plan! Who knows, ideas change, and often plans do not hash, right? Mature, mature! :-)
@prologic a wise plan! Who knows, ideas change, and often plans do not hash, right? Mature, mature! :-)
@david Staying private until I've matured them a bit more 😅
@david Staying private until I've matured them a bit more 😅
@xuu was that 2% picked out randomly? I like it! LOL.