• mozz@mbin.grits.dev
    link
    fedilink
    arrow-up
    7
    arrow-down
    1
    ·
    4 months ago

    It’s not quite that simple. As far as I’m aware, it’s difficult to fetch from another instance “after the fact” what all the votes are for a particular user or comment; you have to be signed up to receive updates on it, and then after the fact you can go hunting around in your own instance’s DB and see what all the votes were (or your UI can do it, if it’s supported).

    But, yes, there are instance softwares that will do it, and no one’s defederating from every one of those instances (nor I think should they). Someone posted a link to an mbin instance breaking down the votes for this post. Votes are not private.

    • rglullisA
      link
      fedilink
      English
      arrow-up
      16
      ·
      4 months ago

      I ran curl "https://mbin.grits.dev/u/mozz/outbox?page=1" -H 'accept: application/activity+json' and I could see your outbox. Apparently mbin does not put Like/Dislike activities in there, only your comments/posts/notes.

      In a world where ActivityPub is only used in server-to-server, this would be fine. If we ever get to a (IMNSHO, better) scenario where we have more clients talking AP directly, then this will not work, and mbin will have to add those as well.

      All of this to say:

      • the debate about “what Lemmy devs are doing” vs “what mbin is doing” vs “what PieFed is doing” should be seen as tremendous conflict with the idea that “The good thing about the Fediverse is that we can all talk with each other, regardless of where we are”.
      • There is no sane way to square this peg into a round hole. Privacy and “Social Media” are inherently incompatible. The advice about not putting anything online that you are not willing to ever be made public is evergreen, and anyone that does not follow it will eventually have to learn it the hard way.
      • mozz@mbin.grits.dev
        link
        fedilink
        arrow-up
        3
        ·
        4 months ago

        Apparently mbin does not put Like/Dislike activities in there

        Yes. That’s what I said. I’m actually not 100% sure about it; for all I know there’s some way to get it, but AFAIK all the existing softwares don’t publish votes “after the fact”, only at the time to current subscribers. But then, of course, it’s kind of a moot point because you can just grab it from any mbin instance’s DB through the UI without needing to do anything special or any particular knowledge.

        In a world where ActivityPub is only used in server-to-server, this would be fine. If we ever get to a (IMNSHO, better) scenario where we have more clients talking AP directly, then this will not work, and mbin will have to add those as well.

        Not really. You can have your client talking to all the servers and grabbing votes for whatever you’re subscribed to, and losing votes for anything you’re not subscribed to. It works basically exactly that way for one-user instances already.

        There is no sane way to square this peg into a round hole. Privacy and “Social Media” are inherently incompatible. The advice about not putting anything online that you are not willing to ever be made public is evergreen, and anyone that does not follow it will eventually have to learn it the hard way.

        Tru dat. 100% agreed. It seems like there are all these people in this thread arguing that their votes need to be private. Their votes are not private, and will never be private, for as long as ActivityPub is what they’re using. I can see some value, maybe, to making it slightly difficult to extract the information instead of just giving it for free to everyone, but holding onto the idea of your votes being private is a gateway to unhappiness and only unhappiness.

        • rglullisA
          link
          fedilink
          English
          arrow-up
          2
          ·
          4 months ago

          You can have your client talking to all the servers and grabbing votes for whatever you’re subscribed to, and losing votes for anything you’re not subscribed to. It works basically exactly that way for one-user instances already.

          It works like that for servers because servers are assumed to have high uptime, so (in theory) push-based communication should be enough. However, we see that this is not true even for servers (e.g, medium-sized instances getting out of sync with LW because they can not keep up with all the data being sent to them) and this will be specially true in the case of a network with tens/hundreds of thousands of separate clients. No server will be willing to push activities to all those inboxes, so we will need to have some pull-based form of communication as well.

          • mozz@mbin.grits.dev
            link
            fedilink
            arrow-up
            4
            ·
            edit-2
            4 months ago

            Oh, yeah, at that point it’ll be a scalability clusterfuck. No idea what the solution is. Maybe something with persistent caches run by third parties or something? That actually would be fine, since all the actions are signed with the private key of the actor, I think.

            ActivityPub is not to me a real great designed protocol but it’s whatever. Usually the key part for social networks is the “social” part of it; the protocol or the web site can be pure shite and if people like interacting with the other people there then it’s fine. But yes, you are correct that beyond a certain point of scalability there are some dragons lurking that don’t have obvious weak spots.

            • rglullisA
              link
              fedilink
              English
              arrow-up
              3
              ·
              edit-2
              4 months ago

              The problem is not with ActivityPub, but the implementations. No one ever claimed that it should be only a push-based system, but it seems that everyone working on AP software can only think in terms of server-to-server interactions to get the data and then reinvent the wheel by developing their ad-hoc API.

              AP is fine if we treat it as a messaging protocol and use it to power offline-first applications. The devices do not need to have all the network’s data, just the one that the user has actively interacted with.