Episode 10: The Importance of User Experience with John Coene
Examining how improving user experience can lift Shiny applications to production level!
Resources mentioned in the episode
- Covid19 tracker - A popular Coronavirus tracker application built upon
{shinyMobile}
: johncoene.shinyapps.io/contest-coronavirus- John’s blog post about the application: blog.john-coene.com/posts/2020-02-08-ncov-2019
- RStudio Community post: community.rstudio.com/t/coronavirus-2020-shiny-contest-submission/53061
{waiter}
- Loading screens for Shiny: shiny.john-coene.com/waiter{sever}
- Good-looking problems by customizing your Shiny disconnected screen and error messages: sever.john-coene.com{echarts4r}
- Interactive visualizations for R: echarts4r.john-coene.com- How to build htmlwidgets (e-Rum 2020 virtual workshop): htmlwidgets.john-coene.com
- Blog post on building htmlwidgets for Shiny apps: blog.john-coene.com/posts/2018-01-01-widget
- Engineering Production-Grade Shiny Apps by Colin Faye: engineering-shiny.org
Episode Timestamps
0:00 - Intro
2:37 - Covid19 tracker - A popular Coronavirus Tracker app, built on shiny mobile: https://johncoene.shinyapps.io/contest-coronavirus
5:37 - Golem - Within the Covid19 Tracker discussion, on the usefulness of golem for building shiny apps with best practices.
8:57 - On working with shinyMobile https://rinterface.github.io/shinyMobile, Maintainer; David Granjon
12:47 - Shiny with R in Production and at scale.
17:27 - Waiter package. A key, simple way to improve the experience of your shiny app is giving the user clear information about how quickly app-components will take to load. https://shiny.john-coene.com/waiter/
32:57 - On the importance of ensuring your shiny apps looks and feels good to the end user
34:10 sever. More pleasing and better handling of shiny app error & disconnection messages. https://sever.john-coene.com
38:57 - Building htmlwidgets for shiny apps https://blog.john-coene.com/posts/2018-01-01-widget/
44:14 echarts4r. A package for powerful visualizations with R. It is a good showcase for how htmlwidgets can interact with your shiny-app, sending messages between your user and your server to improve the types of interactions possible with your visualizations. https://echarts4r.john-coene.com
57:27 Advice for Shiny developers that want to take that “next step” in building complex applications for production use.
- Hadley Wickham’s Mastering-shiny.org (still under development)
- Divad nojnarg - outstanding shiny ui, https://divadnojnarg.github.io/outstanding-shiny-ui/intro.html
- Colin Fay’s “Engineering Production-Grade Shiny Apps” at https://engineering-shiny.org/
1:00:46 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!
📨 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/