Meta is working on a Twitter-like platform called Threads, codenamed Project 92 or P92, rumored to support ActivityPub soon after launch. Some Mastodon instances are committing to proactively block it. I’m here to take the opposite view.
Meta adopting ActivityPub has the potential to fast-forward the progress of the social web by years. Ever since I grew disillusioned with Twitter a decade ago and started pushing for indie microblogs, then writing a book about social networks and founding Micro.blog, I could only dream of a moment where a massive tech company embraced such a fundamental open API.
I get the concerns. I’ve never trusted Facebook either. I don’t post to Facebook and in Micro.blog we had to disable cross-posting to Facebook after they burned us with API changes. But this is an opportunity with Threads that I’m going to celebrate because it could have a significant, mostly-positive impact on growing the fediverse.
Johannes Ernst raised an important question: will the fediverse grow faster organically, cut off from Threads, or faster with the chance to bring Meta users over to the larger fediverse? And I’d zoom out from that to the big picture: do we really want to be a community that discourages for-profit companies from adopting open APIs?
To succeed with mainstream users, the fediverse should encompass many types of platforms and business models. Not just open source. Not just volunteer-led instances. Micro.blog charges $5/month for blog hosting so we can keep doing this and growing for the next 20 years.
Let’s talk about data privacy. My blog is public already and Meta is free to crawl it and its connections to other blogs. Admittedly, there are problems… For example, Mastodon direct messages were a concern in SciComm.xyz’s decision to block Meta:
Federation would allow Meta to cache non-public data too, such as followers-only and direct messages, which pass through its servers as part of the normal workings of ActivityPub.
This is valid. It’s effectively a design flaw that direct messages can leak out in plain-text to Meta’s servers. The good news is that people are already thinking about how to handle encrypted direct messaging in future revisions of ActivityPub. There have been a couple recent discussions on the SWICG mailing list about this.
Unfortunately, it’s likely that Threads will implement only the parts of ActivityPub that serve Meta’s business, ignoring features such as account migration that would allow users to move their followers from Threads to Mastodon or Micro.blog. Before we judge Meta too harshly, I don’t think most non-Mastodon servers support account migration either, and even Mastodon itself doesn’t support post migration.
In other words, maybe we get our own house in order, so that if larger platforms come on board there are clear best practices for doing things the right way. There is still a lot to do. As impressive as the ActivityPub adoption has been over the last year especially — and kudos to Eugen Rochko and the Mastodon community for ramping up so well to welcome Twitter refugees — it’s still early days compared to where we can go.
I don’t worry about Meta embracing ActivityPub and then extinguishing the fediverse as we know it. I worry that all this pushback will force Meta to reconsider whether they should even bother. Maybe they give up and Threads is yet another silo, cut off from the rest of the web. Then the current fediverse will have to compete directly for users instead of collaborating on a more open vision where the walls of closed gardens are finally starting to break down.
Tim Chambers blogged about how we can react to Threads. Perhaps most important is to prioritize our existing communities:
And remember we only have to protect the 1.3 million monthly active users inside the Fediverse. And we do that now every day. Spammers and toxic accounts inside the P92 network we or our social graph don’t follow is their problem. Our problem is protecting our people.
For Micro.blog, we will not proactively block Meta. We will, however, build tools for users to choose how they want accounts to federate with Threads.
Our users are passionate about indie blogs. They often support small companies and distrust big corporate-y platforms. There could be an account setting to effectively opt out of Threads, just as someone can disable ActivityPub in Micro.blog and only participate in conversations with other Micro.blog users.
I can’t predict how Threads and ActivityPub will play out. Meanwhile, Twitter continues to melt down. Back in 2018, I chose to implement ActivityPub instead of trying to compete with Mastodon. And just this year, we added Bluesky and Nostr cross-posting to Micro.blog, to make it easy to get microblog posts out to these emerging networks.
Let’s build stronger connections across platforms. I don’t want a monoculture where a single platform dominates, whether it’s open or closed. The web will be better if we have a variety of platforms that can interoperate, and users have the power to choose where to host their content, what their web identity is, and who can connect to their posts. The default should be open.