There’s more detail in this post, but this is one of a series of posts investigating the Free-as-in-Freedom social networks that are available, to see how they compare to the for-profit networks that exploit users. Each post is an overview of the system I have been and will be working with, along my general impressions.

Social graph

Feel free to contribute your own findings, either on the same networks I covered or pointers to and descriptions of any networks I may have missed.

Note that I’ve added a specific socialshowdown tag to easily collect these posts, if you want to easily find the others in the series.

General Conclusions

So, what have we learned in the last couple of months about Free Software social networks?

Having gone through all of these systems, the biggest lesson that comes to mind is that moderation, and therefore community curation, is pretty universally lousy. Blocking or ignoring somebody is generally easy, but that solves one problem—keeping garbage away from the experienced user—by exacerbating a similar problem, by leaving the garbage where new users will see it while keeping experienced users (the people most likely to recommend using the network) unaware that it’s piling up. This, in turn, makes it an unfriendly environment for newcomers and makes the worst newcomers feel at home. That makes it a problem worth solving fast, before any outreach becomes counterproductive.

Likewise, too many of these networks believe that they’re the next Facebook, by which I mean that they think you’re signing up already knowing who you want to have conversations with. Or maybe there’s an Instagram-like aspect, where they assume you want to mainly speak out and have people find you. Either way, the smaller network sizes cause these networks to feel like ghost towns, because the system doesn’t try to build communities.

The Best of…

Beyond that, looking at these systems provides a set of solid features that existing and future designers should learn from:

  • First, to get the obvious out of the way, the sites that work all feel better to use than the corners of commercial social media sites with similar communities. Away from the manipulation and addictive qualities built into corporate social media sites to drive advertising revenue, even the idiotic hate-filled screeds lack the performative aspects of offending out-groups. There are still terrible people writing those screeds, of course, but they’re less actively destructive in these environments, which says a lot. This raises the interesting question of how much radicalization is due to someone’s profit motive.

    • Side note on this point, this isn’t about the advertisements, themselves. I use TweetDeck to read Twitter, so I don’t see any ads, but the Twitter community at large is still engineered to produce controversy and interpersonal aggression to drive engagement.
  • For long posts, Markdown (or some other markup language) is essential to prevent unreadable posts. Several networks provide this. But only Diaspora appears to have realized the utility of having a WYSIWYG editor to help the user produce get it right, for some reason, which seems like weird oversight.

  • Libertree and Diaspora stand out as having an actual on-boarding process, even if it’s only asking a couple of simple questions like interests and recommending a first post. Diaspora takes this a step further, by using that information immediately to help curate the activity stream and encourage the new user to post a brief introduction.

  • Matrix/Riot is also a huge standout—despite not quite being a traditional social network—for having actual moderation tools, instead of just shrugging and insisting that people can always just mute the people who post garbage.

  • Federated systems benefit greatly from a migration feature, to allow users to move from server to server. This not only makes it easier for users to decide to run their own servers without losing their history, but also hedges against volunteer servers failing. Friendica might be the best of breed, here, allowing you to just post a message that deprecates your old account in favor of the new, which causes all the users who look to automatically point to the new account.

  • ActivityPub’s flexibility is impressive, allowing for both minor differences between Mastodon instances and entirely different approaches to the content, like PeerTube and WriteFreely—not to mention alternative microblogs like Pleroma—while keeping it all working across boundaries.

  • Full “firehose”-style feeds, such as Mastodon’s local and federated timelines, Minds’ stream, ZeroMe’s feed, and so forth, are useful, but only to a limited extent. This experience convinced me that the first thing I want to know is what people are predominantly talking about and how they interact, especially if there isn’t an easy way to find interesting people.

    • It’s unfortunately not automated, but Identica’s page “Who to Follow” includes a set of most liked/shared/followed posts. A sort of “leaderboard” along similar lines could go a long way toward helping new users get oriented.
  • Mastodon’s Content Warnings are an outstanding and simple feature, making it easy to help followers skip posts they don’t want to read for whatever reason. I see that they’re slowly being added to networks like Scuttlebutt, which is good.

  • Several of the networks (Pump.io, I believe, at the top of the list) don’t use infinite scrolling. It’s much less stressful, since it’s easier to walk away from the feed if there’s a natural ending instead of a perpetual state of “just one more screen-full.”

  • The idea of rewarding posts appreciated by the community with some sort of currency—as Minds, Twister, and ZeroNet all appear to attempt in some way—is a compelling idea that at least has the potential to drive some healthy community growth. I suspect that’s still going to drive tribal controversy, because it’s basically another form of advertising revenue. Still, experiments with the rewarded behavior could prove that wrong.

  • It’s worth pointing out that, while it has its problems, Peer-to-Peer architecture such as we see in Scuttlebutt and RetroShare means that it costs nothing to sustain the network. There are no mandatory server costs—ignoring Scuttlebutt’s pubs—since users transfer information directly, unlike a Diaspora pod or the entire Minds network. Lighter-weight systems like twtxt and gitgeist have a cost associated with them; the former just requiring any server you can update and the latter needing the ability to run a Node.js application, but that’s still far smaller than running a Diaspora pod.

  • This isn’t exclusive to the free software networks, of course, but there needs to be some balance between every action being permanently published for all to see at a glance on one hand and history being completely mutable. Probably the most elegant solution—though it obviously has other problems that I discussed a couple of weeks ago—is gitgeist. Changes to the visible front are possible, there, but every change is logged.

