More github block and banning stories

While scouting Twitter for drama, I stumbled on https://discourse.nixos.org/t/github-block-evasion-is-not-acceptable/12763

I didn’t read the whole topic yet, but I think the issue of block on Github and in more general terms, moderation in a distributed system is kinda important to keep in mind (especially since moderation and spam prevention are IMHO the same kind of issues, and everybody seems to think spam prevention matter a lot). I never used the block function, and I think I got insulted only once on Github, so I am not exactly qualified to tell if the system work well or not.

There is discussion to have here around that, and what it would mean for a federated system. For example, if there was a bridge system using some kind of “bot account” to sync between system, how would it work if the bot account is blocked ?

Or if there is someone blocked on one side, but not the others, should it be propagated ?

And while searching for this NixOS story, I also stumbled on https://medium.com/@catamphetamine/how-github-blocked-me-and-all-my-libraries-c32c61f061d3 .

The user was banned for using a homophobic insult (russian for faggot), and reported. While I think that’s a clear CoC violation, I also think that a site wide ban as a 1st reaction is a bit too much (assuming this was indeed the only report). And since github reinstated the account, I guess they also maybe think it was too much.

I guess “use fedeproxy so you can continue to work after insulting others” is a idea that should be pushed, but it would also be used for that, and I think it is important to keep that in mind if communicating around the project (for example, a FAQ).

1 Like

Same here. Actually, I don’t know anyone running self-hosted services where spam is out of control. I run a dozen of self-hosted services and they are all subject to various abuse, from brute force attacks to clever spam (GItLab bot accounts, Discourse advertisement posts, Wordpress comments, Mediawiki articles, etc.). The audience of these services is low and the spam rate is also low. Over the years I learned how to handle it and the key (for me :wink: ) was essentially to block registration and participation on services that are deserted. When someone is around, spam is noticed and dealt with.

In other words, I don’t have any theory on fighting spam, only my own experience that tells me running a dozen self-hosted services with a modest audience does not expose the administrator to significant spam inconvenience.

A key to answer this concern is probably to setup the bridge/proxy/bot so that it always acts on behalf of another forge account. A forge could either allow anonymous writes (i.e. anonymous bug report by running a oneliner curl) or writes from another forge in the federation, from a user with an account on that forge. I think (but User Research will confirm that) that Free Software developers have a desire to interact with forges other than the one they use. But I’m yet to hear of a Free Software developer who is not using any forge and who would need to send anonymous messages.

I assume you meant should be rejected and not should be promoted, right ?

Agreed. Federation allows you to move easily from one forge to another. Which is handy when you’re excluded from a forge because your behavior goes against the TOS or the CoC. It helps people I like for reasons I find honorable. But it also helps people who behave in ways I dislike. Pretty much like Free Software, really: there is no way to make it so bad people are not allowed to use Free Software. The best we can do with federation is emphasize that it connects spaces where rules exist (TOS and/or CoC).

I meant “shouldn’t be promoted”. I see “use fedeproxy to work after insulting someone” not being that far from “use fedeproxy to work after exercising your free speech™ right”, a position that would resonate with part of the free software community and a position which in itself is not far away from “use fedeproxy to work after your country is blocked by the US governement”.

That’s the same technical response, so the project can’t reject the 1st while aiming for the 3rd, but I think that expressing the conflict here at play is important.

(also, I just wanted to say “oops yes”, but discourse didn’t let me post a too short answer, so here you go :stuck_out_tongue: )

1 Like