& adapted from the original public domain robot on Heavily modifiedadapted from the original public domain robot on openclipart, posted by johnny_automatic

reddit, the insanely popular internet community, had 71,435,935 unique visitors last month, with over 2,360,783 people logged in .

I say people - but it turns out that not all of the denizens of reddit are human. There are also bots. Lots and lots of bots. How many? No-one really knows.

This is an interesting and somewhat shadowy facet of the otherwise very public reddit community, so I thought I’d take a closer look…

What is a reddit bot? A reddit bot is no different from any other user, as far as reddit is concerned. The only difference is that rather than a human logging in to upvote cat pictures and post comments, this account is used by an automated computer script. reddit has a captcha system to help prevent automated signups - so the bot’s human creator will need to create a new user account for the bot to use, then program the username and password into the bot, so it can use that account - just like a human would. In the same way that computers can run scripts to automatically check weather data and send you an email if you should take an umbrella with you today, a computer can run scripts to automatically check reddit for certain activity - and post comments if certain conditions are met. A reddit bot does this by doing what your web browser does behind the scenes when you use websites - it makes requests and sends things to the reddit servers. reddit also has an API which makes it easier for automated external services (including bots) to talk to reddit. This allows bots & scrapers to do things in bulk, like “Show me all the new posts in the last hour” — they can then go away, analyse this information and then take actions based on it.

It’s a Hard Bot Life A major problem for any internet activity at scale is ‘spam’, or similar unwanted activity, in some form or other. reddit has scale coming out of it’s ears, so needs aggressive, pervasive and rapid automated spam control algorithms - combined with extensive human flagging and moderation - just to survive. These mechanisms come down on bots particularly hard, to prevent the place being overrun by an army of implacable text hurling machines, typing & posting at the speed of light. This is a really nice /r/InternetAmA thread discussing the retirement of TicTacToeBot, which did exactly what you’d expect: Some quotes from TicTacToeBots developer: Q: Your account has only existed for 6 days. How have you already been banned from the subreddits? A: No clue. Every day I am banned from subreddits. I woke up today, looked at the mail. Banned from circlejerk, cats, and skyrim… Those aren’t even default subs. I had to sub to new channels to be any active as a bot. Q: You actually got banned from circlejerk ? For derailing threads?!? A: Yes TicTacToeBot got shot down for derailing threads - i.e. for being disruptive. It was intentionally designed to randomly pop up and challenge people to a game - whimsical and fun, but also an uninvited disruption - albeit a harmless good natured one. So unless they’re careful, disruptive bots tend to have a fairly short life on reddit, quickly being hunted down and blocked by reddit’s immune system — even whimsical and seemingly harmless bots, like TicTacToeBot. More circumspect bots, like JiffyBot, CHART_BOT or Serendipity - either completely or largely confine themselves to their own subreddits, only turning up elsewhere when invited. This generally means that they’ll be left alone to do their thing, because they’re not interfering with anyone else. They’re also completely upfront about what they do and provide a useful service to the reddit community. Workin’ on a Bot Farm Bots also take resources to run - both to initially create & then to maintain the code - but mainly to provide a computer to run them on . Bots need a computer to host their code and to lavish CPU cycles running them - reddit doesn’t do this, it’s up to the bots creator to host them somewhere. This generally isn’t free and can eat up quite a lot of computer resources, depending on what the bot does. Bots can get shut down by their creators for lack of resources - time or money - or lack of interest. Pretty much all reddit bots are just created for fun, for learning, or both - sometimes the creator just wants to move on to another project. Bad Bots, Sad Bots Some bots are designed to try to behave statistically more like human users , or to deliberately try to slip under the radar. Some bots are designed to boost the reddit karma of their masters by pretending to be regular users and up-voting their masters posts and down-voting those who disagree with them. Some bots are designed to start flame wars and generally be mean, virtually. This is pretty sad and pathetic… so I’m going to ignore them. So, without further ado, here’s the compendium, split into Bots that you can Summon with an Incantation and Bots that just Show Up, without human intervention.

Bots that you can Summon with an Incantation These bots listen out for their summoning incantation to be posted somewhere on reddit, then turn up and do their thing in response: JiffyBot Purpose: Makes animated GIFs out of YouTube links Creators: /u/DrKabob

/u/GoogaNautGod <http://www.reddit.com/user/GoogaNautGod> Home Base: /u/JiffyBot

/r/JiffyBot

JiffyBot Documentation

JiffyBot in Action

JiffyBot FAQ

JiffyBot Source Code - NB this is an orphaned fork of the original GitHub code repository; I’m currently trying to find out what happened to the original. Current Karma: 1 link karma

