1 hr 17 min

Episode 23: Tales of Shiny in production with Pedro Silva Shiny Developer Series

    • Technology

One of the common themes seen throughout the Shiny Developer Series is that effective Shiny development is much more than just getting an application to work! Other important considerations include applying Shiny to high-profile projects, ensuring a production-grade code base, and even building robust tooling to assist with development. I have the pleasure of discussing these with Appsilon software engineer and Shiny frontend developer Pedro da Silva! You will hear Pedro's practical advice on the many developer-friendly packages and tools he uses for production Shiny development, a detailed walkthrough of his (Shiny contest) award-winning Shiny Decisions application, and his recommendations for taking your Shiny development skills to the next level.
Resources mentioned in the episode
Pedro's website with links to posts and webinnars: https://www.pedrocsilva.comAppsilon: https://appsilon.comShiny Decisions repo: https://github.com/pedrocoutinhosilva/shiny.decisionsDeployed Shiny Decisions app: https://sparktuga.shinyapps.io/ShinyDecisionsR6 chapter from Advanced R: adv-r.hadley.nz/r6.html{glue} for interpreted string literals: https://glue.tidyverse.org/{tidymodules}: https://opensource.nibr.com/tidymodules/index.html{sass} for R and Shiny: https://rstudio.github.io/sass/index.html{bslib}: https://rstudio.github.io/bslib/John Coene's "Javascript for R" book: https://book.javascript-for-r.com/David Granjon's "Outstanding Shiny UI" book: https://unleash-shiny.rinterface.com/{renv}: https://rstudio.github.io/renv/articles/renv.html{testthat}: https://testthat.r-lib.org/{shinyloadtest}: https://rstudio.github.io/shinyloadtest/Tidyverse style guide: https://style.tidyverse.org/An lintr, which performs automated checks to confirm that you https://appsilon.com/conform to the style guide, https://github.com/jimhester/lintrMastering Shiny: https://mastering-shiny.org/Pedro's recommended Chrome extensions for development: Resolution Test: Test web pages in different screen resolutionsColorPick Eyedropper: A zoomed eyedropper & color chooser toolScreenshotting: Web page screen captureCSS Peeper: Extract CSS and build beautiful styleguidesEpisode Timestamps
00:00:05 Episode Introduction

00:02:49 Appsilon, Shiny consulting

00:07:49 The wonderful 'black magic' of Shiny

00:09:55 Custom Shiny apps in the enterprise. Number one theme: migrating from excel

00:17:45 Demo of Shiny app game Shiny Decisions

00:22:55 A code walkthrough of Shiny Decisions
00:32:55 On styling Shiny Decisions

00:50:45 The value of learning a little javascript to improve your Shiny apps

00:51:55 Book recommendations for integrating Javascript into your Shiny app and improving UI

00:52:55 Pedro on jQuery for Shiny

00:56:05 Advice for building Shiny apps in production

01:10:05 Advice for people seeking a career in data science with R and Shiny

One of the common themes seen throughout the Shiny Developer Series is that effective Shiny development is much more than just getting an application to work! Other important considerations include applying Shiny to high-profile projects, ensuring a production-grade code base, and even building robust tooling to assist with development. I have the pleasure of discussing these with Appsilon software engineer and Shiny frontend developer Pedro da Silva! You will hear Pedro's practical advice on the many developer-friendly packages and tools he uses for production Shiny development, a detailed walkthrough of his (Shiny contest) award-winning Shiny Decisions application, and his recommendations for taking your Shiny development skills to the next level.
Resources mentioned in the episode
Pedro's website with links to posts and webinnars: https://www.pedrocsilva.comAppsilon: https://appsilon.comShiny Decisions repo: https://github.com/pedrocoutinhosilva/shiny.decisionsDeployed Shiny Decisions app: https://sparktuga.shinyapps.io/ShinyDecisionsR6 chapter from Advanced R: adv-r.hadley.nz/r6.html{glue} for interpreted string literals: https://glue.tidyverse.org/{tidymodules}: https://opensource.nibr.com/tidymodules/index.html{sass} for R and Shiny: https://rstudio.github.io/sass/index.html{bslib}: https://rstudio.github.io/bslib/John Coene's "Javascript for R" book: https://book.javascript-for-r.com/David Granjon's "Outstanding Shiny UI" book: https://unleash-shiny.rinterface.com/{renv}: https://rstudio.github.io/renv/articles/renv.html{testthat}: https://testthat.r-lib.org/{shinyloadtest}: https://rstudio.github.io/shinyloadtest/Tidyverse style guide: https://style.tidyverse.org/An lintr, which performs automated checks to confirm that you https://appsilon.com/conform to the style guide, https://github.com/jimhester/lintrMastering Shiny: https://mastering-shiny.org/Pedro's recommended Chrome extensions for development: Resolution Test: Test web pages in different screen resolutionsColorPick Eyedropper: A zoomed eyedropper & color chooser toolScreenshotting: Web page screen captureCSS Peeper: Extract CSS and build beautiful styleguidesEpisode Timestamps
00:00:05 Episode Introduction

00:02:49 Appsilon, Shiny consulting

00:07:49 The wonderful 'black magic' of Shiny

00:09:55 Custom Shiny apps in the enterprise. Number one theme: migrating from excel

00:17:45 Demo of Shiny app game Shiny Decisions

00:22:55 A code walkthrough of Shiny Decisions
00:32:55 On styling Shiny Decisions

00:50:45 The value of learning a little javascript to improve your Shiny apps

00:51:55 Book recommendations for integrating Javascript into your Shiny app and improving UI

00:52:55 Pedro on jQuery for Shiny

00:56:05 Advice for building Shiny apps in production

01:10:05 Advice for people seeking a career in data science with R and Shiny

1 hr 17 min

Top Podcasts In Technology

No Priors: Artificial Intelligence | Technology | Startups
Conviction | Pod People
Lex Fridman Podcast
Lex Fridman
All-In with Chamath, Jason, Sacks & Friedberg
All-In Podcast, LLC
Hard Fork
The New York Times
Acquired
Ben Gilbert and David Rosenthal
The Neuron: AI Explained
The Neuron