Episode 12: Barret Schloerke Part 1 (reactlog)

By The Shiny Dev Series Team

September 9, 2020

In episode 12 of the Shiny Developer Series, we begin a multi-part series with RStudio software engineer on the Shiny team Barret Schloerke! In part 1 we learn more about Barret’s journey to the Shiny team and take a deep dive into the very powerful reactlog framework to help users shed some light on what can be a confusing world of reactivity in their applications. Barret leads us through interactive demonstrations of reactlog applied to simple and complex applications to pinpoint various issues on reactive logic and the flow of information from inputs to outputs.

Resources mentioned in the episode

  • {rbokeh} - R interface for Bokeh: hafen.github.io/rbokeh
  • {trelliscopejs} - Create interactive trelliscope displays: hafen.github.io/trelliscopejs
  • {autocogs}: github.com/schloerke/autocogs
  • {reactlog} - Provides a visual insight into that black box of Shiny reactivity: rstudio.github.io/reactlog
  • Demos:
    • (Launch reactlog: cmd + F3 or ctrl + f3)
    • shiny::runApp("reactlog/reactlog-pythagorus.R")
    • shiny::runApp("reactlog/reactlog-pythagorus-broken.R")
    • shiny::runApp("reactlog/reactlog-cranwhales.R")
    • shiny::runApp("reactlog/reactlog-anti-pattern.R")

Episode Timestamps

0:00 - Intro

0:42 - Barret’s background, how he got started with R, Shiny, and RStudio.

3:41 - Bokey, Trelliscope, Ryan Hafen

4:36 - Autocogs

5:56 - Starting with RStudio

7:31 - Introduction to reactlog

9:31 - Demonstration of reactlog

10:51 - How reactlog can help diagnose issues

11:11 - Diagnosing a Shiny app’s output example

13:30 - Demo of using reactlog with a larger application

14:31 - Zooming in example

15:00 - Using the search bar

17:25 - Finding anti-patterns

23:27 - Wrapup