Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
245 lines (167 sloc) 41.8 KB
title date tags slug comments
Storrrify #satRdayCapeTown 2018
2018-03-24
rtweet
conference
satRday
Twitter
satrdaycapetown
true

One week ago I was in Cape Town for the local satRday conference, where I had the honor to be one of the two keynote speakers, the other one being sports analytics extraordinaire Stephanie Kovalchik (You can read Stephanie Kovalchik's account of the conference in this blog post). It was a fantastic experience! The event was very well organized, and 100% corresponds to its description as a "one day conference packed with R goodness". You can watch all talks on Youtube. In my talk, I presented rOpenSci onboarding system of packages and... wore a hard hat!

It'd be a bit hard for me to really write a good recap of satRday that'd do it justice! Instead, I'll use rtweet and a bit of html hacking to storrrify it (like Storify, but in R) using my live tweets!

Getting my satRday tweets

To get my own satRday Cape Town tweets, I'll first get my timeline and then filter tweets containing the official conference hashtag, "#SatRdayCapeTown". I shall only keep my tweets.

my_tweets <- rtweet::get_timeline(user = "ma_salmon", n = 5000)
my_satrday_tweets <- dplyr::filter(my_tweets,
                                   stringr::str_detect(text, "[sS]at[rR]day[cC]ape[tT]own"),
                                   !is_retweet)
my_satrday_tweets <- dplyr::arrange(my_satrday_tweets, created_at)

I got 54 tweets.

Embedding tweets

I wanted to embed tweets, not to rtweet::tweet_shot them, because I wanted to display clickable links. I used the Twitter API embed endpoint after reading this webpage. This endpoint isn't currently included in rtweet.

library("magrittr")
embed_tweet <- function(tweet_id){
  url <-glue::glue("https://twitter.com/ma_salmon/status/{tweet_id}") 
  
  httr::GET("https://publish.twitter.com/oembed",
            query = list(url = url,
                         hide_thread = "true")) %>%
    httr::content() %>%
    .$html
}

I'll now write all html chunks in an html file.

fs::file_create("satrdaycapetown.html")
embed_and_save <- function(tweet_id){
  embed_tweet(tweet_id) 
}

purrr::map_chr(my_satrday_tweets$status_id, embed_tweet) %>%
  paste() %>%
  writeLines("satrdaycapetown.html", useBytes = TRUE)

And voilà!

I'll include all tweets below (via a Jekyll include, with the html living in _includes, this is probably very hacky...), happy reading! Thanks again to the organizers, participants and sponsors of SatRday Cape Town for making it such an enjoyable experience!

"GitHub is a treasure trove of public activity just waiting to be analyzed" YES! More on my own 💙 for GH data at #satRdayCapeTown in a few days! 🛫 https://t.co/O7n4EIqpbj

— Maëlle Salmon 🐟 (@ma_salmon) March 13, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

💯 Things are getting real down here! #satRdayCapeTown https://t.co/V74HhcVZ9c

— Maëlle Salmon 🐟 (@ma_salmon) March 14, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

A good way to get familiar with my accent, dear #satRdayCapeTown attendees 😉 poke @DataWookie https://t.co/HOGoWIqF6I

— Maëlle Salmon 🐟 (@ma_salmon) March 15, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@theoni_p wrote a legend for the sticky notes at my #satRdayCapeTown package dev workshop! (@thecarpentries style!) 👩 🎨

The nearby @thecarpentries workshop uses pink for "confused" so a helper was scared when she came in & saw all the pink notes in our room 😂 pic.twitter.com/H0ubBpZYNF

— Maëlle Salmon 🐟 (@ma_salmon) March 16, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Now I exactly know what to improve next time I teach #rstats package development in case someone wants me to do that again! 😀

Thanks #SatRdayCapeTown participants for a great day and insightful feedback! 🚦 pic.twitter.com/l6h6GCYvyx

— Maëlle Salmon 🐟 (@ma_salmon) March 16, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

And thanks a lot to the helpers, @jonmcalder &co who made everything run smoothly! 🌟🌟🌟 #SatRdayCapeTown https://t.co/mxVGpK8oqn

— Maëlle Salmon 🐟 (@ma_salmon) March 16, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Material for my #satRdayCapeTown #rstats 📦 development workshop https://t.co/lGnaBXaHYy

Slides https://t.co/lZmUHnWzVv pic.twitter.com/YuYse37zo6

— Maëlle Salmon 🐟 (@ma_salmon) March 16, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Roberto Benetto opening #SatRdayCapeTown with an overview of #rstats sf! 🌐🗺 And a pun that made everyone laugh 👏 (wait for the recording to hear it 😜) pic.twitter.com/lxRoQkDKMR

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

He's a fan of reading GitHub issues of #rstats packages to see what problems and ideas people have. So am I! 🕵️ ♂️🕵️ ♀️ #SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

⚡talks time at #SatRdayCapeTown! 🏃 ♂️🏃 ♀️

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Christopher Waspe about the flowcar package. Nothing to do with 🚗! It's about ecological networks! (No URL found/given sorry 😢) ⚡ #SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

#SatRdayCapeTown speakers please mention your Twitter handle if you have one & don't have it on your title slide 😉

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Vishalin Pillay about automatic report generation! RMarkdown 💙💚💛 #SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Maphale Matlala about testing the IUCN Red List 🚦 for Ecosystems methodology on 🇿🇦 datasets #SatRdayCapeTown using the redlistr #rstats package https://t.co/e8QhgwEcKd pic.twitter.com/yI18oNhUyg

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Slides for my #SatRdayCapeTown talk about the @rOpenSci onboarding process of #rstats packages 📦https://t.co/OOPepRT2G3

Poke co-editors @_inundata @noamross @sckottie

And here are the faces of onboarded packages! pic.twitter.com/TAXqxr21A1

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@painblogR is showing us how to make data analysis purrr with 🥕🥕🥕 data as an example #SatRdayCapeTown pic.twitter.com/sCeRMFcfCd

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@painblogR 's code https://t.co/23C6Puqxm8

And 🥕🥕🥕 dataset https://t.co/CiwKJks3im

A really neat intro to purrr, including pros and cons (nesting hell anecdote 😂) 👌#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Sean Soutar showing us how to gather data from dynamic web forms with Docker & the @rOpenSci RSelenium #rstats package https://t.co/WdTgaSzJZe#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Futurology! (extreme risk prediction) with Alice Elizabeth Coyne 📈🔮 #SatRdayCapeTown pic.twitter.com/2G3HPOxT1g

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Super #SatRdayCapeTown organizer-in-chief @DataWookie speaking about productivity hacks, we'd better all take notes! 🗒

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@DataWookie productivy hacks
configure ahead
ditch RStudio 😱 & use the shell/R command line instead (now I want to debate functions&pkgs vs parameterized scripts with him 😁🤺)
use the ☁️#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Now listening to @realseem about his journey from Python🐍 to R, with game making as motivator 🎮

Very entertaining and enlightening lightning talk! #SatRdayCapeTown pic.twitter.com/pl7QaNSNzx

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Schalk Heunis about using R for racing! #SatRdayCapeTown
Using R to train the ConvNet of a self-driving RC 🚗

Find his project at https://t.co/eyPS2gLKnL

He mentioned
https://t.co/yzhQX9qvSe
https://t.co/M6xzQOX4rC

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Neil Rankin says satRday 2017 changed his life, he discovered useful 🛠! He e.g. mentions @JennyBryan 's https://t.co/G8vxGml00t

He's now talking about identifying bias in 🇿🇦 graduate recruitment

#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Such a fascinating talk about bias. 😮

Neil Rankin used tidy text analysis to analyze personal biographies by self assigned race (thanks to @juliasilge 's presence last year).#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Jed Stephens walked us through some scary factors data 😉 #SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Deveshnie Mudaly, SQL wiz &engaging speaker, uses a cool example in her talk about using SQL from #rstats

PSA! She's looking for collaborators on a Harry Potter R package! Find her at https://t.co/oUJZ1unLH0#SatRdayCapeTown pic.twitter.com/1pAjcC3zRC

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Unsurprisingly @rugbystatsguy is presenting about 🏈! Either put your Twitter handle on your title slide or... have one people can guess 😉

He mentioned the @rOpenSci plotly package https://t.co/zKD6YuxRv5#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Time for @StatsOnTheT 's keynote at #SatRdayCapeTown ! 🎾 pic.twitter.com/qPDQywiOPr

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@StatsOnTheT works for GIG that will revolutionize 🎾 through data science#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

If you are into 🎾 & #rstats check out @StatsOnTheT 's impressive package produced by her collecting tons of data from the web!https://t.co/mueGjGXyVc#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

This shows

numbers calculated by @StatsOnTheT's group (win probability computed before and during events!)

one of the reasons she 💙s her job!
#SatRdayCapeTown pic.twitter.com/iDwrnGBGfF

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Now we'll get to see how @StatsOnTheT 's group gets there 👌

📽🔩#rstats ☁️🗃#SatRdayCapeTown pic.twitter.com/quQaUmES2E

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Live demo by @StatsOnTheT 😎 Here is my own metrics XML 😉

<talk>
<content>fascinating</content>
<speaking>extremely engaging</speaking>
</talk>#satRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@StatsOnTheT tips for #rstats software for real time

🎾 Think modularly

🎾 Profile bottlenecks using lineprof https://t.co/L8zfOoN7aX

🎾Embrace the #tidyverse

🎾Further optimize with e.g. datatable, parallel/foreach/other parallel processing tools, Rcpp#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@StatsOnTheT : GIG reports are generated automatically & in #rstats RMarkdown

She shows us an example of a parameterized report cf https://t.co/U6HoKDoIwJ#SatRdayCapeTown pic.twitter.com/Py5S0o7RSZ

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@StatsOnTheT's tips for real time #rstats RMarkdown

⚾️ Doc as function

⚾️ Make your summaries and plots generalizable

⚾️ Separate content from style with a CSS style sheet#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Find the material for @StatsOnTheT awesome talk here https://t.co/VvAk7wSODo 💁 ♀️

Pro tip, nagivate to the repo root https://t.co/qviYxENses for even more #rstats goodness from her workshop 👩 🏫 and her @RLadiesCapeTown talk about sports blogging 💜💁 ♀️#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

It was good promotion of sf, with nice examples! The joke wasn't about sf though.

Roberto Benetto's code lives here https://t.co/IRY46TN4RP#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@UbuntR314 said @juliasilge's last year inspired him to use sentiment analysis!

He developed an internal package for analysing news survey data and will soon blog about it at https://t.co/XUYYSrHQbM#SatRdayCapeTown pic.twitter.com/EWcVP3yCxT

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@naasvanheerden explains his workflow at work using R packages and Shiny apps... and says the packages will be improved thanks to my workshop yesterday 😎😊#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

In his nice talk @naasvanheerden mentioned #rstats coming to the rescue... ICYMI @alice_data made a real logo for that! 😉https://t.co/zCre4ZWyGG#SatRdayCapeTown pic.twitter.com/CSYdqERUA1

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

The very energetic @SaintlyVi 🏃 ♀️ is now introducing CKAN & #OpenData portals

She mentioned the @rOpenSci ckanr #rstats package https://t.co/fWLm4YNrIj#SatRdayCapeTown pic.twitter.com/GhS4Qm4zyb

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Why did I say "mentioned"?! @SaintlyVi has now walked us through an example of #rstats @rOpenSci ckanr use & is now presenting us a typical ckanr workflow! #SatRdayCapeTown pic.twitter.com/dWyzxrs5jh

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Here is @SaintlyVi intro code to #rstats @rOpenSci ckanr https://t.co/QNonaMT6aJ 🏃 ♀️

I also liked her promotion of @RLadiesCapeTown! 💜#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@OpenSourceQuant 📈📉 on blotter https://t.co/BMjUgWvDQW

Hey it doesn't have a README nor a repo description yet 😱😜#SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@pssGuy about creating interactive plots in 5 minutes starring #rstats 🛠

the #tidyverse
@rOpenSci plotly https://t.co/zKD6YuxRv5
@MilesMcBain datapasta that he tried to pronounce à la 🇦🇺 😉 https://t.co/lyjnUOcKTHhttps://t.co/tO3ME03c9R#SatRdayCapeTown pic.twitter.com/VfrNcX8RON

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Last talk, by David Lubinsky, is about profiling using #rstats profvis! (poke @_ColinFay)https://t.co/Ol2KfeBwcQ #SatRdayCapeTown

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Why profile #rstats code according to David Lubinsky

▶️ not wasting resources in production
▶️ often easy to get improvements
▶️ R is more than a prototyping language
▶️ especially useful with Shiny#SatRdayCapeTown pic.twitter.com/l34yKrqML1

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Such an interesting, clear and enjoyable live demo of @winston_chang 's profvis package by David Lubinsky 👌https://t.co/Ol2KfeBwcQ#SatRdayCapeTown pic.twitter.com/RSnNdihuuq

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

.@realseem won a book signed by @hadleywickham thanks to his great ⚡talk this morning! Well deserved!#SatRdayCapeTown pic.twitter.com/4pVymr8wDe

— Maëlle Salmon 🐟 (@ma_salmon) March 17, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Flying home today&tomorrow from #SatRdayCapeTown after a great conference, thx a ton to the organizers, participants &sponsors! 🌴✈⛄ pic.twitter.com/OQWa650oF3

— Maëlle Salmon 🐟 (@ma_salmon) March 18, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Not sure if relevant but it seems that sports analytics extraordinaire @StatsOnTheT
presented such models at her #satRdayCapeTown workshop https://t.co/YyQyUKFaxP

— Maëlle Salmon 🐟 (@ma_salmon) March 19, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

New #rstats post! "Storrrify #satRdayCapeTown 2018"https://t.co/1HimAko2yf

Thanks again to the organizers, participants and sponsors of this great conference! pic.twitter.com/HHJjhLUUR9

— Maëlle Salmon 🐟 (@ma_salmon) March 24, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>