I’ve been a heavy user of Twitter over the last decade, and while Musk’s
purchase of Twitter hasn’t got me running for the exit, it has prompted me
to take a look at possible alternatives should Twitter change into something
no longer worthwhile for me. The obvious alternative is for me to explore
the Fediverse with my new
Mastodon account. As I explore using Mastodon, I’ll make some notes here so
that others can learn from my explorations.
My current favorite tutorial on using Mastodon is by Danielle
Navarro. For tips on how to do common tasks, I turn to Fedi.Tips.
Earlier Memos
I spent a bit of time yesterday taking my first steps into the world of Mastodon.
Unlike Twitter, Mastodon is a federated system. So for most people, the first step in using Mastodon is to choose which server to use. In my case, I don’t need to make this decision since my colleagues in Thoughtworks have set up our own mastodon instance. An admin for this, Julien Deswaef set me up with an account back in April, when the first rumblings of the Muskover occurred.
My intention at this point is to set up my Mastodon account as an automatic cross-post from my twitter account. That way any Mastodon user can follow me on Mastodon to see my twitter feed rather than do it via Twitter. My thinking is that I’ll then monitor my Mastodon followers and if enough followers appear, I’ll think about doing something more sophisticated.
One of my first challenges was to figure out how following works, to understand this I needed to get a handle on the nature of Mastodon’s federated nature. If I look at an account like Julien’s, which is on the same instance as me, then following is easy, I just navigate to his account page and hit the “Follow” button.
But if I do that on an account on mastodon.social, I get this complicated response
I need to copy that URL, and then paste it into the Search box on my page. I tried that this morning and got no response, which was rather frustrating. Eventually, after asking for help from Julien, I did get it working. We suspect that mastodon.social was under heavy load and just responding too slowly. I’ve also noticed some times I try searching for a URL of the form https://mastodon.social/@RonJeffries
and get no response, but then try to search for @[email protected]
and it does work.
Once the remote user showed up, I could just hit the button to follow, but there was still an issue. My new mastodon-friend didn’t show up in the list of Follows and Followers, so I tried to follow again and saw this
On reading around I figured out (and Julien confirmed) that this means Ron has set his account up so that he has to approve followers. The hourglass like icon indicates that a follower request has been sent to him, but he hasn’t approved it yet. I haven’t set that, so if you try to follow me you should get an immediate response.
Local and Federated timelines
When I look at the default UI, I see things that make sense from a Twitter background, such as Notifications and Direct Messages. But I also see two odd things: Local and Federated.
The Local timeline shows every post made by anyone on my own instance. This makes some sense in my case as my local instance has a natural community – we’re all employees of Thoughtworks. It makes much less sense if you’re on a big instance like mastodon.social. This feature encourages the idea of using lots of small instances rather than a few giant ones. It’s a reason for users to look for a smaller community instance rather than just going to a big one, which is why some Mastodon users suggest new people should avoid mastodon.social.
The Federated timeline takes this a step further, it includes all posts on the local timeline and adds all posts by anyone that the local instance follows. Again this may be handy for people with a small community instance, but is less useful for bigger servers.
Reading more documentation
There isn’t a huge amount of stuff to act as a guide to Mastodon, and much of what is out there is rather old (as always, check the date when reading about a technology that is rapidly changing). The official documentation is pretty decent. I enjoyed Scott Feeney’s discussion of 4 Twitter features Mastodon is better for not having. It provided some insight into the thinking behind some of the differences between how it works compared to twitter.
Twitter has a facility for verifying that well-known people (for Twitter’s value of “well-known”) can have their account verified. Such accounts are shown with a blue check mark.
I got my blue check mark several years ago, and don’t remember much about it. I don’t think I asked for it, I think Twitter approached me. I don’t pay anything for it, and I don’t remember what they did to verify me. They don’t verify everyone, I suppose they did me partly due to having hundreds of thousands of followers, and partly because of being well-known in the software development world.
Due to this rather opaque way of choosing who to give out the blue check marks, Twitter verification has become somewhat fraught. It’s often seen as a status symbol. But people who don’t have it may have genuine problems with others spoofing them on Twitter.
Mastodon’s approach to verification is rather different. Since it’s a decentralized system, there’s no single mechanism for verification. The way I see it, verification is up to each Mastodon instance. I’m pretty well verified on toot.thoughtworks.com because Thoughtworks is essentially verifying me by allowing me to have an account there. (As it happens, the only way to access an account at toot.thoughtworks.com is to use your corporate login.)
If Mastodon takes off, we could imagine this approach spreading widely. If a journalist at The Economist needed a verified account, then The Economist could run their own Mastodon instance, where anyone on it would be effectively verified by that newspaper. Unlike Twitter, which needs to scale to a vast amount of users, a Mastodon instance can be small enough for the organization running it to verify its members.
On the other hand, big instances like mastodon.social may not do any verification at all, because it’s just too complicated for their membership model, or they want to support anonymous accounts. That then becomes part of the choice of an instance – some folks would prefer to join an instance that can give them a viable identity.
There’s another approach to verification, which is cross-association with other parts of your web presence. On my home page I have a link to my twitter page, which is a form of verification. It indicates that the web page and the twitter account are controlled by the same user. I verify my email address in a similar way, by mentioning it on my website.
I can do this with Mastodon, of course, but can go a step further. If I include a bit of metadata on my web page, and link to that page on my Mastodon profile, then Mastodon checks for metadata, and marks my link as verified, like this:
Mastodon suggests doing this by adding this link into the body of the page
<a rel="me" href="https://toot.thoughtworks.com/@mfowler">Mastodon</a>
I did it slightly differently, adding this element to the <head> of the page
<link rel="me" href="https://toot.thoughtworks.com/@mfowler">
This mechanism allows me to tie together different bits of my online identity, helping them verify each other
An immediate reason why Mastodon is difficult to get into is the choice of instance. With a centralized system like Twitter, there is no choice, you just join the single service. But Mastodon is a federated system, so before you can begin to explore the Fediverse, you’re faced with having to choose a server. This is a tricky decision, as without any experience in the Fediverse, you don’t have enough information to make a decent choice. The good news is that your initial choice doesn’t really matter that much, because Mastodon makes it easy to change servers once you find a better fit.
You’ll notice I used the term “Fediverse” a couple of times there. Fediverse is the name given to the federated universe of servers that communicate using the ActivityPub protocol, essentially an open standard for social media interoperability. (One that is backed by the W3C.) Mastodon is one kind of server that communicates using ActivityPub, and is the one I’m currently exploring – I may look into the others later.
Mastodon servers contain facilities that make it easy to transfer your presence to another Mastodon account. All you need to do is create a new account, connect the old and new accounts together, download a bunch of files from your old account, and upload them to the new one. This will redirect the old account to the new one and transfer most of data, including your follower lists and blocking information. Old posts stay on the old server, but will indicate the redirection to the new one. My long-time Mastodon colleagues have several transfers under their belts, and it works quite well.
As I’ve been exploring what’s written about Mastodon, I’ve read several articles that suggest that joining a large instance, such as mastodon.social, is a bad idea. There are certainly good reasons why many people would find they get more value out of a smaller, more focused, server. But as my colleague Julien Deswaef explained, you shouldn’t worry about that at the beginning. Pick one that looks vaguely right and dive in. Once you’ve spent some time with Mastodon, you’ll have a better appreciation for what’s valuable to you. This flexibility is all the more important because if Mastodon takes off, I expect there to be lots more servers. In this scenario, most companies and other organizations will set up Mastodon instances – or other nodes in the Fediverse. If then you want to migrate to a smaller server, then it’s easy to do so.
As an advocate of agile software design, I recognize this as an example of the principle that making decisions easy to change reduces complexity.
One of the conventions of Twitter (and Facebook) was a person would have a single Twitter account, following that person would follow “the whole person”, mixing posts on different topics that the person was interested. The Fediverse doesn’t have such a strong push towards a single person, so instead we see a growing convention for people having multiple Fediverse accounts. I know some long-term Mastodon people who already do this. Would my followers prefer it if I posted software posts from one account, and board game posts from a different account?
Mastodon often likes to draw parallels with email, and many people have separate work and personal emails. I’ve lived for decades with separate Thoughtworks and martinfowler.com email accounts. The separation is often messy, while I try to keep my Thoughtworks email to company business, there’s many things that get misplaced or on a fuzzy line. But the separation can still have value. As my colleague Julien put it about his pair: “I don’t follow the same people (although there’s overlap), I’m not followed by the same people (with overlap). I say things on one that I would not say on the other, or not the same way, and vice versa.”
If organizations run their own Fediverse servers, the local timeline is more valuable if the posts are more focused on that organization’s activity. That encourages users on such a server to use that account to post only about that activity, with perhaps the occasional boost from a person’s other timelines when some cross-fertilization is appealing.
Having separate accounts reduces the risk of problems when someone leaves an organization. While the convention is to use Mastodon’s migration feature to move followers, that may not happen if the separation isn’t amicable. In this case separate presences on the Fediverse will help direct people to any new account, as well as not disrupting activity that’s separate to that organization.
Years ago I separated my social media activity by using Twitter for my professional social network, and Facebook for my personal network. I’ve let the latter lapse in the last few years (because… well… Facebook). On Mastodon I could recreate the kind of setup I had from Facebook with an account where I had to approve followers and where my posts go only to followers. Groups of friends could go further, having their own instance if service providers had plans that are cheap enough. (For this it would be nice if Mastodon sent posts by email for people who don’t have a Fediverse presence.)
Even without these desires to separate Mastodon accounts, there’s a broader need for separate presence on the Fediverse. Even now, there are other social media software present, such as Peertube for video and Pixelfed for photos. Each of these need separate accounts. This effect would swell in the future if ActivityPub is seen as plug-in for other kinds of software. My project tracking software and my travel booking software could end up collaborating with other tools through ActivityPub, and each would have its own accounts. I’ve long been part of the venerable BoardGameGeek community, it would be interesting to see how it might interact with the Fediverse.
There will be times when I need to tie my different presences together. Boosting is one mechanism, if I need to share my flight information with my team, my work presence can boost a post from my travel account. But we may need something more permanent and explicit, just as I need to tie together my website, twitter (and now Mastodon) feeds now.
It’s a different model to the singular presence that Twitter and Facebook have trained us to use, and it will be interesting to see how it shake out as the Fediverse grows.
Latest Memo: Using CWs
16 November 2022
One of the new features on Mastodon for a recovering twitterer is the CW field for new posts. CW stands for Content Warning. When I’m composing a post, if I press the CW button, I have the option of putting a short phrase into a dialog. Readers will initially only see that short phrase, and need to click a button to see more.
CW stands for Content Warning, and the name suggests it can be used to hide potentially offensive material. However it’s a general purpose tool that’s handy whenever we feel a reader would benefit from only seeing a short phrase with the ability to click for more, such as a post including spoilers for a TV show. One person I saw used it to say “Course Promotion” – which I thought was a thoughtful way to reduce the impact of advertising.
Adding a CW adds friction to reading the post, as you have to click the button to see the full contents. This friction is good if you’d rather not see the content, but irritating if you do want to see the content, particularly if you’re clicking on a lot of buttons. (A reader can turn off hiding for all CWs in your settings, if you wish.)
The issue of how to use CWs has become a very emotive issue in recent weeks. Communities had formed on the Fediverse who had felt bullied on other internet locales, including Twitter, and created norms for thriving here, norms which include when to use CWs. The musk-to-tusk migration has led to a massive influx of new accounts on the Fediverse (from 0.5 to 1.6 million), with the result that many long-time Mastodonians fear that their carefully built set of norms will be swept away. Newcomers, on the other hand, argue that the context for those norms has now changed. In any case, a federated network means that there will be different sets of norms in different communities, and those communities will have to figure out how to coexist.
So as a new poster in this neighborhood, how should I react, specifically to the conundrum of when to use this CW feature?
The phrase I use to anchor my approach in matters like this is “I can’t choose whether someone is offended by my actions. I can choose whether I care.” So I don’t try to judge whether anyone ought to be upset with my decisions, that’s up to them. Instead I think about how much concern I have for their reactions, and a large part of that is a judgment on how widespread the distress would be.
Mastodon is a federated network, so I have to accept that different parts of the community will have different standards. I presume the expectations about CWs will be a feature of a particular publisher, either that of an individual writer or a publication. My publisher is Thoughtworks, as that company controls the Mastodon server I post from. So anything I post must fit in with expectations of Thoughtworks – but as an employee, that’s nothing different from what I’ve been doing for two decades, on any platform.
Fundamentally, I’m responsible for the contents of my Mastodon feed, and my readers will choose to follow me or not depending on how I use it.
One thing I read early on was to put any cross-posts from Twitter behind a CW. I did this when I started up my cross-post feed, but I also created a poll to ask my readers what they preferred. They voted overwhelmingly against the CW, so I removed it. Readers indicated they didn’t like the friction of clicking the button when they wanted to quickly glance through the feed.
Mastodon allows longer posts than Twitter, and I’ve seen even longer posts that I assume came from other Fediverse software. The longer a post is, the more useful it is to use a CW to summarize it so the reader won’t spend time reading it only to find they aren’t interested. I use Twitter mostly to publish links that I think my readers will find interesting. In this case the post itself is a CW for that linked material.
My feed is mostly about software development, so there’s an argument to use CWs for posts that are about other topics. As I expressed above, if the post is short with a link, its acting as a CW itself. But beyond that, a reason to not apply a CW is that I can give more visibility to something that I think is important for my readers to see, even if it’s not something they may want. As with software feature requests, often people will find it valuable to receive something that they never thought they wanted. Part of my role as an author is to figure out what my readers need, which isn’t the same thing as what they want.
Politics is a regular topic for disputes about CWs. Many Mastodon guides state that all political posts should be behind CWs. But if I’m following a political journalist, I would expect to see political posts, and the CW’s friction is an irritation. As a mostly-non-political poster, there’s a greater argument for me to use a CW. But I only post on a political issue when I think it’s important to highlight it to my readers, and a CW defeats that purpose.
All in all, I see CWs as another tool for me, as a writer to help my readers by helping them find material useful to them. My suggestion to other posters is to experiment, use it when you think it helps your readers, but expect your understanding to change as you learn more. We’ll also see how the people we interact with use CWs, and use our experiences as readers to guide our decisions when we post.