As I reported back in May, the alt-right echo chamber Gab is adapting ActivityPub. One of the main drivers behind this decisions is to make a beachhead inside mobile app stores. The next version of Gab is a fork of the Mastodon code, and it’s scheduled for launch on July 4. Gab’s impending inroad has caused a slight scare on the left side of the fediverse. As It turns out, leftists, antifas, and the LGBT community really don’t like the alt-right.

But there is no need to panic. Because of its open and distributed nature, the fediverse already has a few Gab-friendly Mastodon instances. Still, you don’t see the fediverse being overrun by the alt-right. Even if ActivityPub enables propagation of Mastodon message through server-to-server federation, administrators can block other instances from federating through their own. Enough blocking, and a particular instance is effectively left as an isolated little island, all alone in the fediverse.

Another interesting discussion that has surfaced recently is how Mastodon client app developers should handle Gab. Their beloved apps will soon be openly used to spread alt-right propaganda. Gab’s imminent adaption of Mastodon has forced many app developers to make a conscious choice in the matter.

Block or Face the Ban-Hammer

Gab once had an mobile app, but it was removed by Google from their Play Store. The reason given by Google was that the client was violating the company’s policy against hate speech. Apple also rejected the Gab app, citing the same reason as Google, with an extra violation of the rules against pornographic content as the cherry on top.

This precedent gives app developers a potential problem. Their generic Mastodon clients might be banned by Google and Apple because they are used by Gab. Even if their client is not a Gab-specific client, that important distinction might not be taken into account when Google and Apple swing the ban-hammer.

In a blink of an eye - or rather a press of a key - many, many hours of excruciating, hard programming work turns into collateral damage in big tech’s effort to make sure they are not a glaring tool for the alt-right. A ban like this can be devastating for app developers. They are cut off from the main tool used to distribute their app. This is particularly true for iOS developers, who are very limited in the ways they can distribute their apps outside of Apple’s strictly controller walled garden.

To Enable or Prevent

The risk of being hit by a ban is good enough reason to block Gab for some app developers. But a much better reason exist. Every app developer should ask themselves this: “Will I allow my app to become a vehicle for a prominent alt-right social network?”

At first glance, the obvious answer to this question is “no”. Every developer should scramble to block Gab’s domains in their application code. But hang on a second! Wouldn’t both the freedom of speech and the fundamental ideas behind FLOSS be violated if Gab is prevented from using the applications?

In my personal opinion, the short answer to this question is, interestingly, also “no.” Let’s have a look at the long answer, and how I came to this conclusion.

What is Freedom of Speech?

Freedom of speech is a widely debated subject among lawmakers, philosophers, and other similar professions. I won’t pretend I have more than a layman’s knowledge of the subject, but I’ll take a stab at it, nevertheless.

Most civilized and free countries have, in some shape or form, incorporated Article 19 of the Universal Declaration of Human Rights (UDHR) into their laws concerning freedom of speech.

Everyone has the right to freedom of opinion and expression; this right includes freedom to hold opinions without interference and to seek, receive and impart information and ideas through any media and regardless of frontiers.

– UDHR, Article 19.

Based on Article 19 alone, it’s open season. Everyone can say whatever they want, in any way they want, and no-one can do a damn thing about it.

The Small Print

But it’s not that simple. The UDHR contains other articles that, in my view, limit freedom of speech. This is particularly true when that freedom is used to spread hate. Here’s article 1:

All human beings are born free and equal in dignity and rights. They are endowed with reason and conscience and should act towards one another in a spirit of brotherhood.

– UDHR, Article 1.

The alt-right is no stranger to opinions and attitudes that completely disregard Article 1. Antisemitism, white nationalism, and anti-feminism do not spell “all human beings are born free and equals in dignity and rights.”

Article 2 further adds to the argument that hate speech is not covered by Article 19. Here is an excerpt:

Everyone is entitled to all the rights and freedoms set forth in this Declaration, without distinction of any kind, such as race, colour, sex, language, religion, political or other opinion, national or social origin, property, birth or other status. […]

– UDHR, Article 2.

The alt-right preaches the gospel that not all people are entitled to the rights and freedoms of the UDHR. Quite the opposite. These rights and freedoms are for a selected few.

Freedom of speech in its purest form can have grave consequences. Recent history have shown us what can happen if hate is allowed to spread and escalate. This cannot be allowed to happen again.

The Universal Declaration of Human Rights was proclaimed by the United Nations General Assembly on December 10, 1948. Only three years prior, the second world war ended. I can’t imagine that the UDHR and its articles can be interpreted in such a way that it allows free speech to feed the same ideologies that fueled World War II.

What is FLOSS?

The creation of Free/Libre Open Source Software (FLOSS) is based on the Four Essentials Freedoms of free software.

  • The freedom to run the program as you wish, for any purpose (freedom 0).
  • The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1).
  • The freedom to redistribute copies so you can help your neighbor (freedom 2).
  • The freedom to distribute copies of your modified versions to others (freedom 3).

Access to the source code, i.e. that the software is open source, is a precondition for freedoms 1 and 3.

Some people argue that, by explicitly blocking Mastodon instances like Gab in the client app code, the developer violates freedom 0. But is that really the case?

A Gab user is still allowed to run the client as they wish, for any purpose. It won’t allow them to log in to Gab’s Mastodon instance, but that’s not something that violates freedom 0. It’s just not possible to use Gab Mastodon with the client, in the same way as it’s not possible to log on to Twitter with it.

Through the other freedoms, Gab is allowed to fork the client source code, remove the code that explicitly blocks Gab, and then create and distribute their own version of the client. This new client is a Gab-specific app that they have to somehow manage to sneak into Google Play Store and the App Store. That has proven to be hard, but there is nothing preventing them from trying.

A Message to Mastodon Client Developers

By blocking Mastodon instances like Gab from using your app, you’re not taking away their freedom of speech, or violating the fundamental ideas behind FLOSS development.

They are still free to express themselves through other means, and everyone is still free to study, modify, and distribute their own version of your code.

But by blocking Gab and friends, you are no longer enabling them to spread hate using a tool you created and maintain. And by that you are protecting everyone that is subject to their hate.