On the Fireside Fedi interview with Jerry ( the admin of Infosec.Exchange Mastodon instance ) a scary truth was suddenly revealed ( on 34:11 ): Just to keep the instance up and running he needs to spend up to $5000 a month, pretty much out of his pocket. Donations to the instance barely cover any of that. And if he will ask people to pay to use it, they will, rightfully so, switch to a different instance.
It is not a matter of efficiency, but solely of how AP works. All it takes is someone one an server to to follow a community for that server to receive every vote/post/comment, while to get a whole conversation thread on Mastodon you’d need to be on the same server as the original poster or your server would need to have at least one person following every server involved in the conversation.
Thanks, that makes sense if I think about it, but maybe users shouldn’t have to - i.e. the Mdon part-conversation way still seems confusing to me (despite being a climate modeler and scala dev), although haven’t used Mdon much since I found Lemmy. And I still feel that both ways seem intrinsically inefficient - for different reasons - if we intend to scale up the global numbers (relating OP).
Yeah, I am 100% convinced that we need to rethink AP to make it less dependent on servers.
I agree with most of what you say. I’m a long-time fan of calculating more complex things client side, as you can see from my climate model (currently all calcs within web browser, evolved from java applet to scalajs).
Also, in regarding social media, keeping the data client side could make the network more resilient in autocratic countries (many), and thelp this become truly a global alternative.
On the other hand, some ‘trunk’ server interactions could also doing more not less, bundling many ‘activity’ messages together for efficiency - especially to reduce the duplication of meta-info headers in clunky json, and work of authentification-checking (which I suppose has to happen to propagate every upvote in Lemmy?).
Seems like an optimization that is not really needed. The data format is not really the bottleneck, there are ActivityPub relays that can send messages in bulk and ActivityPub is built on LinkedData, which means that there plenty of powerful libraries in most languages that can parse and produce JSON in a way that keeps application developers with a consistent semantics. The more people try to change the data format in the sake of “efficiency”, the less portable and useful it would be.
Yes and no. Most of the current software do authentication by using HTTP Message Signatures, so after you fetch the actor’s public key every request is authenticated by seeing an HTTP header, which makes it no different most common authentication schemes.