Leveraging ATProto and ActivityPub to upend enclosed social networks
Despite understandable misgivings with ATProto due to its corporate origins and its architecture lending itself to centralization, it's still open source. Moreover, it serves a different purpose compared to ActivityPub, in that it specifically aims to enable and support larger scale social networks.
In a way, ATProto could be complementary to ActivityPub, but for this to be the case, there needs to be more shared understanding between both communities. People working on both recognize the faults in existing social media, and aim to address them in different ways.
ATProto provides an opportunity to break down big social media enclosures with data portability and a similar vibe to big social media, but with more individual empowerment to adjust what they see. The latter point is a commonality with ActivityPub, but ActivityPub provides a different angle of breaking the big social media enclosures.
Where ATProto serves the interests of those into big social media vibes, ActivityPub serves the interests of those into small social media vibes. In other words, ATProto scales up, where ActivityPub scales down.
ActivityPub is arguably a better protocol for both individual and "small" group empowerment, as it can enable otherwise less active, small platforms to connect and ensure there's always some level of activity to encourage people to come back. Think of old forums that, on their own, gradually faded out as people stopped visiting and posting for more active online communities. ActivityPub can serve as a buffer against that, to some degree.
Together, both protocols could provide a better, open social web, and perhaps effectively topple big social media enclosures. After all, who wouldn't like to see the web without Meta/Facebook and Twitter/X?
TL;DR: ATProto/ActivityPub have a common foe in big social media enclosures like Meta/Facebook and Twitter/X and would be better served working together to erode their influence.
I'd rather that ATProto was just compatible with activitypub to begin with, or allowed for meaningful federation.
The ability to scale up into a behemoth like twitter will only be viable for a minority of people who can afford the infrastructure to do so, and with that level of centralization comes a certain level of control and allowable viewpoints. Not the worst thing if the people running it are good folk, but that's always reliant on luck, and your chances to roll a good team lessen dramatically with such a small pool of servers. Not to mention the inherent problem of adequate moderation on mega servers, where the ratio of mods/admins to users can quickly become overwhelming, especially if reliant on volunteers who don't like the feeling of just being a cog in a greater machine.
ActivityPub, on the other hand, allows for anyone to host an instance with an old laptop, while still having access to the big picture.
The argument should not be to tolerate ATProto since it's easier to use, it should be to rile up support to make Activitypub's interconnections so intuitive and smooth to use by default, that it can easily offer those 'big social media vibes' to those who want it.
The potential social benefits of truly federated, Citizen Owned media cannot be overstated.
I'd rather that ATProto was just compatible with activitypub to begin with, or allowed for meaningful federation.
Bluesky structure is too different from Mastodon instance to have a direct link. Brid.gy is the link between the 2 networks. Isn't is enough already for federation ? From the AP side, it's just a mastodon instance. However by default it's not open to everyone, Bluesky users and Mastodon user first need to opt-in to be able to interact.
Also you're right regarding the capacity to scale up, and frankly, while ATProto makes it feasible, I don't think it's necessarily desirable even with ATProto. Part of the point of it is to have various independent relays that would better distribute the load, and enable people's mobility when any of them go bad. Setting that aside, they don't all have to be full network relays, in fact someone is already toying with running a small network relay.
I also agree regarding moderation problems at a larger scale, and that ActivityPub's various software should take this as a wake-up call to improve the user experience, not so much for "big social media vibes" but for a better, less finicky experience.
However I also think there are potential benefits to ATProto, which blended together with ActivityPub, could make both better overall. The technical literacy and insistence on independent servers of the ActivityPub culture could make ATProto properly distributed and federated, which would be far better than letting it languish in corporate hands. Meanwhile the openness to optional transparent, customizable algorithms and preference for a smoother user experience of the ATProto/Bsky culture could make ActivityPub a more accessible, and livelier feeling space for more people.
Both can improve from one another, so long as both communities choose to try to learn from one another.
The minute that the community is able to meaningfully rest control of ATProto away from bluesky and host fully independent servers that can intercommunicate, I no longer have beef with it. if it can be made too work with activitypub later and they can learn from each other and improve, I'm all for it.
the hesitation at the moment is that first step may not be achieved, from what I understand.
From what I've observed, there's no pushback against people doing so, and the only things stopping people are the usual: time, costs, knowledge, motivation, etc. For the first step to really happen at all there have to be people with the resources and motivation to do so, which is always the tricky part. In a small way part of my OP is intending to encourage anyone with both to give it a shot, as I lack some of the necessary resources to try it myself.
In July 2024, running a Relay on ATProto already required 1 terabyte of storage. But more alarmingly, just a four months later in November 2024, running a relay now requires approximately 5 terabytes of storage. That is a nearly 5x increase in just four months, and my guess is that by next month, we'll see that doubled to at least ten terabytes due to the massive switchover to Bluesky which has happened post-election. As Bluesky grows in popularity, so does the rate of growth of the expected resources to host a meaningfully participating node.
True, but as noted, it isn't a necessity to run a full-network relay, which those resource demands and costs relate to.
At the same time, one of the larger Mastodon instances, Mstdn.social in terms of financial costs alone amounted to about 1000 euros per month as of October 2024.
The architecture of ATProto also enables a greater degree of flexibility in separating out costs by comparison, which in some respects may be an interesting model worth consideration for new or developing ActivityPub software, and in some respects is already in the works with projects like Bonfire and ActivityPods. On the ATProto side there's already at least one person looking to adapt ActivityPub to ATProto's PDSs in a manner similar to ActivityPods, just using ATProto data formatting instead.
ATProto exists because of ActivityPub's shortcomings for building Twitter 2.0. The protocol is much better suited for massive websites, and the "run your own data store but let someone else do the content tagging and filtering" approach is actually not a bad idea. The Bluesky firehose throughput is massive and any home ActivityPub instance that tried to enter the network would easily be overwhelmed just loading the basic home page feed. The Bluesky servers probably wouldn't enjoy the endless connections back home to verify the key material either.
Plus, many ActivityPub folks don't want to federate with big companies anyway. Threads is blocked by most small servers. A bridging service intended for allowing ATProto/ActivityPub cross communication was the center point of drama as well and had to go opt-in (and instantly became useless as a way to connect the two networks because nobody knows about the service anyway).
I don't think ActivityPub is made for large servers, and I don't think the protocol can be patched to support them well without upsetting a lot of people. AP works well for following friends and family, it's kind of terrible for the tailored topic based social media feed most people want out of social media apps these days.
many ActivityPub folks don’t want to federate with big companies anyway
This really shouldn't be a consideration. ActivityPub is a public standard for this kind of communication between websites, and the protocol really needs to be agnostic about which websites one is interested in using it to connect with. "I don't want Amazon using HTTP along side my indie blog" is a nonsensical statement, and so it "I don't want Facebook using ActivityPub".
I agree and I personally think the whole preemptive Threads ban is stupid in general, but at least one major bridge has had to be turned off because people on the Mastodon/ActivityPub side of things got angry. I don't mean the people behind ActivityPub of course, I'm sure they were chuffed their protocol got buy-in from a major player.
If anything, large corporations using open standards is better, even in situations like Google Talk where Facebook and Google dominated the protocol for a while; at least the protocol is useful for regular people.
The Bluesky firehose throughput is massive and any home ActivityPub instance that tried to enter the network would easily be overwhelmed just loading the basic home page feed.
AKAIK, activitypub (on mastodon) only requests and receives content from individual users that have been followed by someone on the local instance, it wouldn't load all of bluesky at once, it would just need to have an up to date database of bluesky's users so they are easily searchable. With that model, even crappy PC's can interact with the mega servers.
Plus, many ActivityPub folks don't want to federate with big companies anyway.
With the OP's point of ATProto being open-source, I assume the thrust of the argument is that at done point there would be a community hosted instance, which were it compatible, I think most activitypub se rvers would gladly federate with.
I don't think ActivityPub is made for large servers
Ideally there doesn't need to be any, as the conglomeration of all smaller instances should be able to act as a large server. Unfortunately as it currently stands, the UI of most fediverse software makes interacting with that wider pool more difficult than it needs to be, and thus punishes smaller Mastodon servers with more difficult discovery of interesting topics or people to follow. But I think that can be overcome simply with better UI design.
AP works well for following friends and family, it's kind of terrible for the tailored topic based social media feed most people want out of social media apps these days.
Again, I think that's a UI problem. I don't use mastodon myself because of it, as I find it difficult to find people that interest me. However, Lemmy's use of Topics, and more critically, the existence of Lemmyverse.net which searches across all instances, make finding interesting things possible regardless of the size of your home instance. It's criminal that that functionality is not a native feature in the standard lemmy Ui, and I'm not aware of anything similar for mastodon.
AKAIK, activitypub (on mastodon) only requests and receives content from individual users that have been followed by someone on the local instance, it wouldn't load all of bluesky at once, it would just need to have an up to date database of bluesky's users so they are easily searchable. With that model, even crappy PC's can interact with the mega servers.
Yes, but that's how you end up with the "I don't have anyone to follow" situation that people left Mastodon for during the first wave of the Twitter collapse. Now Mastodon has a feed of sorts, but for small servers (I host my own) you have to know the accounts of the people you want to follow, nothing will show up organically.
With the OP's point of ATProto being open-source, I assume the thrust of the argument is that at done point there would be a community hosted instance, which were it compatible, I think most activitypub se rvers would gladly federate with.
You can run your own ATProto servers but it the millions of accounts I think maybe 500 to a 1000 users aren't on the Bluesky instance. You'll have to ask the people who complained.
Ideally there doesn't need to be any, as the conglomeration of all smaller instances should be able to act as a large server. Unfortunately as it currently stands, the UI of most fediverse software makes interacting with that wider pool more difficult than it needs to be, and thus punishes smaller Mastodon servers with more difficult discovery of interesting topics or people to follow. But I think that can be overcome simply with better UI design.
From my attempts of convincing people to give Mastodon a try, the federation aspect confuses and scares the normal user. It's also what taught me that most people don't seem to realise that you can read your Gmail email without downloading the Gmail app. And that most people don't realise that mail servers can and will refuse email from other servers as they see fit. My expectations about how well-informed people who email every day are about the core concepts of email were way to high. It's stupid but it explains a lot of stupid questions I've heard of the years.
A large part of the problem is UX, following someone on another server is a massive hurdle that could be overcome (just register a web protocol so we can make links targeting web-activitypub:follow:user@domain, that way websites and apps can follow people without having to enter your username when you click follow...) but change is slow and there are many different projects that all have their own challenges to overcome.
Again, I think that's a UI problem. I don't use mastodon myself because of it, as I find it difficult to find people that interest me. However, Lemmy's use of Topics, and more critically, the existence of Lemmyverse.net which searches across all instances, make finding interesting things possible regardless of the size of your home instance. It's criminal that that functionality is not a native feature in the standard lemmy Ui, and I'm not aware of anything similar for mastodon.
ActivityPub just brings a lot of overhead. Especially with the way Lemmy uses it, which ensures that you actually get a somewhat view or the current replies on a post. My Lemmy server is constantly spiking in CPU usage because I've joined a few larger Lemmy instances. There's a constant steam of opening and closing HTTPS sockets, constant TLS key exchanges, and often minutes of latency submitting posts in burst. This is tough to optimise for without reaching out and coming to an agreement with every other server owner. ActivityPub is way more efficient for small communities than ATProto ever will be (because it doesn't take long to cache all keys and only the involved servers gain the information they need), but for larger servers that provide a more "social media" feel, you need to employ active scrapers.
As for the lemmyverse.net thing: you can't build that into Lemmy without sacrificing some level of independence. A fresh Lemmy server doesn't know about any other Lemmy servers so it can't suggest anything. You could add support for third party Lemmy directory services, but then the server owner of lemmyverse gets to decide what servers get to see what other servers out or the gate. Sounds like a good feature for the Lemmy devs to consider, but I'm not sure if they'd accept the pull request without discussing this beforehand. Plus, someone will have to update every Lemmy app as well (and apps can already integrate with lemmyverse of course).
Yes, but that’s how you end up with the “I don’t have anyone to follow” situation that people left Mastodon for during the first wave of the Twitter collapse.
The vast majority of people landed on the largest severs, where there was a ton of chatter in both the Local and Global feeds. They couldn't find anyone because they were accustomed to using search to find connections, and Mastodon's search is so tightly locked down that it's borderline impossible to find who or what you're looking for. The idea of checking other feeds didn't even seem to occur to many people -- something that I, as an avid "what's that button do?" user, find totally bizarre, but seems to be rather standard for most people interacting with new things.
If the default view had been Local or something, the story could have been very different.
The problems that plagues Mastodon at the time have all been fixed as far as I know, but it's too late now. Other, more difficult problems remain, like the inconsistencies between server on how many likes/comments a post has and the inevitable perception that you need to create an account on every server to follow people because the follow button doesn't work by itself even if you're logged into your account in another tab.
People don't join a social media platform to go on an adventure and see what every button does. They came looking for a new Twitter rather than a new experience and Mastodon, and kind of still is, a bad Twitter. It's a great Mastodon, but that's just not what most people were after.