PyData Seattle 2023

Shiny: Data-centric web applications in Python
04-27, 11:00–11:45 (America/Los_Angeles), Rainier

Shiny is a web framework that is designed to let you create data dashboards, interactive visualizations, and workflow apps in pure Python or R. Shiny doesn't require knowledge of HTML, CSS, and JavaScript, and lets you create data-centric applications in a fraction of the time and effort of traditional web stacks.

Of course, Python already has several popular and high-quality options for creating data-centric web applications. So it's fair to ask what Shiny can offer the Python community.

In this talk, I will introduce Shiny for Python and answer that question. I'll start with some basic demos that show how Shiny apps are constructed. Next, I'll explain Transparent Reactive Programming (TRP), which is the animating concept behind Shiny, and the reason it occupies such an interesting place on the ease-vs-power tradeoff frontier. Finally, I'll wrap up with additional demos that feature interesting functionality that is made trivial with TRP.

This talk should be interesting to anyone who uses Python to analyze or visualize data, and does not require experience with Shiny or any other web frameworks.


Outline:

  • High-level description of Shiny, context setting [2 minutes]
  • Motivating examples [10 minutes]
  • Transparent Reactive Programming explained and contrasted with Streamlit [15 minutes]
  • Demos of techniques made trivial by TRP: streaming updates, dynamically inserting new UI elements, reactive smoothing [8 minutes]
  • Questions [10 minutes]

Prior Knowledge Expected

No previous knowledge expected

Joe Cheng is the CTO and first employee at Posit, PBC (formerly known as RStudio), where he helped create the RStudio IDE and Shiny web framework, along with countless complementary tools and packages.