fbpx

Adopting ActivityPub for threads is a logical choice, although it will pose challenges

Adopting ActivityPub for threads is a logical choice

From a developer’s perspective, the fact that Meta’s Threads app has rapidly gained over 100 million sign-ups is not the most fascinating aspect of this new Twitter clone. What is more intriguing is Meta’s commitment to integrating Threads into the fediverse by incorporating support for the World Wide Web Consortium (W3C) ActivityPub specification.

The fediverse refers to a network of decentralized social media services that connect with each other through ActivityPub. Mastodon, a microblogging network launched in 2017, is the most prominent member of the fediverse. However, numerous other Web 2.0-style applications such as Bookwyrm (Goodreads), Lemmy (Reddit), PeerTube (YouTube), and PixelFed (Flickr) have been developed using ActivityPub.

Contacted Meta to gather more information about their plans for ActivityPub support. They informed that they have more details to share in the future, but not at the moment. Nevertheless, already have enough information to conduct an initial analysis on how Threads could potentially incorporate ActivityPub and the implications it may have for existing fediverse applications, particularly microblogging platforms like Mastodon.

Introduction to Threads and its Integration with the Fediverse

To begin with, let’s clarify what Threads is. It bears a striking resemblance to Twitter, allowing posts of up to 500 characters with the inclusion of links, photos, and videos of up to 5 minutes in length. However, it also shows noticeable influences from Instagram. One significant aspect is that Threads inherits Instagram’s social graph, enabling users to log in using their Instagram accounts and easily follow the same individuals they already follow on Instagram.

The algorithm governing the home feed in Threads resembles that of Instagram. Instead of a strictly chronological feed, it employs a “black box” approach that presents a blend of content from followed individuals and trending material from celebrities and influencers. The absence of a purely chronological feed has drawn criticism, prompting Instagram CEO Adam Mosseri to confirm that they are working on a feed focused solely on the people users follow.

Threads was developed by the Instagram team under the Meta umbrella, and Instagram’s help page on Threads provides valuable context about its plans to join the fediverse. According to Instagram, Threads aims to facilitate communication with users on other fediverse platforms that Meta does not own or control. This implies that Threads profiles will be able to follow and be followed by individuals using different servers within the fediverse.

Eugen Rochko, the creator of Mastodon, expressed cautious optimism about Threads upon its release. In a blog post, Rochko viewed it as a validation of the decentralized social media movement and considered it a clear victory for their cause.

Incidentally, Meta’s announcement mentioned that Threads is their first app designed to be compatible with an open social networking protocol. While it is premature to speculate, this suggests that Meta might support more than just ActivityPub in the future.

Meta’s Choice to Support ActivityPub

Meta’s decision to support ActivityPub for Threads is not a coincidence but a deliberate choice. While there are alternative decentralized protocols available, such as Tim Berners-Lee’s Solid and Bluesky’s AT Protocol, Meta found ActivityPub to be the most suitable for their goals. ActivityPub is the most established protocol within the “fediverse” and aligns well with Meta’s objectives. Here’s why:

ActivityPub allows the server to manage users’ identities and data. For instance, when joining Mastodon, users essentially entrust the management of their data to the server or instance they join. As developer Ryan Barrett explains, your ActivityPub identity, data, and administration are all tied to your instance for technical and cultural reasons. This architecture enables the instance to make moderation decisions on behalf of its users. While users can freely switch to another instance, they cannot transfer their data, including posts and media, to a different instance.

Meta’s strengths lie in controlling the identity layer, especially considering their ownership of Instagram’s social graph. Since Threads is hosted on Meta’s servers, all user data is managed by Meta as well. Meta would not have wanted to adopt the AT Protocol or Solid, as both protocols potentially involve relinquishing control of identity and some data to users.

Challenges for Meta and Threads

A software engineer named Ben Savage from Meta recently joined the W3C’s ActivityPub working group to facilitate Threads’ adoption of ActivityPub. While Savage expressed enthusiasm about the integration and his excitement to follow his Mastodon friends, he faced some criticism due to the company he works for and its actions. Additionally, a small group of Mastodon instances is threatening to “defederate” from Threads, meaning they would exclude Threads users from their extended networks. Although this sentiment is not widespread among Mastodon maintainers, it highlights the social pressures Meta may encounter as it proceeds with its ActivityPub adoption plan.

Technical challenges also lie ahead. For example, the exact stack of protocols that Meta plans to implement and the higher-level policies not prescribed in the standard are points of interest for the W3C working group. Merely implementing ActivityPub is insufficient for producing interoperable software or ensuring user comprehension. Threads will need to address specific technical questions in the coming months, such as which activity types it will implement and whether hyperlinks and HTML markup will be allowed.

Conclusion

Although it is still early days, Threads resembles a text-based version of Instagram. Its content is a mix of aspirational and motivational posts, and the current algorithmic timeline includes celebrities and influencers sharing memes. Integrating with fediverse applications like Mastodon may pose challenges due to cultural differences between the two communities.

However, ActivityPub offers the opportunity to connect with individuals on alternative networks, which is one of its strengths. Therefore, it is hoped that Meta successfully adopts the protocol, enabling Mastodon users and others to include Threads users in their feeds. While the ideal outcome would involve the development of new apps that tap into both Mastodon and Threads’ social graphs, that possibility may be more aspirational at this stage. For now, the focus should be on establishing connectivity between the two networks.