Bonnie Eisenman bio photo

Bonnie Eisenman

Software engineer, author, knitter, Esperantist. Member of NYC Resistor and author of Learning React Native.

🐦 Twitter 🤖 Github 🔶 RSS Feed

My Twitter feed includes real humans, and also some bots. Some of my favorites are @hamilbots, @yayfrens, @softlandscapes, and @generativebot.

I’ve worked at Twitter for about a year and I hadn’t written a bot before! So I gave it a try, and wrote @BingoBits and @DailyOblo.

Cheap Bots Done Quick

Cheap Bots Done Quick is a really neat site that makes it almost trivial to write your first Twitter bot.

Bots are written in Tracery, a generative grammar specified as a JSON string. Here’s an example bot:

    "origin": ["this could be a tweet", "this is #alternatives# tweet"],
    "alternatives": ["an example", "a different"]

See? Pretty simple! No worries about hosting, logic, etc…


SET-inspired bot that tweets a game board once a day.

(oblo means “group of things” in Esperanto, aka a SET.)

I generated the SVGs, as well as the Tracery formatting, with some super-hacky Python code. Source is at


Scrabble bot that tweets part of a 7- or 8- letter bingo once a day. (i.e. it’ll tweet 6 letters of a 7 letter word, or 7 letters of an 8 letter word.) Word lists from the Seattle Scrabble Club.

This required basically no programming, just a bit of awk to extract the words from the files above. Source is at

My favorite part of this one is that I’m actually engaging with it! I’ve been trying to memorize more bingos lately - and get better at spotting potential ones - so having them randomly scattered through my Twitter feed is pretty great.

TLDR; CheapBotsDoneQuick is cool

Cheap Bots Done Quick makes it super-easy to write a Twitter bot! If you haven’t tried it yet, you should!

Next I should figure out how to actually host my own. ;)