News for hackers. Stuff that matters.
Re:Introduction to ActivityPub by RobotToaster on Sunday July 09, 2023 @10:26AM (#36654692)
>Then there is stuff like outbox, which contains past messages, but for instance, Mastodon does not fetch old messages at all

It's infuriating how little support activitypub outboxes have. It seems like the perfect way to make small instances work well.

Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @10:50AM (#36654907)
I think the justification Eugen (Mastodon's main developer) gave for not loading a user's past activities is that it would actually harm smaller instances when a user goes viral and the whole network hammers their servers for their content.

I am not convinced of the reasoning, and, in my opinion it's actually working against the idea of "federation", and even against the whole paradigm the internet is built upon: as a UserAgent you should retrieve content when the user requests it.

Re:Introduction to ActivityPub by worrycue on Sunday July 09, 2023 @11:00AM (#36655000)
> I think the justification Eugen (Mastodon's main developer) gave for not loading a user's past activities is that it would actually harm smaller instances when a user goes viral and the whole network hammers their servers for their content.

Maybe we need some kind of protocol that can spread the load where popular messages are duplicated across the network instead of being stuck on one node that can get overwhelmed.

Re:Introduction to ActivityPub by ComodoHacker on Sunday July 09, 2023 @11:41AM (#36655391)
Maybe we don't need to value virality so much.
Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @11:47AM (#36655465)
I doubt "valuing virality" is the real problem. But when you're exposed to a universal network whose numbers increase every day, there are moments when it happens no matter if you want it or not. The "slashdot effect" has been coined maybe 25 years ago, so it's obviously not a new thing. :P
Re:Introduction to ActivityPub by charcircuit on Sunday July 09, 2023 @12:43PM (#36656033)
Virality will happen regardless of your intentions. Your systems need to be designed to handle it.
Re:Introduction to ActivityPub by konart on Sunday July 09, 2023 @11:02AM (#36655031)
BitTorrent?
Re:Introduction to ActivityPub by JamesLeonis on Sunday July 09, 2023 @11:14AM (#36655128)
Not the hero we deserved but the hero we needed.

The irony and tragedy of the Internet is BitTorrent solved Internet Scale at the protocol level, but is at odds with how content companies, ISPs, and Silicon Valley want to organize themselves.

Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @11:51AM (#36655518)
It's also at odds with how people consume content.

If you cram every social interaction a network has in a massive common distributed store (which is what using a bittorrent like protocol would entail) you have every node requiring to consume gigabytes over gigabytes of content, despite being interested in a fraction of a fraction of it.

I don't know if nostr or scuttlebutt resolve this issue, but if they don't ... how do you imagine a mobile app for keeping in touch with your grandma, requiring gigabytes of data transfer and storage would work?

At this point people saying bittorrent is a solution for social networks are basically just the guys who know about hammers and seeing nothing but nails.

Re:Introduction to ActivityPub by JamesLeonis on Sunday July 09, 2023 @12:48PM (#36656085)
I'm advocating it as the content distribution layer, not the social interaction layer. You don't even need all of the metadata, as there are BEP extensions to distribute that as an index [0] or an RSS-style feed [1]. Images are particularly painful, like the previews in Mastodon, because they hammer the origin server rather than looking around at what other peers have. This problem will only get worse as the federation grows in size, both in users and in servers.

I say irony because we had all these scaling problems two decades ago during the peak P2P years, including federation and implicit DDoSing, and BitTorrent emerged as the lasting protocol because it could handle the scaling issues.

I say tragedy because for this to work you do need some openness, which puts people at risk of content companies trolling for you, ISPs dropping you, and is completely antithetical to the control Silicon Valley demands over its users and data.

[0]: http://bittorrent.org/beps/bep_0049.html

[1]: http://bittorrent.org/beps/bep_0039.html

Re:Introduction to ActivityPub by jameson71 on Sunday July 09, 2023 @02:54PM (#36657637)
It’s not so much Silicon Valley demanding that control as Hollywood
Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @03:06PM (#36657791)
Then the fediverse is already there. The video hosting service PeerTube uses bittorrent to distribute the video among viewers.

There were some plans at one point for another project which would deal with music and would host the media on IPFS. Sadly I've never seen any progress on it, despite the idea sounding very good.

Re:Introduction to ActivityPub by malermeister on Sunday July 09, 2023 @01:06PM (#36656269)
The mobile app isn't a peer in this hypothetical torrent network. Your mastodon instance is and it serves you using the same client protocol we have right now.

That way, you solve for the potential hosting issues of smaller hosts not being able to handle the load in case of viral posts etc, all without the clients having to know anything about the implementation details.

Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @03:49PM (#36658182)
If you still require servers that you need to connect to then you kind of lose the benefit of having a social network over a p2p protocol. Or you're also thinking that the social serving aspect is parallel to the media serving aspect that another sibling mentioned.
Re:Introduction to ActivityPub by still_grokking on Sunday July 09, 2023 @01:25PM (#36656497)
Modern smartphones are like the computers end of the 90's.

We've run back than Napster and later eDonkey on those boxes just fine…

Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @03:04PM (#36657774)
Yes, but you were downloading a movie and then you'd delete it to make room for something else on your 40GB HDD. In this case it would be like you'd try to download the whole internet because you're interested in one movie.
Re:Introduction to ActivityPub by radarsat1 on Saturday July 22, 2023 @04:40AM (#36824535)
It's possible to download parts of torrents though.
Re:Introduction to ActivityPub by cratermoon on Sunday July 09, 2023 @12:14PM (#36655752)
NNTP
Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @11:44AM (#36655424)
Since ActivityPub is mostly composed (75%) of immutable json payloads, they are very suitable for caching. The existing infrastructure should be more than enough.
Re:Introduction to ActivityPub by still_grokking on Sunday July 09, 2023 @01:20PM (#36656430)
> Maybe we need some kind of protocol that can spread the load where popular messages are duplicated across the network instead of being stuck on one node that can get overwhelmed.

You mean like any proper P2P protocol?

Add to this multi-cast on internet level, and everybody could actually operate something like YouTube on their internet router…

But of course economic interests of some (already ultra rich) minority will prevent that forever, even we could have it just right now form the technical standpoint.

Re:Introduction to ActivityPub by tedunangst on Sunday July 09, 2023 @11:59AM (#36655608)
Some day computers will be fast enough to serve hundreds of bytes of json many times per second.
Re:Introduction to ActivityPub by mariusor on Sunday July 09, 2023 @03:11PM (#36657835)
They are already if you architect your service for the real purpose, which is to store and process ActivityPub data. Mastodon however is a CRUD application that has its ActivityPub bolted on a totally different data paradigm. It takes a lot of computing to make it run fast.

I created an ActivityPub service which (coincidentally) uses a similar storage idea as HN - raw files on disk - and it runs orders of magnitude faster than a similar sized Mastodon server would. Sadly it's not as fast as HN, but I'm getting it there. :D

Re:Introduction to ActivityPub by RobotToaster on Sunday July 09, 2023 @03:58PM (#36658264)
I think the person you are replying to was being sarcastic.
Re:Introduction to ActivityPub by vxNsr on Sunday July 09, 2023 @04:07PM (#36658356)
they were, but the point was that mastadon is incredibly inefficient and this guy is making a more efficient version
Re:Introduction to ActivityPub by vxNsr on Sunday July 09, 2023 @04:05PM (#36658338)
I see your profile is full of a lot of the info about this, do you have a more detailed write-up expanding on how this all works together?
Re:Introduction to ActivityPub by mariusor on Monday July 10, 2023 @02:12AM (#36662720)
There is some documentation about various things[1], but I'm not entirely sure what you mean about "how it all works together".

[1] https://man.sr.ht/~mariusor/go-activitypub/

Re:Introduction to ActivityPub by jameson71 on Sunday July 09, 2023 @02:37PM (#36657482)
I don’t understand why other instances wouldn’t cache the older content and periodically look for updates