
33 episodes

Shiny Developer Series Eric Nantz
-
- Technology
-
-
5.0 • 1 Rating
-
The goals of the Shiny Developer Series are to showcase the innovative applications and packages in the ever-growing Shiny ecosystem, as well as the brilliant developers behind them! This is the audio-only feed in case you want to listen to the content on the go. Visit shinydevseries.com for the video version of all episodes
-
Episode 28: The transformative effects of Shiny with the coronaSweeper app
The Shiny Developer Series spotlight on the 2021 Shiny Contest continues with episode 28! Eric is joined by statistics lecturer Dr. Kate Saunders to share her unique coronaSweeper Shiny application which merges a well-known mini-game in the Windows world with modelling the spread of COVID19. On the surface it might seem straight-forward, but Kate walks us through her extensive design ideas of the algorithms and user experience of the application frontend. This was a very inspiring conversation that demonstrates the ways Shiny can be transformative to teaching real principles in mathematics, statistics, and beyond!
Resources mentioned in the episode
coronaSweeper App - katerobsau.shinyapps.io/Corona_Sweeper
coronaSweeper Code - github.com/katerobsau/coronaSweeper
Kate's contest submission post: community.rstudio.com/t/coronasweeper-shiny-contest-submission/104767
Follow Kate on Twitter - @katerobsau
Episode Timestamps
00:00:00 Episode Introduction
00:04:45 Inspiration behind coronaSweeper
00:08:15 Demo of coronaSweeper
00:14:35 Code walkthrough
00:43:10 Shiny for teaching?
00:50:20 Episode wrapup -
Episode 29: Playing fair with the FairSplit Shiny App
Whether in a sports pickup game or a different friendly competition, we often strive for balancing the distributions of skills so everyone can have fun. What does this have to do with Shiny? In episode 29, our coverage of the 2021 Shiny contest continues as I am joined by Douglas Mesquita and Luis Gustavo Silve e Silve who created the novel FairSplit Shiny application! Motivated by regular football pickup games, Douglas and Luis developed a novel algorithm to balance the distribution of individuals incorporating multiple traits that eventually wound up into a snazzy Shiny app that easily has something for everyone. This is yet another example of the many use cases Shiny brings at your fingertips.
Resources mentioned in the episode
FairSplit App - voronoys.shinyapps.io/fairsplit
FairSplit Code - github.com/voronoys/fairsplit
Contest submission post - community.rstudio.com/t/fairsplit-shiny-contest-submission/104752
Episode Timestamps
00:00:00 Episode & Douglas' introduction
00:02:50 Luis' introduction
00:07:30 Fairsplit Shiny app
00:17:10 Application walkthrough
00:27:20 Sidenote: Statistical bias introduced into the system
00:47:47 Code discussion
01:12:25 Episode wrapup -
Episode 25: Colin Fay is back!
One of my biggest joys of the Shiny Developer Series is watching the journeys of many innovations in the Shiny ecosystem from the brilliant community of developers and practitioners. It is my great pleasure in episode 25 to welcome back data scientist & software engineer Colin Fay! Picking up from his last appearance almost three years ago, Colin takes us through the journey of authoring the recently-published Engineering Production Shiny and his favorite principles covered in the book. We also discuss the uptake of golem in the R community, his new approaches to starting development of a Shiny app integrating customized HTML templates, and even a little real-time consulting on using his brand-new brochure package for a fun learning project!
Resources mentioned in the episode
Engineering Production-Grade Shiny Apps
W3.CSS Templates
{golem}: Opinionated framework for building production-grade Shiny applications
{brochure} : Natively multipage Shiny apps
golemexamples: Gathering in one place some {golem} examples
Episode Timestamps
00:00:00 Episode Introduction
00:01:15 Engineering Production-Grade Shiny Apps
00:11:00 The current state and future of golem
00:11:20 'Once you go golem, you never go back!'
00:26:09 HTML Template Demo
00:37:35 brochure package discussion
01:04:10 Advice for Shiny developers seeking to get their apps in shape for production -
Episode 24: Illustrating the MyPaintings Masterpiece
In episode 24 of the Shiny Developer Series, we kick off a series of episodes that spotlight amazing Shiny applications submitted in the 2021 RStudio Shiny Contest! David Barkemeyer joins Eric to uncover the technical achievements and design philosophy of his myPaintings application, complete with many innovative capabilities that greatly enhance the user experience and backend infrastructure. Throughout the episode, you will hear David's perspectives on effective techniques to manage application state, integration of custom javascript, and much more!
Resources mentioned in the episode
David on GitHub: https://github.com/DavidBarke
myPaintings - Painting Trading Platform
Shiny app: https://mypaintings.davidbarke.com
GitHub Repo: https://github.com/DavidBarke/mypaintings
{shinyjs}
{bs4Dash}
Episode Timestamps
00:00:00 Episode Introduction
00:03:24 How David got started with R & Shiny
00:05:40 Introduction to myPaintings
00:24:15 Infinite scroll feature
00:30:22 Design UI & UX of myPaintings
00:34:15 User management & helper functions
00:46:51 Overall app & file organization
00:49:28 Using .values to store & update user state and environment
00:53:40 R6 classes as another option
01:00:20 Recap and conclusion -
Episode 32: Consulting with Shiny Panel Discussion
In this special live recording of the Shiny Developer Series held at the first-ever Appsilon Shiny Conferenbce, host Eric Nantz welcomed back an all-star panel of Dean Attali, Tanya Cashorali, Pedro Silva, and Mike Thomas to share their unique perspectives on the life of a Shiny application developer in the world of consulting. The panel discussed topics such as their favorite techniques used across production apps, advice for becoming a Shiny consultant, and ways Shiny can integrate seamlessly with other tech stacks.
Resources mentioned in the episode
Shiny Modules: shiny.rstudio.com/articles/modules.html
Overview of the {sass} package: rstudio.github.io/sass/articles/sass.html
{waiter} Loading screens for Shiny: github.com/JohnCoene/waiter
Tooltips with {shinyBS}: ebailey78.github.io/shinyBS/docs/Tooltips_and_Popovers.html
Interactive web-based data visualization with R, {plotly}, and {shiny}: plotly-r.com
{shinyjs} Easily improve the user experience of your Shiny apps in seconds: deanattali.com/shinyjs/
{reactable} Interactive data tables for R: glin.github.io/reactable
Clean Code: A Handbook of Agile Software Craftsmanship
Episode Timestamps
00:00:00 Panelist introductions
00:03:20 What are key skills to build production-quality Shiny apps
00:10:05 Creating an app that doesn't feel like a standard Shiny app
00:17:15 Getting started with consulting/freelancing Shiny development
00:27:00 Advice for teams to increase Shiny dev skills
00:36:10 Tools/packages used every day
00:45:15 App development workflows
00:49:30 Underrated techniques
00:58:20 Episode wrapup
shinydevseries::session_info()
📽 Find previous interviews at https://shinydevseries.com
📋 Feedback is more than welcome! Please send your comments or suggestions on our contact form at shinydevseries.com/contact
If you enjoyed this video or got value from it, then consider dropping something in the tip jar. Any money raised will be used to improve the channel and invest in additional equipment and resources to make the content even better!
💰 https://bit.ly/sdstip
📨 Help shape the future direction of the Shiny Developer Series live streams by completing this very short survey
Media production for the Shiny Developer Series is made possible by these outstanding projects and platforms:
OBS Studio: https://obsproject.com/
OBS Fully Loaded install script by Martin Wimpress: https://github.com/wimpysworld/obs-fully-loaded
VDO Ninja: https://vdo.ninja
StreamElements: https://streamelements.com
ShotCut: https://shotcut.org/
Pop@_OS by System76: https://pop.system76.com/
Ubuntu: https://ubuntu.com/ -
Episode 31: The Connecticut COVID-19 Test Spotter App (Part 2)
The Shiny Developer Series continues our spotlight on the COVID-19 Test Spotter application created by renowned data scientist and entrepreneur Mike Thomas! In this episode we learn how Mike implemented robust database techniques and logic to manage user-supplied data, navigating the use of multiple mapping APIs, and achieving a practical development-to-production strategy for releasing the application to the public. Plus we have a great discussion on what production means in the space of Shiny development, and much more.
Resources mentioned in the episode
COVID-19 At-Home Test Spotter (App) - ketchbrookanalytics.shinyapps.io/covid_test_spotter
COVID-19 At-Home Test Spotter (Code) - github.com/ketchbrookanalytics/covid_test_spotter
App blog post - www.ketchbrookanalytics.com/post/ketchbrook-analytics-launches-website-to-help-connecticut-residents-find-covid-19-test-kits
{googleWay} Shiny vignette - symbolixau.github.io/googleway/articles/googleway-vignette.html#shiny
{mongolite} user manual - jeroen.github.io/mongolite
{reactable} Interactive data tables for R - glin.github.io/reactable
Episode Timestamps
00:00:00 Episode Introduction
00:00:46 CRUD workflow and flowchart, with MongoDB database updates
00:09:41 Diving into the Google Maps and Places API
00:15:55 Geographic fencing, and dealing with unexpected user behavior.
00:22:35 Deploying with a dev and production branch.
00:28:15 Future plans for the app
00:30:50 Advice for building Shiny apps in production
00:31:20 Production apps is all about reproducibility: OS, dependencies, and the code.
00:33:15 Pay attention to warning messages in your console.
00:34:22 Modularization and Golem
00:38:08 You can have too much reactivity, such as overextending uiOutput() / renderUI()
00:40:10 Episode wrapup
shinydevseries::session_info()
📽 Find previous interviews at https://shinydevseries.com
📋 Feedback is more than welcome! Please send your comments or suggestions on our contact form at shinydevseries.com/contact
If you enjoyed this video or got value from it, then consider dropping something in the tip jar. Any money raised will be used to improve the channel and invest in additional equipment and resources to make the content even better!
💰 https://bit.ly/sdstip
📨 Help shape the future direction of the Shiny Developer Series live streams by completing this very short survey
Media production for the Shiny Developer Series is made possible by these outstanding projects and platforms:
OBS Studio: https://obsproject.com/
OBS Fully Loaded install script by Martin Wimpress: https://github.com/wimpysworld/obs-fully-loaded
VDO Ninja: https://vdo.ninja
StreamElements: https://streamelements.com
ShotCut: https://shotcut.org/
Pop@_OS by System76: https://pop.system76.com/
Ubuntu: https://ubuntu.com/