• Natanael@infosec.pub
    link
    fedilink
    English
    arrow-up
    4
    ·
    3 days ago

    It’s doable on Mastodon but significantly more complicated.

    You need crawlers to index posts across the Fediverse (and avoid getting them blocked), personalized recommendation models per user, and you need pre-emptive caching on the user’s instance for anything recommended (ideally the crawler would make a cache on behalf of each of the opted-in users’ instances, but without content addressing this is a security risk). You also need to poll for edits / deletions.

      • Natanael@infosec.pub
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 days ago

        On Mastodon, your instance doesn’t receive posts until somebody on your instance interacts with the account posting it (following the poster, browsing directly to the post, etc).

        Feeds with recommendations requires fetching stuff in advance to not be slow and janky. Basically the feed service would need a bot account on your instance and retrieving all popular posts, given the current architecture. Having thousands of these bots across every instance do this would cause a significant performance hit on smaller Mastodon instances when one of their users posts something popular. So you need something different, like a server plugin where the bot fetches the content once and tells all participating Mastodon servers about their cached copy, so they don’t all have to hit the hosting instance. But that’s a security risk with the Mastodon design.