Anti-harrasment tools

There is an ongoing discussion on PeerTube's issue tracker about adding an option do disable the auto-approval of follows from other servers, as a preventive measure to avoid being harassed. At the moment of writing this, this is the most commented issue of the project, and the discussion feels like a battle.

On the feature itself

This would be an option to activate on your PeerTube instance, to ensure only approved instances can follow you and syndicate your content. This feature is already implemented elsewhere, for instance in Mastodon (at the user level), and not technically hard to implement. There is a de-facto way to do that on the federation/ActivityPub side. The most complex part is probably to provide a user interface around that, but even that is technically feasible and there is nothing inherently hard about it.

The rationale is that harassers have an easier time harassing you if they can easily access your content, videos, etc. If we can make it harder for them to access your content, it will need more effort on their side to cause you trouble. The feature request in PeerTube is a bit different from what is implemented in Mastodon, because it's asking for a control at the instance level, with a validation from instance admins. So it's targeting instances instead of users, but the logic is the same.

On the arguments against this feature

Most if not all the arguments developed against this feature are political ones, not technical ones, and falls in one of this category:

  1. This is against free speech
  2. This is not effective to fight harassment

If you think that controlling your audience is against free speech, please understand there is a huge difference between having something publicly available, and having something publicly broadcasted.

This is a perfectly valid use case to have a blog were publications are accessible to anyone but not wanting to have it broadcasted to on every other blog or newspaper. Because you are writing for your audience (which may grow organically), but not for everyone. The same goes for a video channel. Also, having this feature implemented means more people will join the network, as they will feel more secure to do so. Everyone benefits from a bigger network with more content.

Now, about the efficacy of this feature. Sure, some people will still be able to bypass that (using RSS feeds or embeds, browsing your instance directly, etc.), but the important bit is it won't be as easy for them. Thus, there is a higher chance they will simply leave you alone and go on with their lives.

It's not the ultimate solution to harassment. But it's definitely a good one to reduce the harassment coming from low-motivation harassers: dropping a hateful comment because they see your content popping in their timelines, sharing it with other harassers, etc.

It's a first step and should be considered as is. I really hope PeerTube contributors can take this in consideration when deciding whether they should implement it.

On the stance of Funkwhale about anti-harassment tools

As Funkwhale's maintainer, I feel like I have to take a stance in this discussion, because we will have the same ones for Funkwhale. Here is my stance on the subject:

  • Having anti-harrasment features, even if incomplete and/or not 100% effective is better than having nothing
  • I'll happily consider any suggestion to improve the existing anti-harassment features or integrate new ones

Apart from manual approval of follows (which is already implemented), there is an open issue to support block/mute at the actor and instance level. This will be included in the first release that support direct interaction between actors, as I expect harassment to become a real problem at that point.

On the long-term, I'd also like to experiment with new tools, such as block/mute lists. But we'll need regular block/mute before that anyway!

There are probably plenty of other options to try as well, so if you want to help shape the moderation and anti-harassment tools for Funkwhale, feel free to say hi!

By @Funkwhale in Announcement