Designing an open Facebook alternative (outline)

June 14, 2017 ยท 8 minute read

Posted in: computing social free software Facebook

About this post

Meme alliance logo: upside-down red Facebook F

I meant to be writing a couple of blog posts on Mastodon. But a thread on Mastodon led me to start thinking about Mastodon:Twitter::X:Facebook. There have been a few alternatives that haven’t really gone anywhere, which is kind of unfortunate, but perhaps they were just too early. And I was thinking about what we’d want today.

I want to write a full article on this, but I started by outlining it, and I think the outline is pretty readable, and I’m just going to post it on the principle that done is better than good.


Technical considerations

UX considerations

What are the things that make a Facebook-like social app different from a Twitter-like social app (e.g. GNU Social, Mastodon)? And where can we improve upon Facebook straightforwardly?

Different types of posters

Different types of posts

Essential UI features


Mastodon sharply limits searching, in order to prevent Nazis from kibozing for feminists and anti-racists and harassing them, a serious problem on Twitter. On Mastodon, you can only search hashtags, and usernames. The search box also lets you open post URLs from other instances in your regular instance’s interface. This choice is controversial, largely because it prevents people from searching in their own histories.

On Facebook, you can basically search for anything public.

Proposals for this replacement: 1. You can search for hashtags 2. You can search for users by username or display name, as long as they have opted-in to being searchable. 3. You can search public or closed groups and pages by name, keywords, or hashtags, subject to all other privacy restrictions, but you can’t search their content. (Maybe loosen this to allow members of closed/secret groups to search content?) 4. You can search your own posts. (And those of your friends?)

Finding friends, pages and groups

The biggest problem with competing with Facebook is network effects. How do we catch up?

Facebook uses a lot of creepy methods for finding you people and pages to follow. Our rule has to be Don’t be creepy.

Facebook bootstrapped its membership by uploading peoples’ contact lists and then spamming their email contacts. We can’t do that.

Facebook uses your social graph (FOAF) to suggest friends. Maybe this is okay? They also use various kinds of tracking, which is not okay.

We can suggest people based on interests, if they’ve made their profiles searchable.

There’s a lot to think about here.

Less-essential UI features

People depend on FB chat, but there are better options. Maybe make it easy to install a Prosody server?

Social considerations

Abuse and harassment

In general we want to make abuse and harassment more difficult than on Facebook, in the same way that Mastodon makes it more difficult than on Twitter.

Improve blocking

You should be able to block not only your harasser, but their social graph, and any groups they may belong to.

Individual users should be able to block or mute whole sites, and admins should be able to do so for their full sites.

Content warnings

Facebook completely lacks content warnings, and people try to fake it in different ways. Mastodon does it mostly right, other than labeling (ie conflating NSFW with sensitive for other reasons). If a post has a content warning, its media should also be considered sensitive and masked.

Improve moderation

On Facebook, reports only go to the site moderation teams, not group or page admins. Group and page admins can only find out about abuses through direct messages. This could probably be improved. Reports to group or page admins probably shouldn’t go to site moderators or risk site suspensions or bans, unless they are escalated by the page admin, or they are specifically reported for site CoC violations.

Sites should have Codes of Conduct, and site admins should use these when deciding on site blocks.


By self-promotion, here, I don’t mean promoting your goods, services, or creations, which should be fine. What I mean is tailoring your posts for maximum reactions or chasing page subscriber numbers. Because doing this lowers the quality of content, and also makes you a worse person.

Ideas: * reactions should be treated more like comments than as like buttons. They shouldn’t be explicitly quantified. Reactions are a good feedback on posts, and getting them makes you feel good. But quantifying them encourages addiction and tailoring posts to maximize them. * Share counts should also never be surfaced. * Analytics should not be available to page admins, because they attract brands and other sociopaths.

Fake news, click bait, and outrage addiction

Harder to deal with because of freeze peach issues.

Distinction between actual fake news (a kind of click bait) and partisan news sources.

Idea: you can’t share a link until you have clicked through to it. This means no sharing based on headlines only. But hard to enforce and also very annoying.

Site codes of conduct can ban fake news and click bait, and hopefully instances are small enough that this doesn’t increase moderation load too badly.

Other than that, this is a very hard problem — if you provide the ability to share stuff, people will share it. Hard to maintain constructive culture. Lack of incentives for click bait may help some.



This blog doesn’t support comments, but you can comment on the fediverse. Please comment on this thread.

Share on Mastodon | Follow on Mastodon