Data-Science Reactivity: Three Ways

Author

Ian Lyttle

Published

2022-08-05

Preface

The purpose of this book is to compare and contrast reactive data-science apps using three languages/frameworks:

An example app is created for each framework:

  • starting with the penguins data-frame from palmerpenguins:
    • show it as a table.
    • specify grouping columns, aggregation columns, and an aggregation function.
  • create an aggregated data-frame from the input, using the specification.
    • show the aggregated data-frame as a table.

This book is written for folks who know how to develop basic Shiny apps, and wish to extend their knowledge to Dash (Python) or Observable (JavaScript). I will assume you have:

  • basic knowledge of how to build a Shiny app.
  • some familiarity with the tidyverse, in particular, dplyr.

In this book:

The goal is to give you the confidence to take the next steps to learn more about each of these frameworks.

Other resources

Here are some resources I have found useful:

  • Shiny’s tutorials.
  • Once you have built a few Shiny apps, it can be helpful to get a better sense of what makes Shiny “tick”. Joe Cheng gave an outstanding tutorial at the precursor to rstudio::conf() in 2016: Part 1, Part 2.
  • Hadley Wickham’s Mastering Shiny.
  • Appsilon has a handy blog post: Dash vs. Shiny.
  • Dash’s documentation.
  • For an introduction to Observable, this tutorial page is a great start.
  • If you are comfortable with JavaScript and want to get a quick sense of Observable: the somewhat distractingly-named Observable’s not JavaScript.