Mostly, It's All About Tech... Mostly.

Is Mastodon and the Fediverse good enough yet?

I've recently started using Mastodon properly on a daily basis since bagging an account on bitbang.social, which is an instance that focuses on hosting users who have a retrocomputing interest and is run by YouTuber Action Retro. I've also recently managed to get an invite to Bluesky, but I've not looked at that in-depth yet – once I do, I'll do a post my views that as well.

So, here are my thoughts as a fairly new but tech-savvy user of Mastodon and the Fediverse.

I'm using the official Mastodon client for Android, plus the web-app version hosted by bitbang.social via Chrome on my desktop. Other clients exist, but these are what I'm using right now.

For those who don't know, Mastodon is a popular platform for social media sharing, using an underly communication protocol called ActivityPub. ActivityPub is an open-source technology which allows multiple different applications to share social media data, such as user profiles, and user posts. Think of it like TwitterX, but not controlled by a maniacal lunatic space-obsessed billionaire.

Mastodon is the current front-runner client/server application that uses ActivityPub, but there are others. Bluesky states that it also uses ActivityPub but is currently closed off from any other servers, so that claim can't be verified yet.

ActivityPub is getting enough traction now that even the big players like Meta are starting to look at adding support to their servers.

Each server in the Fediverse is called an instance. Each instance can technically share content with other instances on request. Naughty remote instances that contain content the local instance admin finds objectionable can be blocked wholesale on their local instance. Blocking remote instances and/or users can also be done by users, but those blocks only apply to them and not their whole instance.

Like TwitterX, Mastodon focuses on short posts called 'toots' (although, so far, I've not seen anyone actually call them that!). Toots can be re-shared either via the 'boost' option, which is effectively just re-posting the toot, or they can be shared via a dedicated share button to other applications (on your mobile device mainly; it has limited use on desktop).

As expected, users can reply to other users' toots. They can also 'favourite' a toot, which puts the toots in a personal Favourites list. However, people seem to use that button as a 'like' button instead. I find this strange, as favouriting a thing isn't the same as liking it. I can favourite a thing so I can find it more easily later, but that doesn't mean I emotionally 'like' that thing also.

There is also a 'bookmark' option which adds the toot to a bookmark list, which effectively duplicates the favourite functionality, but in a more private way (users are notified when you favourite their toot, but not when you bookmark it).

We also have 'Lists'. These are useful if you want to follow certain people in a curated way. Adding users to lists wasn't obvious (I had to resort to a Google search to find out how), but the idea is if you have a bunch of users you want to group together and see a filtered feed of just their posts, then this is what Lists are for. Unfortunately, you can't add Hashtags to Lists, and looking at the open issues on the Mastodon source code website, it doesn't look like that will be changing anytime soon, which is a major oversight, in my opinion.

Finding users to follow on Mastodon is not, again, in my opinion, easy. You can only search your local instance (and content from remote instances that your local instance has requested) using the search option (or by browsing via the Explore button), and you can search users, keywords, and hashtags. You can't search the whole Fediverse for Hashtags, keywords, or people. Depending on your chosen instance, this may or may not be an issue for you.

Hashtag usage counts are only based on the frequency seen by your local instance. If your local instance only has a few users, hashtag usage counts might be close to zero and the topics very specific, but on one of the main instances, such as mastodon.social they will be in the hundreds of thousands across many topics.

For your local instance to know about posts from a user on a remote instance, you as the local user must find that remote user by entering their full Fediverse account name into the search, and when their profile is displayed, following them. After that, your local instance will automatically fetch new posts from that user, from their instance and show it to you, and to anyone else on your local instance if they so wish. If you don't know their full Fediverse account name, you won't be able to find them.

I joined an instance that focused on retrocomputing, as that is one of my hobbies, and that made it easy to quickly find some local users who post about retrocomputing. The downside of this is that bitbang.social only has a few hundred active users, so local searches are very limited in scope.

Due to the Fediverse design, and unlike TwitterX, no instance can see the entirety of it. Busy servers with lots of users, by their nature, tend to have more content shared with them from other instances due to lots of remote 'follows' by their local users. Inversely, smaller instances tend to see a lot less content shared from other instances.

On the upside, though, smaller instances can have a more 'community' feel to them and have a lot less 'noise' in the local feed.

So, how do you find shared content that your local instance doesn't know about? Well, I've not yet found the perfect answer to that yet. What I've been doing is looking for people's Mastodon account names on other platforms, such as TwitterX, YouTube, and Reddit. I've also gone to the home pages of other popular Mastodon servers, and searched for Hashtags and keywords there, then copied and pasted the full account names of interesting people into bitbang.social's search box to follow them there.

Am I doing this right? I don't know, but it's sort of working – I am slowly finding good content, but it's hardly frictionless.

What I think is missing, and it might already exist, but I can't find it, is a centralised Fediverse user directory. By centralised, I don't mean a single server that has all the users, but all the users on any server that sets itself up as 'Fediverse Directory Server'. These Directory servers could leverage the Mastodon API on each instance to get user profile updates and store them in a local database, enabling people like me to find good content to follow (based on user profile info) without having to hit each major instance in turn. Surely this feature must already exist somewhere? Instances.social already does something similar, for instance information, but not for users.

While I'm thinking about improvements, and I can't believe I am about to type this, but what Mastodon needs is reaction icons.

People these days are too busy doom-scrolling to leave comments on posts, and new social media services are never going to be able to reverse this trend. So, the only way a poster can know their post has any sort of impact, is by the low effort like/applaud/laugh/etc. button. Mastodon doesn't have this; it only has the Favourite button, which isn't really the same thing.

As a new Mastodon user, I currently only have a handful of followers. As there is no way for my followers to react to my posts easily, I have no feedback on whether they are actually seeing what I post. There are no post metrics either. I have no idea if anyone is reading what I type. For all I know, all my followers could have me blocked, and I'm just posting to the void. Surely this is counterproductive to what a social media application is supposed to be providing?

This lack of visible engagement could easily put off a new Mastodon user. After all, no one is going to put effort into posting to yet another social platform if no one else is going to read it. You might as well post on a personal blog that no one reads instead (like this one!).

Personally, I'm going to stick with Mastodon a while longer and see how it goes. It also has an open API which might be fun to play with to see if I can flex it to meet my needs and usage preferences.