Testing the Fediverse Waters
I've spent a decade relying on Twitter, and while the recent changes at the company haven't driven me away yet, they've pushed me to explore alternatives in case the platform deteriorates. The obvious place to start was Mastodon, which I've set up with my own account. As I learn my way around, I'm documenting my findings for anyone else making the same trip.
Right now I'm cross-posting every tweet to my Mastodon feed, so you can follow along from whichever service you like.
For a solid primer on Mastodon and the Fediverse, I'd point newcomers to Jeff Jarvis for a high-level introduction, Danielle Navarro for more technical depth, and Fedi.Tips for practical how-to guidance. Julien has also made a convincing case for why your organization should run its own server.
The Server Choice
My first practical step was figuring out where to live. Mastodon's federated architecture means most users start by choosing a server, but I sidestepped that decision: Thoughtworks runs its own instance, and Julien Deswaef had already set me up with an account back in April when the first signs of trouble emerged at Twitter.
My initial strategy was straightforward: automatically mirror my Twitter posts to Mastodon. That way, anyone on the Fediverse could follow my tweets without needing a Twitter account. If enough people followed me there, I'd revisit the setup and do something more elaborate.
Following Across Instances
The trickiest early hurdle was understanding how following works when it crosses server boundaries. If someone is on the same instance as me, like Julien, following is trivial — navigate to their profile and hit "Follow."
But accounts on other instances, say mastodon.social, aren't that simple. The browser shows a complicated URL that needs to be copied into the search box on my home instance. My first attempt at this failed completely, and it took a consult with Julien to sort out. We suspect mastodon.social was overwhelmed and simply responding too slowly. I've also noticed inconsistent behavior: sometimes searching for https://mastodon.social/@RonJeffries returns nothing, but searching for @[email protected] works fine.
Once a remote user finally showed up, I clicked follow but ran into another wrinkle — my new connection wasn't appearing in my following list. Trying again revealed the cause: some users require approval before accepting followers. The hourglass icon next to a name means your request is pending their review. I haven't enabled that on my account, so following me should produce an immediate confirmation.
Local Versus Federated Timelines
Mastodon's default interface includes the familiar Twitter concepts like Notifications and Direct Messages, but two options stand out as unfamiliar: Local and Federated timelines.
The Local timeline displays every post from my own instance. That's genuinely useful for me since Thoughtworks' server is a natural community hub. On a massive public server like mastodon.social, though, it would be noise. This design nudges users toward smaller, community-focused instances rather than the giant ones — a deliberate choice that some recommend new users honor by avoiding mastodon.social altogether.
The Federated timeline goes further. It combines the local timeline with every post from every instance my server follows. For a small community server it's a window into the wider network; on a large server it's mostly overwhelming.
Mastodon: A Technical Deep Dive into the Fediverse, Part 2
As my exploration of Mastodon continues, several recurring themes have emerged, from the mechanics of verification to the social norms that are still taking shape in the Fediverse. While there isn't a vast body of literature on Mastodon yet, the official documentation is a solid resource, and perspectives like Scott Feeney's essay on Twitter features Mastodon is better for without offer useful context on the platform's philosophical underpinnings.
Identity and Verification
One of the most immediate philosophical differences from Twitter is how verification works. On Twitter, verification is an opaque process, often perceived as a status symbol. My own experience reflects this; I received a blue check mark years ago without any clear request or knowledge of what the verification entailed.
Mastodon offers a distinctly different model because of its decentralized nature. Verification is essentially delegated to each instance. My account on toot.thoughtworks.com is verifiable because I can only access it through my corporate login, ensuring that Thoughtworks is effectively vouching for my identity. In a broader context, an organization like The Economist could run its own instance, with membership itself serving as a verification mechanism for its journalists—something difficult to scale on a centralized platform.
There's also a second, more technical layer of self-verification that ties your online identity together across different sites. By linking from your website to your Mastodon profile and including a small bit of metadata on your site, Mastodon can automatically verify that link, displaying it with a marker of authenticity. The recommended approach is to add a link tag to the HTML body:
<a rel="me" href="https://toot.thoughtworks.com/@mfowler">Mastodon</a>
I used a slightly different method, placing the metadata element within the <head> of the page:
<link rel="me" href="https://toot.thoughtworks.com/@mfowler">
Choosing a Server and the Path to Migration
A daunting initial hurdle for newcomers is choosing a server, or "instance." Since Mastodon isn't a single centralized service, you're forced to make a choice before you've explored the platform. Fortunately, this choice isn't permanent. Mastodon is part of the "Fediverse," a universe of servers communicating via the W3C-backed ActivityPub protocol, and it's designed to make moving between servers easy. You can create a new account, connect the two, and transfer most of your data—including follower lists and blocks—though your old posts will remain on the original server with a pointer to your new home.
While many guides recommend avoiding large instances like mastodon.social, the best advice is to pick something that looks roughly right and dive in. This initial choice is a low-stakes decision. As my colleague Julien Deswaef pointed out, you'll have a much better idea of what you value in a server after spending time on the platform. This flexibility is a prime example of an Agile principle: making a decision easy to reverse reduces its inherent complexity.
Potential Futures and Content Moderation
Speculating on Twitter losing its dominance raises the question of what a mass migration would look like. Rather than one central system, the Fediverse would likely consist of many servers run by companies, organizations, and communities. However, history suggests centralization tends to win out due to its convenience. We might see large hosting providers emerge, akin to those that dominate email, that run instances with software designed for mass-scale services. In this scenario, the active protocol—ActivityPub—remains the key unifying force, ensuring that a proprietary platform is just another node in a larger, decentralized network.
Content moderation in such a future becomes both easier and more complex. An organization's relationship with an employee is deeper than the sign-up agreement a social network has with a user, creating more inherent accountability. From a reader's perspective, the most powerful tool is choice—who you follow defines your feed. Mastodon also provides robust blocking tools for both users and entire instances, giving communities a way to self-police.
Workflows and Multi-Account Strategies
I began by cross-posting from Twitter to Mastodon using moa.party. This generally works well, but sometimes requires a manual edit to make tweets read better on Mastodon, particularly for re-tweeted threads or when mentioning Twitter handles. In those cases, I turn a link into a full URL. This method of deleting and reposting is somewhat awkward, as edits have to happen before many followers notice. Upgrading the Thoughtworks instance will help, as the newer version supports editing posts.
The Fediverse lends itself to having multiple accounts more readily than Twitter or Facebook did. Many people I know separate their professional and personal presences. If organizations run their own instances, the local timeline is more valuable when it's focused, which encourages this separation. This also reduces risk when someone leaves an organization, allowing clear redirection to a new account without disrupting an ongoing, work-related feed. The same logic applies to using other ActivityPub software, like Peertube for video or Pixelfed for photos, which each require their own accounts.
The Etiquette and Utility of Content Warnings
The Content Warning (CW) field is a novel feature for a Twitter veteran. A CW is a short phrase that is visible before a reader clicks a button to disclose the rest of the post. While often used to hide offensive content, it's a general-purpose tool for minimizing friction—for instance, hiding a spoiler or a "Course Promotion" post.
My approach to using them is based on the idea that I can't choose whether someone is offended by my actions, but I can choose whether I care. I use them when I feel it aids my readers' experience, particularly for long-form posts where a summary helps them decide whether to click. I don't intentionally use them for political posts when I think it's important to highlight the issue, as the CW acts as a barrier that defeats the original purpose. I conducted a poll on cross-posting with a CW and my readers voted overwhelmingly against it, so I removed it. On occasion, a short post with a link itself serves as a CW, giving the reader enough information to decide whether to continue.
The Realities of Community Management
The challenge of choosing an instance brings another frustration into focus: volunteer moderation. Some smaller, more focused servers can feel exclusive due to intensive moderation processes. It's easy to see this as cliquishness, but it's vital to remember that these moderators are volunteers. Online communities generate many interpersonal disputes, which moderators often have to resolve in draining, one-on-one conversations.
Beyond disputes, there's the constant risk of problematic content, like copyrighted material, pulling moderators into complex legal issues. Understandably, moderators want to limit the scale of their instance to keep things manageable and prefer members with some connection to the community. There's a difficult balance between being welcoming to outsiders and avoiding an exclusive club, but it's a trade-off born of necessity. Volunteers must avoid overcommitting, and applicants should understand the immense responsibility these volunteers are taking on.
Practical Frustrations: Lists and Discovery
One of the most frustrating features on Twitter—lists—is also a key utility on Mastodon. Lists let me sort my timeline by topic or poster volume. The ideal tool would allow me to view all accounts in a table with their corresponding list assignments. The tools to do this are just as clunky on Mastodon as on Twitter. My own most useful follow-management feature on Twitter was treating my main feed as an untracked "hot list" for monitoring, but on Mastodon, I can only place those I follow onto lists, which makes the setup more cumbersome.
Finding new accounts is also different without an algorithmic push. My main source is seeing people I follow on Twitter announce their new Mastodon accounts. This shifts the discovery problem back to Twitter. Other paths involve exploring the follow lists of interesting accounts, and I recommend looking at my list of followed accounts if you're seeking new material. While Twitter has useful public lists, Mastodon only currently supports private ones, which limits one potentially powerful avenue for discovery.
An Extended Status Check
By February 2023, my patterns had settled. My Twitter and Mastodon feeds seem equally active, with a notable exception being my board game interests, which remain almost exclusively on Twitter. I use lists on Mastodon almost exclusively, having manually assigned my follows with a rough script to make the process manageable.
My follower count on Twitter is still an order of magnitude larger, so I will continue to post there. My approach to content remains the same as it's always been: write on a domain I control. I still follow that same principle here at Tech Report, of course. Any significant, long-form writing belongs on its own domain rather than being held hostage by a social platform.
I will likely keep cross-posting for the near future, even though my tool of choice may stop working if Twitter starts charging for its API. My current plan is to switch to manual cross-posting when, or if, that becomes necessary.
Engagement Check: Fediverse vs. Twitter
To get a sense of where meaningful conversation happens now, my colleague Julien Deswaef compared engagement metrics across my cross-posted content on Twitter and Mastodon. The analysis covers the last month and includes only my original posts—no retweets or replies—totaling 40 posts, with 4 outlier points from 3 posts excluded.
As the data makes clear, boosts and comments are nearly identical on both platforms. Twitter does pull ahead on likes, but the margin is surprisingly small given that my Twitter follower count is roughly 20 times that of my Mastodon audience. For context on the methodology, I use distribution charts rather than averages, since averages can obscure what's really happening in the data.
The practical takeaway: engagement-wise, the Fediverse has become just as important to me as Twitter. That balance provides some reassurance, particularly given the ongoing uncertainty about Twitter's long-term stability.
An important caveat is that my own following is heavily skewed toward a technical audience. Writers with different readerships could see very different patterns. But tech adopters often serve as a leading indicator for broader platform shifts, and these numbers suggest there is meaningful reason for optimism about the Fediverse's trajectory—and perhaps less for Twitter's.



