this post was submitted on 15 Jun 2023
14 points (100.0% liked)
Technology
37717 readers
382 users here now
A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.
Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.
Subcommunities on Beehaw:
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Upon further consideration, the smart way to do this would be to have the servers exchange community lists, with post subjects and other metadata. That's enough information to find and evaluate a community. Post bodies and comments can then be fetched on request.
Putting all the data in the client strikes me as more bandwidth-inefficient, but whether that matters these days is questionable. Usenet clients don't download subject lines from the server until after you subscribe to a group, but that's a relic of the days of modems whose speed was measured in baud. And of course it's always easier to start your own project than try to fork the existing server code. Not to mention that I haven't bothered to look at the API yet, so my thinking may be way off-base.
Plus, I get the impression that the existing clients are half-baked, so the more the merrier. ;)
@nyan couple of hours of research in and I'm baffled. There is no apparent mechanism for discovery in ActivityPub.
It appears as if the protocol has simply ignored the literal first step of all social interaction: Observation.
Take lemmy as an example, if I visit beehaw.org directly I can click on "Communities" and get a list of them. Yet, there is no way I could identify to get this via ActivityPub. I'm completely and utterly baffled.
A quick skim of the protocol documents suggests you're right: Activity Vocabulary doesn't even mention the "discovery" use case, and no allowance seems to have been made for it. I can't fathom what they were thinking.
The short-term workaround would be scraping the Web portal "Communities > Local" page of each instance periodically for a list (and cache the info centrally? Not sure.) Hopefully the raw HTML is parsable enough that you wouldn't have to involve Selenium (which I've used in my day job—it's awful) or its ilk.
The correct fix is, of course, to add the "discovery" case and messages supporting it to the protocol, either as an extension or as core for the next version. This might take years.
It might be worth asking browse.feddit.de how they get their information.
@nyan so it's not only me missing the elephant in the room. O_o
That's a pretty huge gap. Which has severe consequences all the way down the pipe...
There's a current issue with lemmy with comments not being synchronized properly. Possibly a direct consequence of the entire system replication being push with no backup pull or reconciliation in the protocol.
I'm looking into a couple directions right now, but this is completely breaking the foundational promise of the very concept of fediverse...
It's possible that if you're trying to build a Twitter substitute on top of the protocol, the issue looks like a mere Sicilian dwarf elephant, since Twitter doesn't have great discoverability either (or need it, really), and synchronization hiccups matter less for that kind of service. It's when you're trying to build a Reddit/Usenet substitute that things fall down.
But yeah, it really is a gap in the design.