Tweet Mashup The rise and fall of a

  • Slides: 25
Download presentation
Tweet Mashup The rise and fall of a meme Jonathan Adler @skyetetra

Tweet Mashup The rise and fall of a meme Jonathan Adler @skyetetra

 Director of Insights and Analytics at Lenati BS & MS in Math from

Director of Insights and Analytics at Lenati BS & MS in Math from Worcester Polytechnic Institute Ph. D in Industrial Engineering from Arizona State University Who am I? Data scientist but “not a real programmer” Write code all day for my job Never formally learned software development Love functional programming, specifically F# Like quick weekend programming projects (twitter bots) Won season 3 of the reality TV show King of the Nerds

@KNUK_TATS Twitter Bots (51 followers) @Machine. Heather (39 followers) @ADomain 4 U (6 followers)

@KNUK_TATS Twitter Bots (51 followers) @Machine. Heather (39 followers) @ADomain 4 U (6 followers)

Inspiration “A website would be a much better idea for this than a twitter

Inspiration “A website would be a much better idea for this than a twitter bot” –(Not machine) Heather

What is Tweet Mashup? • A website that lets you combine two twitter accounts

What is Tweet Mashup? • A website that lets you combine two twitter accounts tweets together • Use premade combinations or make your own • Surprisingly addictive

Tweet Mashup

Tweet Mashup

Tweet Mashup

Tweet Mashup

Tweet Mashup

Tweet Mashup

Tweet Mashup

Tweet Mashup

 Coded entirely in F# Launched on November 20 th, 2017 Went viral, got

Coded entirely in F# Launched on November 20 th, 2017 Went viral, got popular (1 m sessions), crashed a lot, then stopped being used Tweet Mashup

Tweet Mashup

Tweet Mashup

1. Five lessons learned The algorithm isn’t important 2. The design is important 3.

1. Five lessons learned The algorithm isn’t important 2. The design is important 3. Be ready to scale 4. Hacks are fine 5. Memes fall hard

Republican health care plan has a big tax break for insurance execs' pay ��

Republican health care plan has a big tax break for insurance execs' pay �� Tell Me How This Helps Sick, Poor, Old ns 1. The algorithm isn’t important Elmo is so excited! Elmo loves the Everyday Heroes Club! Elmo gave Abby a BIG HUG and earned his Giving Badge! Elmo loves hugs! Republican health care plan has a BIG HUG and earned his Giving Badge! Elmo loves hugs!

 For each user Pull as many tweets as you can Split tweets into

For each user Pull as many tweets as you can Split tweets into individual words (exclude first and last words) Create a dictionary where keys are words and values are arrays of tweets containing the word (and where in the tweet the word is) 1. The algorithm isn’t important Find the words that both users have tweeted, randomly select one Remove any words that couldn’t make a valid tweet [combined tweet would be too long] Randomly select a tweet from first user that contains the word Randomly select a tweet from second user containing word (filter to ensure <=140 characters) String concatenate Cache a users tweets so you don’t have to pull from the API often

 Objectively this is a pretty bad algorithm Not theoretically interesting, often generates garbage

Objectively this is a pretty bad algorithm Not theoretically interesting, often generates garbage However, ratio of garbage to gold is �� 1. The algorithm isn’t important

Prototype Tweet Mashup 2. The design is important Tech prototype had no design Enlisted

Prototype Tweet Mashup 2. The design is important Tech prototype had no design Enlisted my colleague @jesseddy to help with design 1 weekend to get mashing working, 3 months to get design sharp Without the design, it wasn’t actually fun

2. The design is important Preset combos to show idea Images of accounts give

2. The design is important Preset combos to show idea Images of accounts give personality Easy to share tweet button

 Launched on a Sunday night (November 20 th, 2016), shared with my friends

Launched on a Sunday night (November 20 th, 2016), shared with my friends and spend $10 on Twitter ads Put on an Amazon EC 2 instance My friends -> Supernatural Fandom -> Anime Fandom -> 4 chan -> Alt-right 3. Be ready to scale Went to work on Monday and site was exploding in popularity Was very hard to work Site was crashing repeatedly on first few days

Unrealistic assumptions: I could use the app credentials and pull 900 twitter user profiles

Unrealistic assumptions: I could use the app credentials and pull 900 twitter user profiles / 15 minutes Needed to quickly figure out how to add authentication Memory wouldn’t be an issue 3. Be ready to scale Needed to purchase progressively larger ec 2 instances Money wouldn’t be an issue Wanted to figure out some way to monetize Only would be used by people in the US Traffic coming from Turkey, Brazil, Spain Fixing this issues while people were using the site was emotionally burdensome

 “By early February, the weight of everything – the scrutiny, the relentless criticism

“By early February, the weight of everything – the scrutiny, the relentless criticism and accusations – felt crushing. [Dong Nguyen] couldn't sleep, couldn't focus, didn't want to go outdoors. ” This happened (to a smaller extent) to me By the end of the first week I regretted launching it 3. Be ready to scale

 “database” was storing json files on the server hard drive To avoid caching

“database” was storing json files on the server hard drive To avoid caching issues, didn’t allow mashups with private Twitter accounts To fix issue with the server crashing, set a script to restart it once an hour 4. Hacks are fine No analytics or record keeping whatsoever beyond Google analytics Tweet Mashup now running in my house on an old desktop over Wi-Fi

Original design 4. Hacks are fine Updated design

Original design 4. Hacks are fine Updated design

Sessions per hour Launched Sunday, peaked Wednesday, declined forever after 5. Memes fall hard

Sessions per hour Launched Sunday, peaked Wednesday, declined forever after 5. Memes fall hard Still had stability issues on Tuesday and Wednesday, dramatically decreased growth spread Peak day had ~200 k sessions, now at ~1 k sessions per day (totaled over 1 m sessions) After initial excitement peak, further Twitter ads didn’t help

5. Memes fall hard EC 2 costs - $97. 68 Donations – 29 donations

5. Memes fall hard EC 2 costs - $97. 68 Donations – 29 donations $203. 27 (1 donation of $100, 3 donations of $0. 01) Of ~300 k views in time with link, 0. 01% conversion rate Couldn’t put ads because (1) not approved in time (2) no actual content “Please donate” business model didn’t work

 If you make something people will like, it will spread fast Conclusions The

If you make something people will like, it will spread fast Conclusions The things I would have guessed to have mattered (good algorithm, database backend) didn’t, but other things (design, scalability) really did Hacking stuff together to get it to work fast went better than I expected It takes a lot of dubious ideas before you get to the one that lands Be ready for the emotional burden of success