xesite/blog/epilogue-2021-05-26.markdown

213 lines
8.8 KiB
Markdown
Raw Normal View History

---
name: Epilogue
date: 2021-05-26
tags:
- freenode
- irc
---
# Epilogue
The last caretaker's absence rippled throughout the halls. The darkness was all
that remained.
---
I used to run an IRC network named PonyChat. It was an IRC network aimed at
adult fans of My Little Pony: Friendship is Magic. Looking back, working on that
network was probably the biggest catalyst to my learning how to do system
administration to the level I am at today.
Lots of stuff goes wrong when you run an IRC network. PonyChat peaked at around
500 users on average, but that didn't stop things from being interesting. There
were several "groups" of people there, and a lot of roleplaying channels. As
things like Discord picked up more and more users, a lot of the roleplaying
channels were all that were left at the end. There were some people in the #geek
room that were near permanent fixtures. Talking with those people and
collaborating on various projects is how I learned the skills that I use daily
for remote work.
---
The darkness was confused. It didn't expect this to happen. The discussion halls
were so full of life before! There were so many people from as many backgrounds
talking about anything you could imagine!
But the people left. The darkness didn't totally see why this happened, but then
they walked the halls and saw some things around the empty rooms.
```
The official Arch Linux support channels have moved to libera.chat, good luck!
```
The previous moderators of the discussion forum had apparently left up signs
telling anyone who hadn't walked over with them to tell them where to go. The
darkness looked around and saw more and more of those signs.
_Without those signs, they won't know where to go! If we can remove all of those
signs then maybe the people will be active again!_
> This channel has moved to ##archlinux. The topic is in violation of freenode
> policy.
_Perfect_, the darkness thought to themselves. _They can't leave now, those
signs were telling them where to go!_
---
When things came to an end with PonyChat, I had a big choice to make. There's
two main ways for chat communities to die: fast and slow. The fast ways are
quicker, less painful for users and potentially harsh for people that didn't get
the memo in time. The slow way gets expensive and soul-draining.
I was the last caretaker left on PonyChat after the attrition rate affected the
staff as well as the users. I was the only person really active on the network
and a lot of it was held together with increasingly brittle lua scripts.
It was soul-crushing. PonyChat was close to my heart. Writing the bots that
ended up being the core of the anti-spam engine were some of my first coding
projects.
---
The darkness was disturbed from their laurels by one of their caretakers.
Apparently this angered the people who had left. The former community scribes
were furious. The last caretakers had never done such a thing. Notices to those
communities were always left intact. The mere _thought_ of doing such a thing
was _unthinkable_.
Yet it happened. The darkness realized that they messed up. Quickly, a change
was made. _It can't be against policy if there's a policy allowing it!
Historical precedent be damned, this is advertisement! They are promoting
another place instead of here! Here is perfectly good!_ They thought.
The darkness smiled its spiral smile and spread to take down more signs with a
golem purpose made to print off new signs.
> This channel has moved to ##botters. The topic is in violation of freenode
> policy.
The golem blindly continued manufacturing out new signs. The silent masses left
behind watched in horror as they were forced out of their former haunts.
---
There's something kind of magical about writing an IRC chatbot. It's one of the
few kinds of things you can create that you create in public. Even if the source
code isn't shared you still need to test it somewhere. You build it in public.
Anti-spam bots are a similar kind of thing. Unfortunately they form a kind of
arms race. It's much easier to make new spam than it is to come up with patterns
for existing spam. Writing one is soul-crushing. You have to quickly develop a
kind of reputation system or you will immediately turn it into a way to ban your
own users. A lot of the more clever trolls tricked users into typing the phrases
that got them banned.
Then there was the doxxing and swatting.
---
The darkness walked through the halls and smiled. All those signs were gone.
They peered into a room to see what was happening. They saw nothing. There
weren't even the silent masses that had normally huddled around the backs of
rooms. Some of those people had sat there for years doing nothing but listening.
Nobody really knew if they were actually paying attention or not, some may not
even be alive anymore, but they were haunting those rooms either way.
The signs pointed people elsewhere. Those who had stayed in the background
didn't get the memo. They were stuck there. Just sitting there and watching. Not
really doing anything, just watching and listening.
---
If you run an IRC network of any appreciable scale, be prepared for these
eventualities:
Your real name, email address, facebook account link, twitter account link,
phone number, parents names, mailing address, physical address and sometimes
even tax identification numbers will be leaked to the public. You **MUST** use
a password manager and two-factor auth everywhere. Register your domains under a
past or fake address. That will prevent people from getting your mailing address
as easily.
I've been doxxed so many times that I have given up trying to keep my things
separate. A lot of the places you see me using different names started out as my
attempts to use separate handles in different places. I have kept them the same
for consistency but I have largely given up trying to keep them separate. It is
a lot of work and I bet that even if I went back on the hyper private sthick (if
I even can at this point, I've been frontpaged on Orange Site and my blog gets
so much traffic that it's probably impossible in practice without abandoning my
handles and picking new ones).
Your staff will lose interest and abandon the project one day without telling
you. They may end up still being connected there, but just as an idle bouncer.
It's akin to a zombie laying in the background.
Call your local police non-emergency number and set up a standing order to call
you before they send in a SWAT team to your house. There are people that will
seriously call the cops and claim you're armed and dangerous to get a SWAT team
to ruin your life or potentially get you killed. This is not a joke. It's nearly
happened to me thrice. I got that call from the cops once. It is not a good
feeling.
You need to use something with a powerful and easy to use spambot or message
filtering built into the server itself. This will save your ass some day.
---
The former moderators of the rooms that were closed off came back with
pitchforks and torches. They were **pissed**. The rooms they had tended to for
years were suddenly stolen from them. Yes, they were abandoned, but the
precedent for doing such a thing had never really existed before. It was such a
tiny thing, but they had to go out of their way to make that golem. They had to
tell the golem what to do. They had to send out that golem.
Several groups were on the fence with regards of what to do, but that golem made
the choice for them. Some groups even wanted _to stay at the same meeting house_
but the golem came in and closed their hall without warning.
---
The day I killed PonyChat was a hard day for me. I had planned it 3 months ago.
Warnings were issued. I helped bigger communities move elsewhere. Everything was
spinning down.
Then the time came and I ran the script that only needed to be run once:
```
$ ./scripts/kill_ponychat.sh
```
A progress bar appeared and with it all of what was created over the last decade
was destroyed. Backups were erased. Data was wiped. Servers were destroyed. DNS
records were altered. And finally it printed this:
```
It's okay to cry.
```
And that was the end of it.
---
If the halls were empty before, they were desolate now. Everything was being
abandoned in real time. Announcements were made about how the golem was
premature and that people should really consider staying. It was no use. The
golem had made up their minds.
The rot started.
---
Author's Note: I really hope this is the last entry in this little speculative
fiction/postmortem/retrospective series. I have an article in the pipeline on
how I'm creating virtual machines from templates so that I can test how various
versions of various distros work, but this freenode bullshit has eaten up a lot
of my thinking time. It's been like watching a train wreck. You can't look at
it, but you can't look away either. It's so hard to watch yet you just can't
help but watch it.
It hurts.
This was not on my bingo card for 2021.