The Greatest Twitter Scheme of All Time?

In which I investigate a very cool thing that someone claims to have done on Twitter. Using R and the rtweet package.


Garrick Aden-Buie


August 24, 2018

I found this tweet today and I was intrigued.

What exactly had this person pulled off? What was this all-caps GREATEST TWITTER SCHEME OF ALL TIME?

I wanted to know. But I didn’t want to scroll through endless tweets. Jump ahead to the answer if you’re in a hurry yourself.

To figure out what exactly was going on on Twitter, I turned to my favorite Twitter-related package: rtweet. Getting all of @CostcoRiceBag’s recent tweets was suprisingly simple — all it takes is a single call to get_timeline():


crb_tweets <- get_timeline("costcoricebag", n = 3200)

From here, I simply filtered out replies and straight-up retweets (but not quote tweets), and then extracted the first word in the tweet text using a little regex. Upon arranging the tweets in reverse chronological order, the pattern in the first_word column is immediately apparent.

first_words <- crb_tweets %>%
    created_at <= lubridate::ymd_hms("2018-08-23 18:43:27"),
    created_at >= lubridate::ymd_h("2018-05-07 15"),
    !grepl("^@", text)
  ) %>%
    first_word = sub("^\\W*([\\w'’]+)[\\S\\s]+", "\\1", text, perl = TRUE)
  ) %>%

first_words %>%
  select(created_at, text, first_word)
# A tibble: 376 × 3
   created_at          text                                              first…¹
   <dttm>              <chr>                                             <chr>  
 1 2018-08-23 18:43:27 "IS IT JUST ME, OR DID I JUST PULL OFF THE GREAT… IS     
 2 2018-08-23 18:42:49 "This is the moment I’ve been waiting for for fo… This   
 3 2018-08-23 17:53:19 "The best state fair food is corn on the cob don… The    
 4 2018-08-23 17:46:29 "Real talk: idk what I’m going to do when my fri… Real   
 5 2018-08-23 04:35:54 "Life was so much easier when my school supply l… Life   
 6 2018-08-23 01:43:50 "IS THERE A MORE ACCURATE REPRESENTATION OF ME??… IS     
 7 2018-08-23 00:36:12 "This is the 9th time I’ve heard Africa today an… This   
 8 2018-08-22 17:22:21 "Just told an 11 year old boy what’s up bc he tr… Just   
 9 2018-08-22 13:56:58 "Fantasy football:"                               Fantasy
10 2018-08-22 13:53:41 "Caught me"               Caught 
# … with 366 more rows, and abbreviated variable name ¹​first_word

Queen of the First Word Tweets

The final result is amazing and definitely pretty much the greatest Twitter scheme ever. Hover over each word to see the text of the full tweet, or click on the word to go to the tweet.

IS This The Real Life IS This Just Fantasy Caught In A Landslide No Escape From Reality Open Your Eyes Look Up To The Skies And See I’m Just A Poor Boy I Need No Sympathy Because I’m EASY Come Easy Go Little High Little Low Any Way The Wind blows doesn’t Really Matter To Me To Me Mama Just Killed A Man Put A Gun Against His Head Pulled My Trigger Now He’s Dead Mama Life Had Just Begun But Now I’ve Gone And Thrown It All Away Mama Ooh Didn’t Mean To make You Cry If I’m Not Back AGAIN This Time Tomorrow Carry On Carry On As If Nothing Really Matters Too Late My Time Has Come sends shivers Down My Spine Body’s Aching All The Time Goodbye EVERYBODY I’ve Got To GO Gotta Leave You All Behind And Face The Truth Mama Ooh Any Way The wind Blows I Don’t WANNA Die I Sometimes Wish I’d Never Been Born At All I See A Little Shiloetto Of A Man scaramouche Scaramouche Will You Do The Fandango Thunderbolt And Lightning Very Very Frightening Me Galileo Galileo Galileo Galileo Galileo Figaro Magnifico I’m JUST A Poor Boy Nobody loves Me He’s Just A Poor Boy From A Poor Family Spare Him His Life From This Monstrosity Easy Come Easy Go Will You Let Me Go BISMILLAH No We Will Not Let You Go Let Him Go Bismillah We Will Not Let You GO Let Him Go Bismillah We Will Not Let You GO Let Me Go Will Not Let You Go Let Me Go NEVER Let You Go Never Never Never Never Let Me Go Oh O Oh Oh NO No No No No No No Oh MAMA Mia Mama M Mama Mia Let Me Go Beezlebub Has A Devil Put Aside For Me For Me For Me So You Think You Can Stone Me And Spit In My Eye So You Think You Can Love Me And Leave Me To Die Oh Baby Can’t Do This To Me Baby JUST Gotta Get Out Just Gotta Get Right Outta Here oOooOoOo Oooh Yeah Ooh Yeah Nothing Really Matters Anyone Can See Nothing Really Matters Nothing Really Matters To Me Any Way The Wind Blows

In total, writing out the lyrics to Bohemian Rhapsody in reverse order took 376 tweets over 108 days.

When did @CostcoRiceBag do most of their Queen-related tweeting? To get an idea of how often they tweeted, I created a calendar heatmap (or GitHub-style square tile plot) of their daily tweeting activities.

What’s really impressive is that, except for a few Bismillah and Scaramouche tweets, most of the tweets are really just normal everyday tweeting. I’d love to get into a textual analysis, but it’s late so I’ll leave you with this:

Rock on! 🤘