From b8eb44f130292d92238144aeb1e571f94595b49c Mon Sep 17 00:00:00 2001 From: Frederick Yin Date: Wed, 30 Nov 2022 10:32:24 +0800 Subject: New post: xkcdbot --- docs/random/xkcdbot.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 docs/random/xkcdbot.md (limited to 'docs/random/xkcdbot.md') 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. -- cgit v1.2.3