Review of Mastodon - Open, Federated microblogging platform
Mastodon is a twitter-inspired, federated, microblogging community ("social network"), which anybody can partricipate in by joining a public instance, or running their own instance.
Review details | |
---|---|
Reviewed version | v3.5.3 |
Mastodon is a twitter-inspired, federated, microblogging community ("social network"), which anybody can partricipate in by joining a public instance, or running their own instance.
Background
I've been interested in running a Mastodon instance since I read about it back in 2017. I gave it a try back then, but IIRC Docker support was iffy, and the way federation worked was a bit hit-and-miss (at least, in my attempts) I did learn a bit about "WebFinger" though, which still sounds a bit dirty!
After abandoning my dreams of hosting an instance, I kept a few accounts on mastodon.social, experimenting with cross-posting from Micro.blog, and using the native RSS feature to provide a manually-created changelog of new recipes.
In 2022, finding myself wanting to up my "social game" without tying myself into Twitter, I started assembling a typically geeky, over-engineered workflow to cross-post between Mastodon and Twitter, and easily produce RSS feeds.
I decided to take a fresh attempt (5 years on) at running my own instance, and in the process, I re-introduced myself to elements of the Mastdon experience, which I'll explain below...
What's notable about Mastodon?
Here are my thoughts:
Technology
-
There's a steady cadance of ongoing new releases, and a dedicated Patreon and Sponsor supporter base.
-
There are now (as of April 2022) official mobile apps for iOS and Android (there are also dozens of 3rd-party apps which have appear over the years, but some of these are no longer updated).
Culture
Community is hard, federation can be abused to harass target users and administrators, and community moderation is generally a thankless job.
Social "platforms" are no longer just fun cat pictures, they're a now powerful social tool for effecting change or producing life-destroying harm, and a mature, open-source code-base is an attractive starting point1 for those wanting to establish2 their own platforms.
Public servers tend to serve communities of a particular interest, be it art, music, gaming, etc.
Details
Docker Install
Mastodon includes a docker-compose file for deploying under Docker, but it's not a "fire-and-forget" deal, since there are some manual steps required to migrate (or instantiate) the database, setup users, secrets, etc.
More importantly, since docker-compose will only run containers on a single host, this provides no resilience to failure, and no container orchestration like we're used to with Docker Swarm / Kubernetes.
I've adapted the docker-compose for swarm mode, and written a recipe to install Mastodon in Docker Swarm.
Kubernetes Install
Mastodon's repo also includes a helm chart, which makes the process of deploying to Kubernetes much simpler than either Docker or Docker Swarm. The chart isn't published on ArtifactHUB yet (I hope to fix this with a PR), which means it's hard to discover.
There are other elements I'd like to improve about the official chart, such as the use of env variables for secrets (these should ideally be Kubernetes secrets), but the availability of contructs such as Jobs makes the whole deployment and setup process work.
Here's my an opinionated guite to installing Mastodon in Kubernetes, which is how I've deployed my FNKY instance.
Admin UI
You could probably browse any public instance to get a feel for the user-facing UI and options, but it's harder to get a feel for the admin backend without performing your own installation. Here's a quick video of the admin options to scratch that itch...
Alternatives
OK, obviously one is a bot-filled cesspool so scary that Elon Musk doesn't want to buy it, and the other is open-source, self-hosted, federated, and can't be censored, monetized, mined, advertised to, etc.
Here are some other differences...
Feature | Mastodon | Notes | |
---|---|---|---|
A post is.. | a "tweet" | a "toot4/post" | yes, really! |
Sharing a post.. | retweeting | boosting | no, not "retooting"! |
Links count as | 9 chars | 23 chars | Regardless of length of URL |
Character limit | 280 | 500 | |
Media | video/audio/images work as you'd expect | ||
Polls | yes, polls too | ||
Privacy | you can hide your toots! | ||
Threads | like this | ||
Custom emoji | like Discord, you can define custom emoji for your community | ||
RSS feed | like this | ||
Content warnings | hide NSFW content, spoilers, etc | ||
Moderation | TWTR | per-instance |
Conclusion: Although the primary differentiator is centralized "Big Tech" vs federated open-source, there are some feature advantages (and some quirks!) to Mastodon vs Twitter
Summary
TL;DR
If you..
- Just like the tech..
- Want to "stick it to the man"..
- Find the concept of an isolated, themed social community attractive...
.. Then join one of the thousands of available instances.
If you additionally:
- Prefer to self-host your own tools..
- Want an instance to share with your community...
.. Then install your own instance in Docker or Kubernetes!
I want to "own" my content3, and I want to invest in the Geek Cookbook community, so I chose my own instance.
Whichever path you take into the "fediverse", toot me up when you get here!
Chef's notes π
-
https://blog.joinmastodon.org/2019/07/statement-on-gabs-fork-of-mastodon/Β β©
-
https://blog.joinmastodon.org/2021/10/trumps-new-social-media-platform-found-using-mastodon-code/Β β©
-
I'll continue to cross-post from Mastodon to Twitter though, for visibility and engagementΒ β©
-
In a highly controversial PR, "toots" were renamed to "posts", although my instance apparently still uses "Toot!" by default...Β β©
Tip your waiter (sponsor) π
Did you receive excellent service? Want to compliment the chef? (..and support development of current and future recipes!) Sponsor me on Github / Ko-Fi / Patreon, or see the contribute page for more (free or paid) ways to say thank you! π
Employ your chef (engage) π€
Is this too much of a geeky PITA? Do you just want results, stat? I do this for a living - I'm a full-time Kubernetes contractor, providing consulting and engineering expertise to businesses needing short-term, short-notice support in the cloud-native space, including AWS/Azure/GKE, Kubernetes, CI/CD and automation.
Learn more about working with me here.
Flirt with waiter (subscribe) π
Want to be alerted to new posts / recipes? Subscribe to the RSS feed, or leave your email address below, and we'll keep you updated.