Oh, scary! What is this war? Is it something I should be afraid of? As a normal person who doesn’t care about internet dives, should I be worried? I read that Mastodon Social is the hottest new social network and may actually take Twitter down. How much of this is true? I apologize for the melodramatic pop culture introduction. Actually, there’s not a war coming. Really, things are just business as usual for the OStatus protocol networks which have been around for nearly a decade.
We often harp on the media here and have even ragged on Mastodon Social in the past, so I’ll try to withhold the heavy handed criticism that we often fall on here. But, because the media works in mysterious ways, this week has seen a tremendous slew of “MASTODON SOCIAL THE NEXT TWITTER?” articles all fall within a day of each other. We don’t want to get left in the dust, so it’s important to us that we cover this. What is Mastodon Social and what makes it so special? These are good questions, but in order to answer them – we’ll have to provide a frame of reference.
Mastodon Social is the name of an instance on GNU social which uses the OStatus protocol to connect to a vast variety of servers in what’s known as a federation. Mastodon is also the name of the software being used on that server, which was developed by Eugen “Gargron” Rochko. It was built with Ruby on Rails, Redux, and React.js. I learned the latter from the Wikipedia page, which is about the extent of research given by any of the other articles published this week.
I’ve been posting on GNU social for over a year now, and I’m far from qualified to write about its history and the philosophy behind the federated network. I’ll do my best to provide some insight. I hope that this article can provide some decent reference points for the future and explain why the network is so special to the many of us who call it our home.
The Beginning of GNU social
In 2007, Evan Prodromou developed the framework for what would eventually become GNU social. At the time of its conception, it was known as Laconica and utilized on a microblogging service named Identi.ca. After receiving funding, Prodromou renamed Laconica to StatusNet and began development on the service. The idea behind StatusNet was that anyone could download the software and run their own microblogging service. The lofty goal was one wrapped in brand strategy and corporate pursuits — hoping to eventually bring microblogging to the masses (for both brands and individuals) the way that WordPress did with blogging.
A lot of people contributed code to StatusNet and the project grew. In 2010, Prodromou documented the OStatus protocol he had created and migrated StatusNet to, and managed to get it under the umbrella of the W3C for further development (which would not happen until 6 years later)*. OStatus became the standards update to the OpenMicroBlogging protocol. This is a big deal, because OStatus is the technology that W3C maintains and develops and is “basically the standard” operating procedure for cohesive microblogging communities. Most of these OStatus communities can communicate between each other (Federation).
Sometime around some point, Matt Lee began exploring options for social tools for GNU FM and StatusNet caught his eye. Some interest continues to surge, but no major developments occur. Prodromou eventually loses funding in 2012 and the actual StatusNet development seems dead in the water. It continues on for a bit.
Due to the project being “open source”, people were able to fork the work initially contributed to it. Mikael Nordfeldth had forked StatusNet into a personal project called Free Social. mmn’s project was a ‘for fun’ endeavor, but after Prodromou decided to move forward with pump.io, Lee and mmn offer the idea of merging the StatusNet project into a new one, aptly named GNU social (since the remnants were developers and supporters of the GNU / Free Software movement). mmn continues to maintain and support GNU social in 2017, but there have been many software forks that build on his work, while trying their own thing. I’ll come back to this later.
There’s some interesting political theory surrounding some of this history and a discussion that continues to pop up every few months on GNU social. Rumor has it that Identi.ca preferred to be a sole microblogging alternative, rather than federate with StatusNet nodes. I wasn’t around then and while I’ve reached out for comment, I have none at the moment.
Rumor has it wrong. StatusNet the company made it easy to set up your own addnamehere.status.net node, free of charge for single-user nodes, and also provided several nodes with names like 240.status.net, unlimited.status.net etc, to experiment with different message size limits. Evan really tried to get people to grok federation and get off the “flagship node”. But identi.ca was the face of StatusNet, and it kept growing. It wasn’t until the #pumpocalypse that alternative sites like quitter.se really took off, in the great exodus from identi.ca from people who were confused by and/or disliked the new software. *
So, this is the quick rundown of the history, which I’m certain is fairly wrong, as milestones in GNU software are mythical and poorly recorded by users – due to the constant project ADHD of developers and the occasional lack of foresight for the future that we tend to have on the internet. I believe GNU social and Federation is a big deal, however.
Federation and Decentralization: A Philosophy
If you’re unfamiliar with GNU or the Free Software movement, I’ll let gnu.org sum it up:
The idea of the Free Software Movement is that computer users deserve the freedom to form a community. You should have the freedom to help yourself, by changing the source code to do whatever you need to do. And the freedom to help your neighbor, by redistributing copies of programs to other people. Also the freedom to help build your community, by publishing improved versions so that other people can use them.
Some people roll their eyes and most people don’t even think about this sort of thing when using software. Whatever your opinion on the ‘movement’ and its spearhead, Richard Stallman, the Free Software movement has done some amazing things. But, it can also seem a bit burdensome or stuck up, for the casual internet user.
Instead of diving into GNU, I think a better route would be to explore and examine Twitter. I won’t go into the history of the service or its Founder/CEO, Jack Dorsey, because that’s mostly common knowledge. Instead, I want to outline some inherent facts about the service.
- It is a closed, centralized platform. This means that it does not communicate or allow itself to communicate with other networks. If I post on Twitter, people on Facebook cannot reply to my post. There are APIs that allow cross-posting and some free software that allows commenting based on those APIs on other websites, but at its core a user of Twitter is only a user of Twitter and the user’s profile is restricted to interacting on only an insular level with other users.
- It is a microblogging service. Microblogging is short form blogs – somewhat stream of consciousness, that is meant for sharing ‘shortform’ snippets. Microblogging was originally known as tumblelogs. In 2005, the term was coined and the first major offshoots were the aptly named Tumblr and Twitter. Don’t forget, Identi.ca was also one of the first major platforms. The race was on in 2007 as to which service would become king. Obviously Twitter is the most known, though G+, Facebook, Tumblr, etc etc are also incorporate (are) microblogging.
- It is a privately owned, traded company. This means it aims to make money. Everything that is done on the platform is for the goal of revenue. I’ve written about the slow demise of Twitter, and I believe a lot of it is due to this bullet. Since money is the goal, they do some crazy stuff. This includes how users can interact on the platform. Don’t get me wrong, Twitter most likely won’t “just go away and die”, but in its current state (a clueless board), no one wants to buy it.
There isn’t anything wrong with trying to make money. But sometimes a board, which may not consist of users, can make poor decisions. Things that are constant problems on Twitter are:
- Banned: There’s a moderation team that bans people. You could potentially make a new account, but lets say you don’t (because that’d be against the TOS, and we don’t break that). Once you’re banned from the service, you’re done. You can no longer communicate with that network. These bans discourage actual user moderation and filtering, instead causing people to shout “BAN X or BAN Y” instead of “I’ll just block this moron because I don’t care for his posts”.
- Character limit: The character limit was originally due to mobile posting. For some reason it has stayed, and that makes actual communication difficult. As more users jump to the service, the length of threads and arguments grow.
- Discover-ability: New users have a hard time on Twitter. The only way to see posts is to follow people or search for specific keywords. Hashtags, which were meant to be a categorical tagging system, have been corrupted into nonsense and finding relevant conversation or even being discovered by others proves to be difficult for a large number of new users.
- What’s it for? This is the real question. I guess you could say Twitter is for whatever you want, whether that’s real-time news or entertainment. But due to the other problems, Twitter can’t actually be for whatever you want, because it is closed and can’t be built upon by the user base.
The reason a federated and decentralized microblogging platform excites me, is its implications. All of those problems above are immediately solved by a federated network. Following a standard protocol allows vast individually run networks to communicate in real time and empowers the individual users to make decisions that benefit them. Improvements to an individual’s server can be contributed back to the platform and other server admins can incorporate them into their servers. Most of these OStatus networks can communicate with each other.
Essentially, Federation allows for a playground of epic proportion. Microblogging isn’t necessarily the draw, but instead the creativity and freedom a network like this creates. A federated network allows insular bubbles and like-minded indviduals (or even brands) to start and hang out together on a server, but also communicate with others on other servers. A major draw is the open discussions that can be had. I’ll get into my personal history in a bit, but one of the most interesting things I’ve seen is how ideologically different individuals are able to have rational discussions across the network or use their own self-moderation to stop what that individual feels is harassment. By giving the users control, everyone is free to make the decisions on how they wish to interact with the network.
A lot of this is possible because the networks on GNU social share a common protocol for communicating, which basically is an agreement to ‘play ball’. People think that having an open network where anyone can start a server and communicate with another is a troll’s paradise, but because so many people respect the philosophy and understand the power of self-moderation – trolls are actually rarely an issue. This mutual understanding makes the experience on GNU social unique and I think the framework for great things in the future. A return to the web of old, while pushing the internet forward.
It may sound like I’m over romanticizing GNU social and the aspects of the federation, but I think there are vast opportunities out there because of it. Opportunities that no one has thought of and applications outside of just microblogging. Ways to make money, share work, and create a fantastic future for the internet where people aren’t constrained to Facebook and Twitter and can take control back.
This is why I’m passionate about educating people about the importance of Federation and why the majority of “older” users seem so frustrated by the journalists who have been using Mastodon Social for all of 5 minutes.
You don’t want decentralization
Eugen and I have a somewhat rocky relationship, but as an individual and a developer, I respect him. A majority of the expanded “fediverse’s” criticism came from lack of transparency, problems with OStatus protocol in Mastodon’s software, and what seemed to be a betrayal of sorts after several admins reached out to help in Mastodon Social’s early days. I think, that potentially, we can be a bit harsh and this is an important lesson to learn if we truly wish to push the philosophy of federation forward. Eugen now has a transparent TOS (which is excellent – an admin should be able to run his server how they want) and developer tools for simple server setup.
There are still issues with Mastodon software adhering to OStatus, which breaks other nodes, but to be fair – there are many issues with all the various configurations of GNU social software and Eugen has only been developing the software for half a year. The admins do a decent job of working together to solve these crazy problems. The last is a battle of ego and I have not enough experience with developing to offer insight into that. But one when node and software succeeds, we all have the potential to. Also, Eugen has not banned or silenced my Mastodon Social account, which I appreciate and return the favor by trying my best not to break the TOS on his server. Of course, I have shitposter.club, for that.
Except for blacklists built into a software implementation. That’s somewhat frustrating, but can be solved for and is what happens when people join the service who want neither federation or decentralization.
A whole slurry of articles have come out praising Mastodon or calling for its death in just a few days. It’s either the Twitter killer or the murder victim of Twitter. I find both of these notions laughable. Some of these journalists are egotistical and believe that by hopping on the bandwagon of “the next Twitter” they can grow their influence. Some are well-intentioned but have done 0 research. This ego nonsense is trouble for Eugen, because it’s directly influencing the development of his software. Many of the original Mastodon users came from some place where people of conflicting opinions were to be banished. This pointed development towards privacy tools (though there were many already) and instance banning, instead of federation fixes. These same things have come back to haunt the platform now that the userbase has grown. So, do you put a knife in the back of the original users and change the platform goals, or do you move forward – software in mind.
It doesn’t really matter. Mastodon, both the software and server, will survive because of the federated nature of GNU
social. These journos and celebrities may complain because they aren’t influencers in a place that isn’t centralized, but Eugen will suffer nothing in the development of his software. If he chooses to, Mastodon’s development goals could completely change into a centralized Twitter alternative, like gab.ai. If he goes this direction, the federation won’t suffer and Mastodon will just be Mastodon. I believe, however, that Eugen has enough foresight and does actually believe in the philosophy of federation. Whether some other developer comes along and forks Mastodon and turns it into a shitty celebrity nightmare will be seen. When the majority of celebrities and journalists get bored because their ego cannot sustain the slower drip of dopamine, we’ll still be here. They don’t want federation, they just want to be hip and cool.
I am not concerned. This exodus is not the first from Twitter.
Context: February 2016 – The Second Exodus
GNU social had been chugging along fine for years. A slow, but comfy little paradise for geeks and developers. Then in
February of 2016, Twitter changed a rule and all of the sudden Hannes found his node full of GamerGaters, Trolls, Idiots, and the curious. Hannes can be credited with making the first “familiar” UI for GNU social. One that felt like Twitter and modernized the platform in a great many ways. He’s done a lot for the platform and continues to support it today. Back then, he was unfazed.
He is the furthest from politically conservative and his node, Quitter.se, does not hide that fact. But, instead of banning everyone who joined – he did something fantastic. He educated the new users on what the federation was and how GNU social works. By directing people to leave Quitter, he indirectly inspired a few people to set up their own servers. A few people, probably including myself, gave him shit – but he never banned any of these servers from federating with Quitter.se (save for whatever was illegal in his home country). He banned a few trolls, but in general, handled this Twitter exodus stoically. Were it not for hannes being transparent and attempting to educate, the ‘fediverse’ would be a very different place, today (and some probably wish it was).
This was huge.
Shitposter.club, SLC/FZP, GNUtan, GS.SMUGLO.LI, Highland Arrow, and SOYKAF
It was around this time, these nodes popped up. Some before, some after, but together they have become a bit notorious as the rowdy bunch of GNU social. The admins of these instances all have very different views and don’t always get along with each other, but this new crop of admins provided sanctuary for the February Twitter exiles and have become somewhat known for their counter-culture nodes. Most federate with each other, barring a few, but that’s some shit I don’t want to get into. All of these admins have contributed greatly to the platform – building their servers to truly be playgrounds (or explode in a fiery death).
Don’t get me wrong, there are many other great admins out there, but I am being particular – because they provided shelter in February.
Guess what happened afterwards.
Quitter.se didn’t die, the Federation grew, people openly argued with each other and debated pointless things, and many features were built to aid in these arguments. Things got a little weird, but in that good sort of way, because once things settled – there was a procedure for the next exodus (The SEALION CLUB pre-gab.ai one).
This exodus brought a great many people from the right-leaning side, politically, who also did not want a federation or decentralization. The admins did their best to educate, like Hannes had before. Some of these new users stayed. Most left when they found an insulated network (gab.ai) that didn’t argue with them. It had Notch (of minecraft fame) come and say Sealion.Club wouldn’t last 6 months. Other celebrities stopped by. Then it was quiet again. No one cares, because the people who stayed enriched GNU social – and the people who left, didn’t understand the philosophy. This reminds me of the current Mastodon happening.
The Future of Mastodon Social and GNU social
Many people are complaining about the UI for Mastodon. Some aren’t. The good news is, if you’re a developer or creative, you can be a part of the ever changing landscape of GNU social and other OStatus connected networks. Build a UI that you like and appeals to your userbase, like lambadalambda’s Pleroma project. If you don’t want to build anything, there are many different interfaces that you can use, already.
If you are sick of a certain bug, build a patch and push a commit to the project of your choice like pre-exodus veteran, Takeshitakenji. If you’re sick of waiting on new GNU social updates, fork it like Maiyannah’s postactiv. OStatus is the protocol that lets all of this play together. Look, GNU social is broken af. It doesn’t come with a tutorial and the concept of federation is confusing for new users. It’s slow, buggy, and created by developers, not designers.
And its possibilities and the community collaboration is what makes it so exciting. These are the building blocks for changing the internet landscape. Or, less dramatically, a cool place for users to build the kind of fun hangout they want.
If you’re considering joining Mastodon.Social or any other server in the Fediverse. Come, not trying to be first on the “Next Twitter”, but instead as an explorer, critic, and creator. And, stay a while. It’ll be great to have you.
Are you a bad enough dude to save the internet?
(If I left you out of this article, it was not because of lack of respect. Many of you provided at length material and have also contributed a great deal to GNU social, the education of its users and the constant debates. Not forgotten. As for the extra material, I’d like to use it for another article sometime. ilu.)
Editor’s Note: As is usual, this was written with no editing, so I apologize for Grammar/Spelling/Punctuation. If you come across a glaring information error, please let me know. I’d like this to be as factually accurate as possible.
You can follow me on GNU social (but I guarantee there are far more interesting people to follow out there).
Addendum: *Thanks to @clacke for fixing a few of my errors on the StatusNet history.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Also published on Medium.