summaryrefslogtreecommitdiff
path: root/docs/random/xkcdbot.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/random/xkcdbot.md')
-rw-r--r--docs/random/xkcdbot.md68
1 files changed, 68 insertions, 0 deletions
diff --git a/docs/random/xkcdbot.md b/docs/random/xkcdbot.md
new file mode 100644
index 0000000..47ea2c0
--- /dev/null
+++ b/docs/random/xkcdbot.md
@@ -0,0 +1,68 @@
+# xkcdbot
+
+![A Mastodon post with comic number, title, title text, xkcd.com URL and
+explainxkcd URL; a reply below reads "Heads-up for my subscribers:" then
+a bunch of users](img/xkcdbot/post.png)
+
+## Birth
+
+Back in 2019, I signed up for a Mastodon account on mastodon.technology.
+Soon I began looking around for xkcd bots. There were several, but most of
+them were defunct. I would soon make up my mind to create my own.
+
+I have little memory, but per the
+[git log](https://github.com/fakefred/xkcdbot/commits/master) I finished
+it in 9 days. It ran on Node.js, which unfortunately was my favorite tech
+stack back then.
+
+I registered [@xkcdbot@botsin.space](https://botsin.space/@xkcdbot), then
+daemonized the bot on the same server I hosted my comics (which, for which
+I apologize, was also on a Node.js server). I wrote this bio:
+
+>I'm an xkcd bot who shows up at Randall's house at 3.3 millihertz and
+>asks "Hello, did you publish a new comic?" I occasionally dress like
+>a velociraptor just to freak him out.
+
+>If he admits he has drawn a new comic, I seize it and post it right here
+>before Randall shoots me down with a drone.
+
+## Rise
+
+The bot account was created on 2019-08-19.
+
+On 2022-10-28, xkcdbot gained 1k followers. It took 1166 days.
+
+On 2022-11-23, the number grew to 2k. It only took 26 more days.
+
+Of course, the surge owes to Elon Musk for pissing off so many people off
+Twitter, but I'm sure there are two more reasons as well:
+
+### Killer features
+
+- 5 minute polling interval
+- explainxkcd link
+- DM for "subscribers"
+- Comic thumbnail is focused on top left, so no spoilers
+
+![Only the left-hand side of the comic is shown in the preview](img/xkcdbot/thumbnail.png)
+
+### Administration
+
+The bot lives by a few simple rules. It:
+
+- does its damn job
+- has near-perfect uptime
+- never solicits followers
+- never interacts with people unless asked to
+- has no new features for three years
+
+## Accidents
+
+My code broke in production exactly once. There were other accidents, but
+they were all due to botsin.space downtime or Randall uploading the wrong
+comic.
+
+## Conclusion
+
+I believe this resolves all remaining questions on this topic. No further
+research is needed.