Feature-wise, I suspect there’s also a lot more to learn from Discourse, which is forum software, rather than a social network, and so not discussed for this post. But it was designed to promote civil conversation in a number of ways, including an extensive on-boarding. Similarly, The Practical Dev and Glitch both encourage supportive conversation and collaboration through structure of the application instead of enforcement of rules.

Architecture Lessons

One observation that interests me is that the centralized sites appear to have the biggest problems. Minds has a community that could be charitably described as a steaming garbage pile. Maple is a wasteland and it’s hard to find anybody running a public Libertree site. Okuna is precariously close to vaporware on a constant quest for more money. If you have an interest in free software, the centralization also adds a risk that you need to trust that the single owner is running the software in the repository and not violating their own rules.

As mentioned above, rewarding people for getting the community’s attention also seems to have a similar—though not identical—effect to building the business model around advertising. This makes some intuitive sense. Users who want the reward are, of course, left in a situation where they benefit from being more extreme. It might instead be worth looking at ways to reward people for being helpful to the community in some way.

Though there’s only the one example, by contrast, I suspect that Scuttlebutt’s offline-first design is what encourages its friendly atmosphere, by suggesting that connecting to the network is a special event and not the default. However, that may just be a coincidence and Scuttlebutt’s community is nicer through a series of accidents.

Missing Features

I’ve already mentioned a couple of these in praising the outliers, but I think they’re important enough to explicitly list as things that would improve the experience of any of the networks.

  • Moderation is critical. If a community can’t exclude bad actors intent on disrupting conversation, then the resulting chilling effects mean that members of the community can’t speak freely. And if members of a community can’t speak freely, you don’t really have a community. It doesn’t work to put the burden entirely on every user and, obviously, and it’s important to not centralize moderation, or else you risk a corrupt leader replacing the community’s judgment with their own, such as Twitter’s admission that they won’t be proactive on white supremacy, because they’re afraid of offending a specific political party whose rhetoric is identical.

  • Recommendation is just a part of modern life. Many of these networks make a big show of never tracking you, which is fine, but tracking transparently and using that data on behalf of the user instead of to target the user would dramatically improve any of these systems. That’s especially true on systems like Scuttlebutt, where everybody’s activity is already public and available for use.

  • Identity is, similarly, an important part of modern life. There is, however, no real model of identity on the non-centralized networks. The Fediverse has some support for linking an account with a web presence, but hasn’t generally implemented a complete migration system; Friendica does this slightly better, as far as I can tell. Scuttlebutt has difficulty with using the same account across multiple machines, yet hasn’t yet implemented the much-discussed message type allowing the combination of different accounts. gitgeist uses a combination of self-hosting and signed updates to ensure identity. Some of that is viable, but none of them is complete and there’s almost no borrowing/sharing of philsophies.

  • Discretionary communities—that is, social groups of people who aren’t forced to deal with each other on a continuing basis like a team—need to be designed and built, rather than hoping they spontaneously form. So, a lot of these networks, especially those with smaller populations, could dramatically benefit from a framework that keeps users together and encourages finding commonality.

  • As more services are hosted in federated and distributed networks, auditing is going to be critical, whether that’s supporting specific rights to be forgotten or preventing discrimination around events. A centralized site can be sued, if there’s evidence of illegal activity, and a site run by a corporation can be monitored, but (for example) a Mobilizon instance could plausibly exclude women from job fairs without any easy recourse.

I’m sure that I’m missing other critical features—I mention WYSIWYG editors and on-boarding processes, above—but these seem like they would be the biggest wins that (almost) nobody is touching in anything resembling a comprehensive fashion.

The Overall Verdict

It looks like I’ll be sticking with Diaspora, the Fediverse (in the form of Mastodon), Scuttlebutt, twtxt, and Matrix/Riot, for now. Those seem to be the winners, at least for what I want out of a social network. The rest are places I definitely don’t want to be because the population largely identifies itself by its hate, are seemingly broken in some fundamental way, or don’t exist, yet. Considering that we’ve gone through fifteen options with two that haven’t been completely released, that’s not a bad overall result.

For easy reference, here are my addresses on those networks.

Network Account
Diaspora @jcolag@nota.404.mn
Mastodon @jcolag@mastodon.social
Scuttlebutt @RoHPOaN65z8ZVYwPr19Ni4KgYCE05k+FAKMdDPyHbvs=.ed25519
twtxt https://john.colagioia.net/twtxt.txt
Matrix/Riot @jcolag:matrix.org

Granted, I’m quiet on social networks and so the majority of my posts are semi-automated announcements, but feel free to follow me and/or say hi, because I do reply when people talk to me! Or don’t. I’m not the boss of you…

I also want to keep an eye on Friendica and Pump.io, since there might be something there underneath the surface. And, as mentioned last time, it could be worth watching out for Okuna, if it ever really launches. Or it might turn out to be another unusable also-ran produced by money and time that could have been better spent improving Diaspora or any of the Fediverse projects.

And, of course, I want to dig deeper into Matrix’s moderation system, the identity systems, and recommendation.


Credits: The header image is untitled by an anonymous PxHere photographer, made available under the CC0 1.0 Universal Public Domain Dedication.