IRC Policies and guidelines

During todays support and docs chat on IRC we introduced a few new faces on the access lists of the WordPress channels there to help moderate and control the behavior of the users, much like you would on the forums.

As IRC does not work with a bozo list like the forums do, we have a few alternatives available for use in such situations as outlined below. This means we can not mark users for moderation, nor preview what they are trying to say before it is said, it’s all live, and it’s all public.

We want to maintain as much transparency as we can, this is a public medium and we keep public logs of most actions (at the moment the logging devices can not log kick/ban messages), but at the same time protecting the one performing the action from any negative retaliations which may or may not occur after action is taken.

We have three (four) ways of dealing with users who are having a bad day beyond just speaking to them and informing them that their behavior is unacceptable/a bit too much and asking them to calm down or get some fresh air;

  • They can be muted
  • They can be kicked
  • They can be banned

Muting (or “Quieting”) a user (/mode #channel +q Nickname) requires you already have the Operator status, or can be done through network services (/msg ChanServ quite #channel Nickname) but keeps the user in the channel, he is merely silenced and can not speak in public, this is also what hlin does automatically if someone spams.

A kick can be done either by being an Operator (/kick #channel Nickname ) or anonymously through the services of the network (/msg ChanServ kick #channel Nickname ). A kicked user is removed from the room temporarily, but may return at any point.

A ban, like a kick, can be done as an Operator (/mode #channel +b Nickname) or through network services (/msg ChanServ ban #channel Nickname ). Worth noting is that using services will also kick the user, if not you will have to manually kick the user after banning them. A ban will not by default expire unless you physically remove it.

Now that we are familiar with the ways one can deal with a user, a general guideline for when to use the various actions will most definitely be needed. This will be handy both for the users of the channel to know when a moderator should step in so they can be pinged, but also so the moderators know what action should be taken when to ensure a fair ruling.

Feedback will most definitely be required here to iron these out, but I’ve taken the liberty to provide the following suggestions to get the ball rolling;

  • Racism is most definitely something we keep an eye out for, users may not be aware that it’s a slur or anything like that (A large chunk of our users have English as a 2nd or even 3rd language),so a friendly pointer by any user should be enough, if they keep using such terms, let a moderator deal with them, if they do not heed a moderators warning a quick ban is swift justice.
  • Strong language is handled by hlin, if someone tries to repeatedly use profanity by avoiding hlins filterFilter Filters are one of the two types of Hooks They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. a moderator can silence them as hlin would.
  • Sexist talk or anything non-PG13, this could be straight up dirty talk or excessive innuendos, tell them to stop, if they don’t listen let a moderator tell them so, next step would be a mute, repeat offences escalate the action taken (most people will stop after a kick).

There are many other situations of course, but these are the ones you’ll most likely meet, not only in spoken words, but also as nicknames or messages sent to the channel when leaving it (a part message).

There was also mention of a way to log (beyond IRC logs) offenders to keep tabs on what is going on as everyone might not be on at the same time etc. Thoughts on how this could be achieved in a fair manner are appreciated as we don’t want to make any public shame list at all, we only want to make IRC a welcoming place for anyone to drop by and learn a thing or two during their stay. Possibly a list restricted to moderators on g-docs or similar is an idea?

Another thing that might come up is how to deal with disputes if a user is banned and feels it was unjust. Is there a place we’d prefer them to take their appeal, and if so, where and how?

That means we need to decide on the level of transparency we wish to have, do we wish to have full transparency with users issuing the actions, or anonymize it through network services.

@sams suggested that for transparency when issuing a kick/ban we should state why in the channel after the ban since the logger does not pick up kicks/bans and only shows peoples reactions to them, would this be an acceptable approach and how would we deal with that if services are used to act?

Oh and before I forget, the fourth reasoning mentioned is only if a user should retaliate, this is much like a DDoSDistributed Denial of Service A type of online attack where a large number of infected computers are used to overwhelm a target computer, to the point where it no longer has the resources to perform its normal job. Read more. on a website, and extremely rare to occur, and even rarer to have any impact as most networks have security to prevent or mitigate such things. Should a disgruntled user retaliate with proxy bots or any other kind of bots that cause spam and disruptions, and it’s to such an extent that a moderator can not deal with it, drop by the kind people in the FreeNode support channel and mention that there’s a botnet and they’ll take care of it. Not that vital as it’s extremely unlikely to ever occur, but good to know just in case.

A closing thought, as it was mentioned that not everyone may be too familiar with the workings of IRC or remember commands and such, I did mention a few of the commands with quick defaults in the post, but is this something that you would prefer a more extensive outlining of made available in some form or other?

All right ladies and gentlemen, the floor is open 🙂