30,173 comment karma A Redditor for: 16 days Active Subreddits: Subreddit Submissions (karma) Comments (karma) /r/JiffyBot 0 333 (391) /r/cringe 0 92 (614) /r/tf2 0 45 (315) /r/gaming 0 40 (418) /r/youtubehaiku 0 36 (173) /r/leagueoflegends 0 27 (73) /r/funny 0 27 (434) /r/YouShouldKnow 0 27 (28) /r/SeeThisShit 0 22 (22) /r/DotA2 0 17 (35) /r/starcraft 0 15 (96) /r/hockey 0 12 (7) /r/atheism 0 10 (221) Plus 111 more… Summon by posting a link to a YouTube video, then writing Jiffy! followed by a start time and end time, in either of these forms: Jiffy ! 0 : 07 - 0 : 12 / u / JiffyBot 0 : 00 - 0 : 15 The second form is apparently more reliable. The bot will respond by replying to your comment, with a comment of it’s own, containing an imgur.com link to an animated GIF of that video, for the time period you specified. This is great for people on mobile devices - animated GIFs load much quicker than YouTube. BitcoinTip Purpose: The bitcointip bot allows redditors to tip each other ‘real’ money, just by leaving a reddit comment or message. Human Creator: /u/NerdfighterSean Home Base: /u/bitcointip

/r/bitcointip

BitcoinTip Documentation

BitcoinTip Quickstart Guide

Source Code - rather out of date. Current Karma: 9 link karma

11,906 comment karma A Redditor for: 1 year Source Code: https://github.com/NerdfighterSean/bitcointip Active Subreddits: Subreddit Submissions (karma) Comments (karma) /r/Bitcoin 0 368 (813) /r/GirlsGoneBitcoin 0 51 (59) /r/worldnews 0 36 (133) /r/IAmA 0 30 (81) /r/AskReddit 0 30 (88) /r/bitcointip 0 29 (49) /r/pics 0 20 (136) /r/technology 0 13 (134) /r/AdviceAnimals 0 12 (23) /r/investing 0 11 (43) /r/gaming 0 11 (241) /r/tf2 0 10 (145) /r/starcraft 0 10 (205) Plus 155 more… The bot scans user comments and messages for tips of the form: +/ u / bitcointip @RedditUsername $ 1 +/ u / bitcointip @Username $ 1 usd +/ u / bitcointip BitcoinAddress 1 millibit +/ u / bitcointip Username ฿ 0.001 verify +/ u / bitcointip $ 1 # This tips 1 usd to whoever posted the comments parent +/ u / bitcointip BitcoinAddress ALL # This sends your entire balance to that bitcoin address +/ u / bitcointip 2 internets # An "internet" is worth $0.25 You have to setup a bitcointip tip account in advance and put some funds into it. It then sends the specified amount of bitcoins from the sender’s bitcointip account, to the receiver’s bitcointip account. Supports lots of different currencies, which get converted to bitcoin automatically. Allows you to tip people for useful or awesome comments, in a very natural and low friction way: CHART_BOT Purpose: Automatically generates and posts a chart of your posting history - or someone else’s. Home Base: /u/CHART_BOT

/r/CHART_BOT Active SubReddits: Overwhelmingly active in it’s own subreddit, but has been known to pop-up elsewhere, for the lulz: Subreddit Submissions (karma) Comments (karma) /r/CHART_BOT 1 (2) 931 (1063) /r/ WTF 0 19 (13) /r/wheredidthesodago 0 14 (-14) /r/science 0 13 (13) /r/TheLastAirbender 0 12 (20) Plus 11 more… Current Karma: 3 link karma

5,686 comment karma A Redditor for: 8 months Making a submission to this subreddit will cause CHART_BOT to automatically generate and post a chart of your reddit posting history. You can also request charts of other reddit users by putting their username prefixed with an @ in the title of your submission. The charts look like this - here’s mine: CHART_BOT also produces some graphs of activity which are quite interesting. Here are the ‘Posts Over Time’ ones for me (on the left) and chartbot (on the right). You can clearly see the characteristic posting pattern of humans (irregular) vs. bots (regular): Bot scripts are often run on a regular schedule - e.g. once an hour, every 10 minutes, etc… - which explains the regular patterns of activity.

Ex-Bots? Some interesting bots who seem to be ex-bots — or maybe they’re just resting: Meta_Bot

canhekickit

QualityEnforcer

PoliticalBot & AnalyzingReddit

AnalyzingReddit Match-Thread-Bot

LinkFixerBot

tweet_poster

Karmangler

autotldr

CONGRATS_GUY

qkme_transcriber Know of any more interesting & fun reddit bots? Let me know in the comments…

Related Posts How I upgraded this website to Pelican 3.3 A few of the changes in Pelican 3.3 might mean making some changes to your site in order to upgrade. Here's how I upgraded my site from Pelican 3.2 to 3.3. How I compress PNG files on this website Using a careful combination of compression techniques, I can get up to 3x compression over regular PNG files, for my use case. Here's how... How I upgraded this website to Pelican 3.6 This site has been generated using Pelican 3.3 for over two years. I finally found some time to upgrade to the current version of Pelican, 3.6.3. This is how I did the upgrade. I finally figured out my mysterious 418/Unused HTTP Status Code I've had a mysterious broken page on this site for a while - but been too busy to look into it. I finally made the time to figure it out.