In all the news about the bane of bots on Twitter and social media it’s easy to forget the bots that make us smile and add a bit of random beauty to our lives. One of my all time favorites is MagicRealismBot created by the brother & sister team, Chris and Ali Rodley. If you haven’t seen it before go take a look. It’s a remarkable bot, because of the palette of concepts it draws from, and the seamless ways that they are combined. You can read a little bit about how the bot works over at Abandon Normal Devices and at Asymptote.

Every time I notice a new MagicRealismBot tweet in my timeline I wonder about the backlog of tweets, and briefly wander through them. As of today there have been 14,401 tweets since September 2015. If I did the math right that’s an average of 15.8 tweets per day. Today the bot has 90,280 followers, and many people routinely retweet and like the short compositions. I thought it could be fun to collect the tweets and list out the top 100 in terms of how many likes they received.

Likes are less performative than retweets. Nobody really sees your like like they will your retweet. They are quieter, and trace an immediate reaction or emotional response to the tweet, that exists apart from the urge to share it with your followers. So I wanted to see a list the top 100 tweets in order of their likes, to create a map for this poetic terrain. Maybe I’m just deluding myself, and this is just a list generated by a bot army that somebody paid for to like @MagicRealismBot tweets. But somehow I doubt that. For more about the process I used, and the data set see below.

Aside: The tweets themselves are loaded dynamically from Twitter. So the number of likes will change as people interact with them. However, the specific ordering is just a snapshot in time, and isn’t being dynamically updated as the likes change.

Great right?


To gather the data I used Justin Littman’s twitter-scraper which automates a browser to retrieve the timeline of 13,864 tweets and writes out the tweet identifiers for each tweet.

% python twitter_scraper.py --since 2015–07–11 MagicRealismBot > ids.txt

Then I used the Documenting the Now’s twarc utility to turn the ids into CSV using Twitter’s API:

% twarc hydrate ids.txt --format csv --output tweets.csv

Then I sorted the CSV with csvkit:

csvsort --columns favorite_count --reverse tweets.csv > tweets-sorted.csv

I imagine there’s an easier way to do this — so if you know of one please let me know … and let’s keep on following the magic ✨