Rayshader
Resources tagged Rayshader#
AI-Powered Data Engineering Workflows: Positron for Databricks Users
Modern data engineering demands more. Move beyond the limitations of hosted notebooks and embrace the power of an IDE for modern data engineering.
We’ll show you how Positron combines the best of local development with the scale of Databricks.
In this session led by James Blair at Posit, we’ll cover:
- AI-Driven Development: Moving from concept to code faster with built-in AI.
- Seamless Exploration: Navigating data effortlessly with the Catalog Explorer.
- Production-Grade Pipelines: Building, testing, and deploying robust workflows.
Helpful Links: Download Positron: https://positron.posit.co/ Databricks Asset Bundles: http://docs.databricks.com/dev-tools/bundles GitHub Repo for Demo: https://github.com/blairj09/databricks-data-engineering Lakeflow Declarative Pipelines: http://docs.databricks.com/aws/en/ldp Talk to us about integrating Posit & Databricks: https://posit.co/schedule-a-call/
Take Positron to Work with Positron Pro
While you’ve downloaded Positron on your desktop and are loving it, you may still have a few questions about using it at work:
- What happens when my analysis requires more memory than my laptop has?
- How can I bring Positron into my company’s secure environment?
- How can I access data in Databricks or Snowflake from Positron?
Nick Rohrbaugh, Senior Product Marketing Manager at Posit shares how Positron Pro, available exclusively within Posit Workbench, transforms from a powerful desktop editor into a fully governed, enterprise-ready IDE.
In this webinar, you will learn how:
- Data teams get immediate access to scalable, server-side compute and secure, one-click data authorization.
- IT leaders can centralize, secure, and manage Positron alongside RStudio, Jupyter, and VS Code, all from a single platform.
Helpful links: Positron: https://posit.co/products/ide/positron/ Posit Workbench: https://posit.co/products/enterprise/workbench/
AI-Powered Data Science in Positron
We’re so excited to introduce Positron, a free, next-generation data science IDE that makes it easy to work in both R and Python. Positron builds on our years of experience developing RStudio and is a fork of VS Code, designed specifically for data work. This means you get a modern coding interface with features tailored for data science, like a built-in data explorer, AI assistance, interpreter management, and more.
This is our 2nd event in our Positron series and focused on AI-Powered Data Science.
Here at Posit, we strive to create products where AI works with you, not against you. In efforts to continue this mission, we are excited to introduce agentic AI capabilities in Positron, our new, free code editor for R and Python, that are designed from the ground up to follow these principles. Positron’s AI capabilities automate the tedious parts of the data science workflow, but always keep you, the expert, in control.
00:00 Introduction 00:32 What is Positron? (The Next-Gen Data Science IDE) 03:43 Introducing Positron Assistant 05:10 Bring your own LLM 05:47 Your environment as context 07:19 Inline code suggestions 07:58 Introducing Databot 08:22 The WEAR loop 10:15 Demo time 10:56 Opening Positron Pro in Posit Team 14:29 Opening a new folder in Positron 15:22 Cloning a repo from GitHub 17:24 Positron icons 19:15 Positron search bar and command palette 20:18 Changing interpreters and opening a Quarto document 21:30 Running code and populating the Variables Pane 22:41 Using the Data Explorer 25:28 Creating a plot and debugging with Positron Assistant 30:46 Editing code using inline code suggestions 34:42 Sharing a Quarto document 36:12 Opening Databot 37:02 Exploring data with Databot 43:37 Creating a report using Databot findings 45:12 Wrap up
Additional resources: GitHub Repo for this Example: https://github.com/posit-dev/positron-ai-workshop Getting Started with Positron: Quick Tour: https://posit.co/resources/videos/get-started-with-positron-a-quick-tour-and-community-qa/ Introducing Databot (Blog Post): https://posit.co/blog/introducing-databot/ Posit AI Newsletter: https://posit.co/blog/2025-09-26-ai-newsletter/ Positron Assistant: https://positron.posit.co/assistant.html
Accelerating Study Insights with Shiny and Posit | Regeneron x Atorus
In this session, Atorus and Regeneron, and Posit showcase their innovative partnership.
Topics covered: -Building a Unified Analytical Environment: Learn how to reduce friction by integrating fragmented SAS and R workflows. -Case Study: A Config-Driven App: See a live demo of how a simple configuration file can build a fully functional application for data review and safety monitoring. -Operational Shifts: Understand how internal teams are empowered to independently manage and extend their own applications in a regulated environment.
This isn’t just about technology—it’s about the strategic shift required to simplify development and accelerate insights within a regulated environment.
Learn more about Posit’s work in the pharma space: https://posit.co/use-cases/pharma/?utm_source=youtube&utm_medium=social&utm_term=pharma&utm_content=atorus-regeneron
What can you do with Positron Assistant?
Positron Assistant is an AI client integrated within Positron, designed to enhance data science workflows.
Positron Assistant brings LLM integration for both chat and inline code completions.This tool is built to assist with a range of tasks, including generating and refactoring code, answering questions, providing debugging support, and offering insightful suggestions for next steps in your projects. It can interact with the Variables pane, Plots pane, and the Console in your IDE.
Capabilities include:
• Editor inline chat (chat with Positron Assistant in your script to augment your code) • Contextual code completion (add instructional comments to your scripts to complete code) • Agent-assisted workflows (allow Positron Assistant to execute tasks autonomously)
Learn more about Positron Assistant: https://positron.posit.co/assistant.html Sign up for our Workflow Demo on October 29, where we will demonstrate Positron Assistant: https://posit.co/workflow-demo/ai-powered-data-science-in-positron/
Deploying Scikit-learn models for in-database scoring with Snowflake and Posit Team
Modern data science workflows often face a critical challenge: how to efficiently deploy machine learning models where the data lives. Traditional approaches require moving large datasets out of the database for scoring, creating bottlenecks, security concerns, and unnecessary data movement costs.
In this demo, Nick Pelikan at Posit highlights how orbital bridges the gap between Python’s rich ML ecosystem and database-native execution by converting scikit-learn pipelines to optimized SQL. This enables data scientists to:
- Use familiar Python tools for model development
- Automatically translate complex feature engineering to SQL
- Deploy models without rewriting code in different languages
- Maintain model accuracy through faithful SQL translations
While this example focuses on Python, Nick also gave this demo using Orbital for R users: https://youtu.be/pnEjYNgOG9c?feature=shared
Helpful resources:
- Follow-along blog post: https://posit.co/blog/snowflake-orbital-scikit-learn-models/
- Supported models for Orbital: https://orbital.tidymodels.org/articles/supported-models.html
- Orbital (Python) GitHub Repo: https://github.com/posit-dev/orbital
- Orbital (R) GitHub Repo: https://github.com/tidymodels/orbital
- Databricks and Orbital for R and Python model deployment: https://posit.co/blog/databricks-orbital-r-python-model-deployment/
- Emily Riederer’s XGBoost example with Orbital: https://www.emilyriederer.com/post/orbital-xgb/
- Sara Altman’s blog post on Shiny + Databases: https://posit.co/blog/shiny-with-databases/
- Emil’s introduction of orbital: https://emilhvitfeldt.com/talk/2024-08-13-orbital-positconf/
- Nick’s Blog on Running Tidymodel Prediction Workflows with Orbital: https://posit.co/blog/running-tidymodel-prediction-workflows-inside-databases/
If you’d like to learn more about using Posit Team, you can always schedule time to chat with Posit here: https://posit.co/schedule-a-call/
Next-gen data science: a conversation with the Ravit Show and Eric Pité
Eric Pité, SVP of Product & Strategy, sat down with the Ravit Show at Databricks Data + AI Summit to have a conversation about the evolution of open source data science, the Posit and Databricks integration, and the place of AI in modern data science. Some highlights from the conversation are below:
– The evolution from RStudio to Posit It’s more than just a name change — it’s a signal of how seriously they’re embracing Python while staying true to their R roots and open-source mission.
– Open source meets enterprise Eric shared how Posit is navigating the balance between community contribution and commercial sustainability — and why that mission still matters in an AI-first world.
– Positron + Databricks Their strategic partnership is one to watch. Positron is making it easier to do high-quality data science (in R and Python) inside the Databricks ecosystem, with an emphasis on collaboration, reproducibility, and performance.
– AI’s place in modern data science Eric and Ravit chatted about how Posit sees the role of AI in helping data teams be more productive, without losing rigor or transparency.
– The power of storytelling with code One of our favorite parts is the emphasis on communication. Building models is not enough—data scientists need to share insights clearly, and Posit is building for that.
Learn more about the Databricks and Posit partnership by exploring the partnership page and resources: https://posit.co/use-cases/databricks/
Welcome to PydyTuesday! | How to Level Up your Python Skills
In this video, you’ll learn where to find the PydyTuesday github landing page, where data lives on the tidytuesday repo, and how to get started to try stuff out and build new things!
We hope you join us in participating in PydyTuesday!
Don’t forget to use the hashtags #TidyTuesday and #PydyTuesday wherever you like to hangout online - Bluesky, Mastodon, LinkedIn, etc. - have fun out there! We can’t wait to see the predictive models, visualizations, dashboards, and data apps that you create
Resources and Repos to star:
TidyTuesday GitHub Repo: https://github.com/rfordatascience/ti … Posit PydyTuesday GitHub Repo: https://github.com/posit-dev/python-t … TidyTuesday hashtag search on Bluesky: https://bsky.app/search?q=tidytuesday Other videos in this PydyTuesday playlist: • PydyTuesday | Python How-to Videos
#pythoncontent
Let’s Import Free, High-Quality Datasets into your Python IDE (using Positron and PydyTuesday)
Let’s download data. Learn how to install a dataset using the pydytuesday package and do some basic visualization of the data using Positron’s data viewers.
We hope you join us in participating in PydyTuesday!
Don’t forget to use the hashtags #TidyTuesday and #PydyTuesday wherever you like to hangout online - Bluesky, Mastodon, LinkedIn, etc. - have fun out there! We can’t wait to see the predictive models, visualizations, dashboards, and data apps that you create
Resources and Repos to star:
TidyTuesday GitHub Repo: https://github.com/rfordatascience/ti … Posit PydyTuesday GitHub Repo: https://github.com/posit-dev/python-t … TidyTuesday hashtag search on Bluesky: https://bsky.app/search?q=tidytuesday Other videos in this PydyTuesday playlist: • PydyTuesday | Python How-to Videos
#pythoncontent
Great Tables 3: Data Color and Polishing
This workshop is all about using Great Tables to make beautiful tables for publication and display purposes. We believe that effective tables have these things in common:
structuring that aids in the reading of the table well-formatted values, fitting expectations for the field of study styling that reduces time to insight and improves aesthetics These materials are for you if:
• you have some experience with data analysis in Python • you often create reporting that involves summarizations of data • you were often frustrated with making tables for display purposes outside of Python • you found beautiful-looking tables in the wild and wondered: ‘How could I do that?’
Other videos in this series:
Great Tables 1: Structure, Format, and Style: https://youtu.be/QM7DbsY-nc4 Great Tables 2: Introducing Units Notation: https://youtu.be/SN0_vIL1Rhk
About us:
Michael Chow, Senior Software Engineer, Posit
Michael is a data scientist and software engineer. He has programmed in Python for well over a decade, and he obtained a PhD in cognitive psychology from Princeton University. His interests include statistical methods, skill acquisition, and human memory.
Richard Iannone, Senior Software Engineer, Posit
Richard is a software engineer and table enthusiast. He’s been vigorously working on making display tables easier to create/display in Python. And generally Rich enjoys creating open source packages so that people can great things in their own work.
Workshop repo: https://github.com/rich-iannone/great-tables-mini-workshop?tab=readme-ov-file Learn more at https://posit-dev.github.io/great-tables/articles/intro.html

Great Tables 2: Introducing Units Notation
This workshop is all about using Great Tables to make beautiful tables for publication and display purposes. We believe that effective tables have these things in common:
structuring that aids in the reading of the table well-formatted values, fitting expectations for the field of study styling that reduces time to insight and improves aesthetics These materials are for you if:
• you have some experience with data analysis in Python • you often create reporting that involves summarizations of data • you were often frustrated with making tables for display purposes outside of Python • you found beautiful-looking tables in the wild and wondered: ‘How could I do that?’
Other videos in this series:
Great Tables 1: Structure, Format, and Style: https://youtu.be/QM7DbsY-nc4 Great Tables 3: Data Color and Polishing https://youtu.be/Huteb5OmcrA
About us:
Michael Chow, Senior Software Engineer, Posit
Michael is a data scientist and software engineer. He has programmed in Python for well over a decade, and he obtained a PhD in cognitive psychology from Princeton University. His interests include statistical methods, skill acquisition, and human memory.
Richard Iannone, Senior Software Engineer, Posit
Richard is a software engineer and table enthusiast. He’s been vigorously working on making display tables easier to create/display in Python. And generally Rich enjoys creating open source packages so that people can great things in their own work.
Workshop repo: https://github.com/rich-iannone/great-tables-mini-workshop?tab=readme-ov-file Learn more at https://posit-dev.github.io/great-tables/articles/intro.html

Great Tables 1: Structure, Format, and Style
This workshop is all about using Great Tables to make beautiful tables for publication and display purposes. We believe that effective tables have these things in common:
structuring that aids in the reading of the table well-formatted values, fitting expectations for the field of study styling that reduces time to insight and improves aesthetics These materials are for you if:
• you have some experience with data analysis in Python • you often create reporting that involves summarizations of data • you were often frustrated with making tables for display purposes outside of Python • you found beautiful-looking tables in the wild and wondered: ‘How could I do that?’
Other videos in this series:
Great Tables 2: Introducing Units Notation: https://youtu.be/SN0_vIL1Rhk Great Tables 3: Data Color and Polishing https://youtu.be/Huteb5OmcrA
About us:
Michael Chow, Senior Software Engineer, Posit
Michael is a data scientist and software engineer. He has programmed in Python for well over a decade, and he obtained a PhD in cognitive psychology from Princeton University. His interests include statistical methods, skill acquisition, and human memory.
Richard Iannone, Senior Software Engineer, Posit
Richard is a software engineer and table enthusiast. He’s been vigorously working on making display tables easier to create/display in Python. And generally Rich enjoys creating open source packages so that people can great things in their own work.
Workshop repo: https://github.com/rich-iannone/great-tables-mini-workshop?tab=readme-ov-file Learn more at https://posit-dev.github.io/great-tables/articles/intro.html

Build a Python table in under 1 minute using Great Tables
Create wonderful-looking tables directly from Pandas or Polars DataFrames with the Great Tables package.
Typically, Great Tables is used in a notebook environment or within a Quarto document and rendered in HTML or as an image file.
Ready to build some awesome tables? Install from PyPI with: $ pip install great_tables.
GitHub Repo: https://github.com/posit-dev/great-tables Design Philosophy of Great Tables: https://posit-dev.github.io/great-tables/blog/design-philosophy/
Create Quarto dashboards with Python
Learn how to create Quarto dashboards with Python! Senior Product Marketing Manager Isabella Velásquez walks through building a Quarto dashboard from scratch, using water insecurity data from the TidyTuesday project. You’ll learn how to structure a Quarto document, preview dashboards, and customize layouts and themes. See Isabella’s code here: https://github.com/ivelasq/water-insecurity-dashboard And the dashboard here: https://ivelasq-water-insecurity-dashboard.share.connect.posit.cloud/
Resources:
Quarto dashboards guide: https://quarto.org/docs/dashboards/ Posit Connect Cloud: connect.posit.cloud Hello, Dashboards!: https://www.youtube.com/watch?v=HW7QbqI4fH0&t=590s TidyTuesday project: https://github.com/rfordatascience/tidytuesday Posit PydyTuesday GitHub repo: https://github.com/posit-dev/python-tidytuesday Other videos in this PydyTuesday playlist: https://www.youtube.com/playlist?list=PL9HYL-VRX0oSDQjicFMLIIdcLv5NuvDp9
#pythoncontent
Transform Boring Forms into Eye-Catching UI: Shiny Party Tricks That Will Make You Look Like a Pro 🎉
Learn how to elevate your Shiny forms from basic to professional with dynamic accordions. This tutorial demonstrates how to implement intelligent form organization and visual feedback using Shiny’s accordion components. We cover both basic accordion implementation and advanced dynamic features including status indicators, automatic title updates, and section validation. Perfect for developers looking to enhance their Shiny applications with modern, user-friendly form interfaces.
Key features covered:
Basic form to accordion conversion Dynamic panel updates Status indicator implementation Visual feedback systems Section validation techniques
Reference Documentation:
For accordion implementation, see: https://shiny.posit.co/r/reference/shiny/latest/accordion For dynamic updates, see: https://shiny.posit.co/r/reference/shiny/latest/updateAccordion For input validation, see: https://shiny.posit.co/r/reference/shiny/latest/validate For modular development, see: https://shiny.posit.co/r/articles/build/modules/
Timestamps: 0:00 - Introduction 0:23 - Basic form structure overview 0:50 - Introduction to accordion components 1:11 - Basic accordion implementation 1:35 - Dynamic accordion enhancement 2:00 - Status indicators and visual feedback 2:29 - Updating accordion panels 2:55 - Documentation resources 3:18 - Conclusion
Stop Your Shiny Apps from Breaking on Mobile! Master Responsive Design in Minutes 📱💻
A comprehensive guide to implementing responsive design in Shiny applications using UI layout columns. This tutorial covers how to create adaptive layouts that automatically adjust based on screen size, from desktop to mobile devices. Learn how to leverage Shiny’s bootstrap-based grid system to create professional, responsive applications that look great on any device.
Key concepts covered:
• Default Shiny responsive behavior • UI layout column implementation • Screen size breakpoints • Bootstrap grid system • Responsive card layouts • Mobile-first design principles
Reference Documentation:
UI Layout Columns: https://shiny.posit.co/r/reference/shiny/latest/layout_column Layout Guide: https://shiny.posit.co/r/articles/build/layout-guide/ Bootstrap Integration: https://shiny.posit.co/r/articles/build/bootstrap/ Responsive Design: https://shiny.posit.co/r/articles/build/responsive/
Timestamps: 0:00 - Introduction 0:23 - Default Shiny layout behavior 0:38 - Understanding screen responsiveness 1:05 - Introduction to UI layout columns 1:38 - Screen size breakpoints explained 2:02 - Desktop layout demonstration 2:30 - Mobile layout adaptation 2:44 - Bootstrap grid system overview 3:21 - Documentation resources 3:45 - Conclusion
Open Source in Clinical Reporting | A Conversation with Ben Arancibia at GSK
Posit’s Director of Life Sciences, Phil Bowsher, sat down with GSK’s Director of Data Science, Ben Arancibia, to discuss various topics within the open-source clinical reporting space.
More about Posit’s work in the pharma space: https://posit.co/use-cases/pharma/
Watch GSK’s latest web event with Posit: https://www.youtube.com/watch?v=xDrt6txplek
Fastest way to Convert Jupyter Notebooks into Analytics Reports! (using Quarto)
Transform messy Jupyter notebooks into polished HTML reports with Quarto. Learn how to create professional, client-ready reports that effectively communicate data science insights to stakeholders. Using a telecom customer churn analysis example, we’ll cover:
- Converting notebooks to formatted HTML reports
- Customizing layouts and interactive elements
- Adding business context to technical analysis
- Publishing and sharing reports effectively
Perfect for data scientists and analysts who need to present technical work to business audiences.
Link to Code: https://github.com/KeithGalli/telecom-churn-analysis Quarto Crash Course Video: https://youtu.be/_VKxTPWDhA4?si=kcbQ8M9p6HH5QE2w Share your work with Posit Connect Cloud: https://pos.it/keith_qc
Video by @KeithGalli
Video timeline! 0:00 - Video Overview & Accessing Code/Data 1:46 - Rendering Jupyter Notebook as HTML Output 3:30 - Making quick improvements to our HTML Report (adjusting YAML parameters, hiding code/output cells) 8:15 - Understanding the Business Context & Insights from our Analysis and adding written details to report. 14:30 - Improving page formatting (margins, body size, etc) 17:30 - Adding business recommendations for our telecom client 21:00 - Further aesthetic improvements (larger font-size, organizing info into columns, using a qmd file, etc.) 30:17 - Publishing our HTML report using Posit Connect Cloud
#python #jupyter #quarto
Generate 100s of custom reports in minutes with Python & Quarto! (Parameterized report automation)
A practical guide to generating hundreds of customized reports using Quarto and Python. Learn how to leverage Quarto’s parameter system to create PDFs and HTML reports at scale. Using a movie dataset example, we’ll cover:
- How to automate report generation with Python and Quarto
- Create dynamic templates with data visualization and formatting
- Adapt parameters to work with both Python and R code
- Build scalable reporting workflows for any dataset This tutorial demonstrates how to transform what could be hours of manual reporting work into an efficient automated process.
Quarto Crash Course Video: https://youtu.be/_VKxTPWDhA4?si=Q09V5xXlyo1YVQqs Generating Analytics Reports (typst) Video: https://youtu.be/Q3phTByW138?si=FIMiAWAHP6HhUnhG
Link to Code (starting): https://github.com/KeithGalli/quarto-crash-course Link to Code (finished): https://github.com/KeithGalli/quarto-crash-course/tree/parameterized-reports
Information on the dataset can be found here: https://github.com/KeithGalli/quarto-crash-course/tree/master?tab=readme-ov-file#resources
Video timeline! 0:00 - Video Overview 0:58 - Walking through some starter code (linked in description) 3:20 - Passing parameters with Python into Quarto Markdown Files 4:27 - Passing parameters using R 5:18 - Using a Python script to render many reports with variable parameters. 6:36 - Dynamically generating markdown sections with Python (output: asis - execution option) 11:56 - Adding images, table of contents, & pagebreaks to our reports 15:00 - Adding graphs to our reports 17:54 - Tying everything together 21:47 - Adding fenced divs & styling/formatting dynamically with code
Quarto Websites 4: Add lists of content with listings | Charlotte Wickham | Posit
Adding a listing page to your website is a great way to showcase your projects, talks, publications or blog posts. In this video you’ll learn how to create a listing page in Quarto and see two ways to populate it with content: Quarto documents, or a yaml file.
In this video: 0:50 Use a listing to add a blog 3:36 Listing options 5:47 Why use a listing? 7:22 Use a YAML file to populate a project portfolio 9:50 Customize the display of a listing 12:10 Advanced customization of listings 13:42 Remove pages
Links: Listings: https://quarto.org/docs/websites/website-listings.html Andrew Heiss’ teaching listing: https://www.andrewheiss.com/teaching/
Code: Starter source code: https://github.com/cwickham/quarto-website-video/tree/v0.3 Final source code: https://github.com/cwickham/quarto-website-video/tree/v0.4
For more in-depth coverage and slides check out: https://posit-conf-2024.github.io/quarto-websites/
Do you need a professional website to showcase your work? If you’ve used Quarto to produce a document, you’ve already got the technical skills to create a Quarto website. In this video series, you’ll learn everything else you need to build a website and customize its appearance.
This video series is for you if you:
- Have used Quarto to generate documents (e.g. HTML, PDF, MS Word etc.)
- Are comfortable editing plain text documents (e.g .qmd) in your IDE (e.g. RStudio, Visual Studio Code etc.)
- Want to walk away with your own personal website
Taught by: Charlotte Wickham (https://www.cwick.co.nz/ ) Emil Hvitfeldt (https://emilhvitfeldt.com/ )
Videos in this series:
- Build your homepage [https://youtu.be/l7r24gTEkEY]
- Add pages and navigation [https://youtu.be/k65E-8PXZmA] 3: Customize appearance with CSS/SCSS [https://youtu.be/pAN2Hiq0XGs] 4: Add lists of content with listings [https://youtu.be/bv_Cw-3HI1Y]


Quarto Websites 3: Customize appearance with CSS/SCSS | Emil Hvitfeldt | Posit
You now have a set of content you are happy with on your website, but how do you customize the look and feel of your site beyond options set in YAML? In this video, you’ll start by learning the basics of CSS and SCSS and how to make good design choices. Then, you’ll see how to apply these choices to your Quarto website.
In this video: 0:14 What is HTML? 3:23 CSS Selectors 8:05 CSS Attributes 8:25 Layout attributes 10:24 Reducing repetition with SASS/SCSS? 15:26 Consistent design 16:36 Choosing colors 17:50 Choosing fonts 19:28 Maintaining accessibility 22:13 Apply SCSS to your website 24:16 Change the appearance of headings 25:28 Change the appearance of navigation bar 30:30 Use google fonts
Links: Color contrast checker: https://colourcontrast.cc/ Google fonts: https://fonts.google.com/
Code: Starter source code: https://github.com/cwickham/quarto-website-video/tree/v0.2 Final source code: https://github.com/cwickham/quarto-website-video/tree/v0.3
For more in-depth coverage and slides check out: https://posit-conf-2024.github.io/quarto-websites/
Do you need a professional website to showcase your work? If you’ve used Quarto to produce a document, you’ve already got the technical skills to create a Quarto website. In this video series, you’ll learn everything else you need to build a website and customize its appearance.
This video series is for you if you:
- Have used Quarto to generate documents (e.g. HTML, PDF, MS Word etc.)
- Are comfortable editing plain text documents (e.g .qmd) in your IDE (e.g. RStudio, Visual Studio Code etc.)
- Want to walk away with your own personal website
Taught by: Charlotte Wickham (https://www.cwick.co.nz/ ) Emil Hvitfeldt (https://emilhvitfeldt.com/ )
Videos in this series:
- Build your homepage [https://youtu.be/l7r24gTEkEY]
- Add pages and navigation [https://youtu.be/k65E-8PXZmA] 3: Customize appearance with CSS/SCSS [https://youtu.be/pAN2Hiq0XGs] 4: Add lists of content with listings [https://youtu.be/bv_Cw-3HI1Y]


Quarto Websites 2: Add pages and navigation | Charlotte Wickham | Posit
Now you’ve got a homepage, you’ll likely want to add some other pages. In this video, learn how to add pages to your website, and help people find them, by adding them to your website navigation.
In this video: 1:00 Add a page to your website 2:54 Your file structure determines your URL structure 5:49 Add a link to your page in navigation 7:50 Customize navigation item text and icon 9:12 Control where items appear in the navigation bar 10:16 Navigation bar options 11:11 Switch to side navigation 12:22 Other types of navigation 16:30 Wrap Up
Links: List of icons you can use in navigation items: https://icons.getbootstrap.com/ Top navigation bar options: https://quarto.org/docs/websites/website-navigation.html#top-navigation Quarto website navigation: https://quarto.org/docs/websites/website-navigation.html
Code: Starter source code: https://github.com/cwickham/quarto-website-video/tree/v0.1 Final source code: https://github.com/cwickham/quarto-website-video/tree/v0.2
For more in-depth coverage and slides check out: https://posit-conf-2024.github.io/quarto-websites/
Do you need a professional website to showcase your work? If you’ve used Quarto to produce a document, you’ve already got the technical skills to create a Quarto website. In this video series, you’ll learn everything else you need to build a website and customize its appearance.
This video series is for you if you:
- Have used Quarto to generate documents (e.g. HTML, PDF, MS Word etc.)
- Are comfortable editing plain text documents (e.g .qmd) in your IDE (e.g. RStudio, Visual Studio Code etc.)
- Want to walk away with your own personal website
Taught by: Charlotte Wickham (https://www.cwick.co.nz/ ) Emil Hvitfeldt (https://emilhvitfeldt.com/ )
Videos in this series:
- Build your homepage [https://youtu.be/l7r24gTEkEY]
- Add pages and navigation [https://youtu.be/k65E-8PXZmA] 3: Customize appearance with CSS/SCSS [https://youtu.be/pAN2Hiq0XGs] 4: Add lists of content with listings [https://youtu.be/bv_Cw-3HI1Y]


Quarto Websites 1: Build your homepage | Charlotte Wickham & Emil Hvitfeldt | Posit
In this video, you’ll get a running start by using a template we’ve designed to be functional and attractive, and that will serve as a foundation for the rest of the video series. You’ll customize the content of your homepage, and how it looks, and along the way learn about the two key files in a Quarto website index.qmd and _quarto.yml. Finally, you’ll learn one way to publish your website so other people can see it.
In this video: 0:21 Use a template to get started 2:33 Preview the template homepage, index.qmd 4:12 Customize the content of your homepage 5:45 “About” pages 7:22 Customize the image on your homepage 9:24 Website configuration, _quarto.yml 10:40 Customize colors with YAML 13:45 Customize fonts with YAML 17:00 Publish your site
Links: About pages: https://quarto.org/docs/websites/website-about.html Appearance options you can set in YAML: https://quarto.org/docs/output-formats/html-themes.html#basic-options
Code: Starter source code: https://github.com/EmilHvitfeldt/website-template Final source code: https://github.com/cwickham/quarto-website-video/tree/v0.1
For more in-depth coverage and slides check out: https://posit-conf-2024.github.io/quarto-websites/
Do you need a professional website to showcase your work? If you’ve used Quarto to produce a document, you’ve already got the technical skills to create a Quarto website. In this video series, you’ll learn everything else you need to build a website and customize its appearance.
This video series is for you if you:
- Have used Quarto to generate documents (e.g. HTML, PDF, MS Word etc.)
- Are comfortable editing plain text documents (e.g .qmd) in your IDE (e.g. RStudio, Visual Studio Code etc.)
- Want to walk away with your own personal website
Taught by: Charlotte Wickham (https://www.cwick.co.nz/ ) Emil Hvitfeldt (https://emilhvitfeldt.com/ )
Videos in this series:
- Build your homepage [https://youtu.be/l7r24gTEkEY]
- Add pages and navigation [https://youtu.be/k65E-8PXZmA] 3: Customize appearance with CSS/SCSS [https://youtu.be/pAN2Hiq0XGs] 4: Add lists of content with listings [https://youtu.be/bv_Cw-3HI1Y]


Quarto Crash Course | Create Professional Reports, Dashboards & Websites w/ Markdown & Python Code!
Welcome to this comprehensive Quarto crash course using Python! Whether you’re a complete beginner or an experienced user, this tutorial covers the topics you need to know about the Quarto publishing system.
We’ll explore:
- Basic setup and installation
- Creating HTML reports, PDFs, and interactive dashboards from your Python script or Jupyter notebook.
- Building presentations with Revealjs
- Customizing outputs with CSS and layouts (fenced divs, classes, and more)
- Working with parameters for dynamic reports
- Publishing to Posit Connect Cloud
- Creating complete websites
- Automated report generation
Perfect for data scientists, analysts, and developers looking to create beautiful, reproducible reports from their code. We’ll use Python throughout the tutorial with real-world examples using movie analytics data. Let’s dive in!
Video by @KeithGalli
Github repo: https://github.com/KeithGalli/quarto-crash-course
Deploy with Posit Connect Cloud! https://pos.it/keith_qc
#python #quarto #posit
— Resources Mentioned — Slideshow example: https://quarto.org/docs/presentations/revealjs/demo/#/title-slide Slideshow example (source code): https://github.com/quarto-dev/quarto-web/blob/main/docs/presentations/revealjs/demo/index.qmd Example HTML report: https://019302a7-e9e3-3454-3575-23148999a7f7.share.connect.posit.cloud/ Quarto Gallery: https://quarto.org/docs/gallery/ Bootstrap Icons: https://icons.getbootstrap.com/
Video timeline! 0:00 - About the Crash Course 0:50 - Quarto Overview 2:12 - Installation & Setup 6:22 - Markdown Basics 8:46 - Quarto Markdown Features 19:37 - Quarto Styling & Formatting (fenced divs, CSS classes, etc.) 34:53 - Parameters & CLI Options 40:46 - HTML & Publishing 49:46 - Static Docs (PDFs, Docx) 54:53 - Dashboards 1:06:50 - Slideshows (Revealjs) 1:16:11 - Websites 1:19:52 - Automated Report Generation (Parameterized Reports)
Quarto Dashboards 3: Theming and Styling | Mine Çetinkaya-Rundel | Posit
Theming and styling Quarto dashboards built with R and/or Python.
Before watching this video, you might want to watch Parts 1 & 2.
This video takes you through
0:00 - Theming (including Bootswatch themes, light/dark mode, customizing themes with SCSS) 3:55 - Styling 4:55 - Live coding demo
Slides can be found at https://mine.quarto.pub/quarto-dashboards/3-theming-styling and the starter documents for the accompanying exercises at https://github.com/mine-cetinkaya-rundel/olympicdash .
Materials for all parts of the videos can be accessed at https://mine.quarto.pub/quarto-dashboards .
You already analyze and summarize your data in computational notebooks with R and/or Python. What’s next? You can share your insights or allow others to make their own conclusions in eye-catching dashboards and straight-forward to author, design, and deploy Quarto Dashboards, regardless of the language of your data processing, visualization, analysis, etc. With Quarto Dashboards, you can create elegant and production-ready dashboards using a variety of components, including static graphics (ggplot2, Matplotlib, Seaborn, etc.), interactive widgets (Plotly, Leaflet, Jupyter Widgets, htmlwidgets, etc.), tabular data, value boxes, text annotations, and more. Additionally, with intelligent resizing of components, your Quarto Dashboards look great on devices of all sizes. And importantly, you can author Quarto Dashboards without leaving the comfort of your “home” – in plain text markdown with any text editor (VS Code, RStudio, Neovim, etc.) or any notebook editor (JupyterLab, etc.).
This workshop will walk you through building an increasingly complex dashboard using various layout options and deploy them as static web pages (with no special server required) as well as with a Shiny Server on the backend for enhanced interactivity.
This course is for you if you:
- do data analysis in computational notebooks
- share your results with your audience in static or interactive dashboards
- want to improve the design, user interface, and experience of your dashboards

Quarto Dashboards 2: Components | Mine Çetinkaya-Rundel | Posit
Building dashboards in R and/or Python with Quarto, one component at a time.
Before watching this video, you might want to watch Part 1.
This video takes you through
0:00 - An overview of dashboard components 0:11 - Navigation bar and pages 4:55 - Sidebars, rows, columns, and tabsets 11:07 - Cards 22:40 - Live coding demo
Slides can be found at https://mine.quarto.pub/quarto-dashboards/2-dashboard-components and the starter documents for the accompanying exercises at https://github.com/mine-cetinkaya-rundel/olympicdash .
Materials for all parts of the videos can be accessed at https://mine.quarto.pub/quarto-dashboards

Quarto Dashboards 1: Hello, Dashboards! | Mine Çetinkaya-Rundel | Posit
You already analyze and summarize your data in computational notebooks with R and/or Python. What’s next? You can share your insights or allow others to make their own conclusions in eye-catching dashboards and straight-forward to author, design, and deploy Quarto Dashboards, regardless of the language of your data processing, visualization, analysis, etc. With Quarto Dashboards, you can create elegant and production-ready dashboards using a variety of components, including static graphics (ggplot2, Matplotlib, Seaborn, etc.), interactive widgets (Plotly, Leaflet, Jupyter Widgets, htmlwidgets, etc.), tabular data, value boxes, text annotations, and more. Additionally, with intelligent resizing of components, your Quarto Dashboards look great on devices of all sizes. And importantly, you can author Quarto Dashboards without leaving the comfort of your “home” – in plain text markdown with any text editor (VS Code, RStudio, Neovim, etc.) or any notebook editor (JupyterLab, etc.).
This video takes you through
0:00 - Overview of building dashboards with Quarto 0:15 - Dashboard basics 7:40 - First dashboard in R 10:30 - First dashboard in Python 11:43 - Live coding demo
Slides can be found at https://mine.quarto.pub/quarto-dashboards/1-hello-dashboards/#/title-slide and the starter documents for the accompanying exercises at https://github.com/mine-cetinkaya-rundel/olympicdash .
Materials for all parts of the videos can be accessed at https://mine.quarto.pub/quarto-dashboards

Build Shiny apps with AI ✨
View the full video here: https://www.youtube.com/watch?v=fJNKdwdVQ8Q
Try it out here, free: https://gallery.shinyapps.io/assistant/
Get started with Shiny for R and Python: https://shiny.posit.co
#pythoncontent #positshorts
Shiny Assistant: Prototype and build Shiny applications with the help of AI | Winston Chang | Posit
Have you ever had an idea for a great web application with Shiny but felt something holding you back from getting started? Maybe it’s that you don’t know where to start, or that you don’t know which packages use to build the app, or maybe it’s just that you can’t muster the energy to get started. Sometimes you just need a little help to get unstuck.
We’re excited to announce a new addition to the Shiny ecosystem that can help: Shiny Assistant.
Try it out here, free: https://gallery.shinyapps.io/assistant/
Get started with Shiny for R and Python: https://shiny.posit.co

Deploy an LLM-powered Shiny for Python app to Connect Cloud in minutes!
Connect Cloud lets you quickly deploy data applications and documents from public GitHub repositories for Python and R projects.
This short demo showcases secret variable management on Connect Cloud to help deploy an LLM-powered Shiny for Python application.
→ Signup for a free Connect Cloud account → https://connect.posit.cloud/ → View the how-to guide → https://docs.posit.co/connect-cloud/how-to/python/llm-shiny-python.html
Using controllers to write robust Shiny for Python app tests | Karan Gathani | Posit
With the Shiny for Python v1.0 release, controllers were exposed to provide a structured and consistent way for users to interact with and test UI components in Shiny applications. They offer an abstraction layer that encapsulates the complexity of interacting with specific UI elements, making it easier for developers to write robust tests and automate interactions with their Shiny apps.
Reference documentation - https://shiny.posit.co/py/api/testing/ https://shiny.posit.co/py/docs/playwright-testing.html

Creating tests for Shiny for Python apps | Karan Gathani | Posit
With the Shiny for Python v1.0 release, Shiny provides a simple way to create a test file for your Shiny app. The shiny add test command is a helpful CLI tool for Shiny app developers. It simplifies the process of creating test files for their applications.
When you run this command, it prompts you to input two pieces of information: the path to your Shiny app file and the desired location for the new test file.
Once you provide these details, the command automatically generates a test file at the specified location. This new file includes a pre-made test template, giving you a solid starting point for writing your app’s tests.
Reference documentation - https://shiny.posit.co/py/docs/unit-testing.html https://shiny.posit.co/py/docs/playwright-testing.html

GenAI and Pharma: Learning as we go | Episode 1: Copilot
In this episode, Phil and Cole discuss using Copilot in clinical trial submissions.
Due to an industry-wide shift in pharma, statistical programmers are transitioning to open-source tooling in drug development. This skills gap that occurs when moving to open source is one area that can be aided with generative AI tools. In this episode, Cole and Phil show some of the features and functionality of a popular tool in the data science space, Copilot.
More about open source in Pharma: https://posit.co/solutions/pharma/
Parallelize R code using user-defined functions in sparklyr
If you’re an Apache Spark user, you benefit from its speed and scalability for big data processing.
However, you might still want to leverage R’s extensive ecosystem of packages and intuitive syntax. One effective way to do this is by writing user-defined functions (UDFs) with sparklyr.
UDFs enable you to execute R functions within Spark, harnessing Spark’s processing power and combining the strengths of both tools.
In this tutorial, you’ll learn how to:
- Open Posit Workbench as a Databricks user
- Start a Databricks cluster within Posit Workbench
- Connect to a cluster within Posit Workbench
- View Databricks data in RStudio
- Create a prediction function
- Create a user-defined function with sparklyr
Read our most recent blog that covers parallelizing R code using user-defined functions (UDFs) in sparklyr: https://posit.co/blog/databricks-udfs/
Learn more about our Databricks partnership: https://posit.co/solutions/databricks/
Watch other tutorials on using Databricks and RStudio: https://youtube.com/playlist?list=PL9HYL-VRX0oR-3AgWbXtlfdr29626EjRJ&feature=shared
Reproducible data science with webR and Shinylive | George Stagg | Posit
A fundamental principle of the scientific method is peer review and independent verification of results. Good science depends on transparency and reproducibility. However, in a recent study a substantial 74% of research code failed to run without errors, often caused by diverse computing environments. This talk will discuss the principles of numerical reproducibility in research and show how software can be pinned to specific versions and self-contained as a universal binary package using WebAssembly. This ensures seamless reproducibility on any machine equipped with a modern web browser and, using tools such as Shinylive, could provide a new way for researchers to share results with the community.
webR demo website: https://webr.r-wasm.org/v0.3.2/
Shinylive examples: https://shinylive.io/r/ https://shinylive.io/py/
Documentation: https://docs.r-wasm.org/webr/v0.3.2/ https://github.com/posit-dev/shinylive https://github.com/quarto-ext/shinylive

Quarto: Elevating R Markdown for Advanced Publishing | Christophe Dervieux
In the dynamic landscape of data analysis and scientific publishing, R Markdown has been pivotal for the R community, allowing users to seamlessly blend code, narrative and results in a cohesive narrative. Now, Quarto emerges as a powerful tool that builds on years of experience but also goes beyond R Markdown, providing more flexibility and power in scientific communication.
This talk aims to present Quarto as the new alternative for scientific publishing. We will delve into how Quarto enhances the user experience for R enthusiasts, maintaining the syntax familiarity of R Markdown while introducing innovative and improved functionalities across multiple formats, similar to R Markdown ones.
Why switch to Quarto from R Markdown? In which cases? How does Quarto integrate with existing workflows? Hopefully everyone will feel inspired to try out Quarto!
https://quarto.org/docs/get-started/
Timestamps: 0:00 Introduction 0:41 Quarto is an open-source, scientific and technical publishing system 1:22 Computational documents and scientific markdown made easy for single source publishing 3:08 How to use Quarto 4:24 Quarto works with VS Code, Positron, Jupyter, & RStudio 5:22 Quarto’s multi-language workflow 7:21 Quarto syntax 8:40 Quarto formats (html, pdf, docx, typst, beamer, pptx, revealjs, etc.) 12:19 HTML Theming 14:10 Typst CSS for nice table output in PDF 16:24 Publishing (Quarto Pub, GitHub Pages, Posit Connect, Posit Cloud, Netlify, Confluence, Hugging Face, etc.) 17:36 Shortcodes 19:10 Quarto Extensions 19:49 Quarto Projects 22:53 Project configuration examples for a website and a book 23:42 Resources to get started!

Great Tables: Make beautiful, publication quality tables in Python | Rich Iannone & Michael Chow
Tables are undeniably useful for data work. We have many great DataFrame libraries available in Python, and they give us flexibility in terms of manipulating data at will, but what happens when presenting tables to others?
It’s nice to display tables. Tables can efficiently carry information, just like plots do, and at times it is the better way of presenting data. Indeed, it is time to bridge the divide between raw DataFrame output and wondrously structured tables suitable for publication.
Now, let us turn our attention to the state of ‘display tables’ in 2024. Let us go over what comprises key components for building effective information displays in tables. It may surprise one how new a well-crafted table can be hewn. We’ll take a look at the combinations of Python packages that fit together to make this important task possible, and marvel together at the tabular results they can provide!
Learn more at https://posit-dev.github.io/great-tables/
Timestamps: 0:00 Intro: Meet Rich and Michael 0:41 What we mean by “publication ready tables” 1:29 Overview of what we’ll talk about in this video 1:44 Table Goals: Ways to make a table beautiful 4:41 Tables made from reproducible code! 5:11 The history of table generation to influence our API 6:15 Our modern take on a table display framework 6:35 The problem with Excel 7:38 Introducing Great Tables! 8:00 Key Ingredients of making a Great Table 8:24 Structure: Title, column spanners and nice column labels 8:52 Format: Compact dollar values and percentages 9:23 Styling: Fill color and bold text 10:09 Imports and Polars Selectors 11:08 Coding the structure 12:27 Coding the format 13:07 Coding the styling 15:03 Putting images and plots in your table cells 15:49 Advanced Design 16:07 .fmt_nanoplot(): Small plots within table cells 19:08 .data_color(): Heat maps in tales 20:51 Powerful and plentiful methods to format cell values 22:48 To sum up: TABLES RULE


How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python)
This is part 5 of our multi-part series on creating professional dashboards with Shiny for Python. In this video, we dive into advanced styling techniques to enhance the visual appeal and professionalism of your Shiny dashboards. We’ll cover:
- Adding a logo and custom title
- Making use of custom HTML elements
- Using CSS to style Shiny components
- Customizing Altair charts for a polished look
- Advanced Plotly chart modifications
- Applying a consistent color theme and layout
By the end of this video, you’ll have a styled dashboard, ready for a professional presentation.
Access the GitHub repo with all parts of this project: https://github.com/KeithGalli/shiny-python-projects Shiny for Python Homepage: https://shiny.posit.co/py/ Check out the complete documentation here: https://shiny.posit.co/py/api/express/
Video by @KeithGalli
Video Timeline: 0:00 - Video Overview & Setup 1:50 - Modifying HTML and CSS in Shiny 7:44 - Adding a Logo Image 10:26 - Styling Labels and Containers (Aligning our Image w/ the Title — Custom Divs) 20:20 - Customizing Altair Charts (Gridlines, Font, Axis Labels, Etc.) 27:49 - Customizing Plotly Visualizations 37:16 - Customizing Seaborn & Folium Heatmaps 44:15 - Final Touches, Clean Up, Recap and Next Steps
If you enjoyed this series, give it a thumbs up and subscribe to the channel to stay updated!
All videos in the series: Part 1 - How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny): https://www.youtube.com/watch?v=I2W7i7QyJPI&t=0s Part 2 - How to make Interactive Python Dashboards! (Reactivity in Shiny): https://www.youtube.com/watch?v=SLkA-Z8HTAE&t=0s Part 3 - How to make your Python Dashboard look Professional! (Layouts in Shiny): https://www.youtube.com/watch?v=jemk7DoN4qk&t=0s Part 4 - How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python): https://youtu.be/xDgO5hB4-VU?si=kk20yhdpsBqkMYcC Part 5 - How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python): https://youtu.be/uYZUS-eFbqw
How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python)
This is part 4 of our multi-part series on creating professional dashboards with Shiny for Python. In this video, we’ll explore how to integrate popular Python visualization libraries like Matplotlib, Plotly, Seaborn, and Altair into your Shiny apps. This allows you to leverage your existing visualization skills and seamlessly include them in interactive dashboards. We’ll cover:
- Integrating Matplotlib and Seaborn for detailed visualizations
- Utilizing Altair and Plotly for dynamic charts
- Implementing Folium for interactive maps
- Customizing data tables with additional filters and selection modes
By the end of this video, you’ll have a rich and diverse set of visualizations in your Shiny dashboard, setting the stage for the final styling touches in the next video.
Shiny for Python Homepage: https://shiny.posit.co/py/
Access the GitHub repo with all parts of this project: https://github.com/KeithGalli/shiny-python-projects
Check out the complete documentation here: https://shiny.posit.co/py/api/express/
Video by @KeithGalli
Video Timeline! 0:00 - Video Overview & Recap of Previous Video Dashboards 1:38 - Getting Setup with the Code (cloning branch from GitHub) 3:15 - Adding Matplotlib-based visualizations (render.plot Shiny for Python decorator) 10:15 - Create a Seaborn Heatmap Chart (Sales Volume by Hour of the Day) 14:59 - Creating Interactive Charts with Jupyter Widgets (Plotly, Altair, Bokeh, Pydeck, & More…) | render_widget decorator 20:14 - Implementing Folium for Location-Based Heatmaps (render.ui decorator) 25:32 - Enhancing DataFrames with Filters and Selection Modes (render.data_frame, render.DataGrid, render.DataTable, etc.) 28:49 - Additional Rendering Options, Final Touches and Next Steps
Stay tuned for part 5, where we’ll focus on styling and finalizing our dashboard. If you enjoyed this video, give it a thumbs up and subscribe to the channel to stay updated!
All videos in the series: Part 1 - How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny): https://www.youtube.com/watch?v=I2W7i7QyJPI&t=0s Part 2 - How to make Interactive Python Dashboards! (Reactivity in Shiny): https://www.youtube.com/watch?v=SLkA-Z8HTAE&t=0s Part 3 - How to make your Python Dashboard look Professional! (Layouts in Shiny): https://www.youtube.com/watch?v=jemk7DoN4qk&t=0s Part 4 - How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python): https://youtu.be/xDgO5hB4-VU?si=kk20yhdpsBqkMYcC Part 5 - How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python): https://youtu.be/uYZUS-eFbqw
How to make your Python Dashboard look Professional! (Layouts in Shiny)
This is part 3 of our multi-part series on creating professional dashboards with Shiny for Python. In this video, we focus on enhancing the visual appeal and structure of your Shiny dashboards using various layout components. We’ll cover:
- Implementing layout templates for quick setup
- Using cards and sidebars for a clean, organized look
- Customizing columns and grids for better data presentation
- Adding tab options for multiple views within a dashboard
By the end of this video, you’ll have a more polished and professional-looking dashboard, setting the stage for advanced visualizations in upcoming videos.
Shiny for Python Homepage: https://shiny.posit.co/py/
Access the GitHub repo with all parts of this project: https://github.com/KeithGalli/shiny-python-projects
Check out the complete documentation here: https://shiny.posit.co/py/api/express/
Video by @KeithGalli
Video Timeline! 0:00 - Video Overview & Progress Thus Far 1:28 - Using Shiny Templates to Get Started Fast 3:21 - Using Layout Components to Customize our Apps (Cards, Sidebars, Tabs, etc.) 7:55 - Adding a Sidebar within a Card 12:38 - Adding a Card with Tabs to Display Various Visualizations 17:35 - Structuring Data in Columns / Grids (layout_columns() & layout_column_wrap()) 26:30 - Final Touches & Tips (Filling in Visualizations into our Tab Views)
Stay tuned for part 4, where we’ll add more advanced visualizations, and part 5, where we’ll focus on customizing styles and adding final touches. If you enjoyed this video, give it a thumbs up and subscribe to the channel to stay updated!
All videos in the series: Part 1 - How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny): https://www.youtube.com/watch?v=I2W7i7QyJPI&t=0s Part 2 - How to make Interactive Python Dashboards! (Reactivity in Shiny): https://www.youtube.com/watch?v=SLkA-Z8HTAE&t=0s Part 3 - How to make your Python Dashboard look Professional! (Layouts in Shiny): https://www.youtube.com/watch?v=jemk7DoN4qk&t=0s Part 4 - How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python): https://youtu.be/xDgO5hB4-VU?si=kk20yhdpsBqkMYcC Part 5 - How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python): https://youtu.be/uYZUS-eFbqw
How to make Interactive Python Dashboards! (Reactivity in Shiny)
This is a quick-start guide to Shiny for Python, part 2 of a multi-part series.
Data scientists need to quickly build web applications to create and share interactive visualizations, giving others a way to interact with data and analytics. Shiny helps you do this.
In this video, we’ll build off of the last tutorial where we learned the basics of building, sharing, and deploying a Shiny app in Python. This video specifically focuses on reactivity in Shiny. You can watch this video as a standalone, but it may be helpful to watch the previous video (https://youtu.be/I2W7i7QyJPI) .
We’ll cover: ⬡ Creating toggle options for dynamic visualizations ⬡ Understanding Shiny’s reactivity model ⬡ Implementing various input selectors ⬡ Building reactive components and visualizations ⬡ Using reactive calculations and effects ⬡ Adding and formatting plots with Plotly ⬡ Documentation walkthrough to learn more about reactivity (reactivity.effect, reactivity.event, reactivity.isolate, reactivity.invalidate_later, etc…)
Video Resources: Video #1: https://youtu.be/I2W7i7QyJPI?si=nx1dk5ovPc91pvlB Starter Code (from end of video #1): https://github.com/KeithGalli/shiny-python-projects/tree/video1 Final App: https://keithgalli.shinyapps.io/final-app/
Shiny Resources: Shiny for Python Homepage: https://shiny.posit.co/py/ Component Gallery: https://shiny.posit.co/py/components/ Express Documentation: https://shiny.posit.co/py/api/express/ Gordon Shotwell’s “How does Shiny Render Things?”: https://youtu.be/jvV4y2xogf8?si=8uGP8ZfboUj1QM4p Joe Cheng’s “Shiny Programming Practices”: https://youtu.be/B2JzHv4FOTU?si=t4Atii-RSc5ojgom
Stay tuned for part 3, where we’ll explore how to make your dashboard look more professional (layouts in Shiny).
Video by @KeithGalli
Video Timeline! 0:00 - Intro & Overview 1:01 - Getting Started with Code 2:08 - Adding Shiny Components (Inputs, Outputs, & Display Messages) 3:21 - Creating an Additional Visualization (Sales Over Time by City) 7:55 - What are Reactive.Calcs and How Do We Use Them Properly? (DataFrame Best Practices) 10:27 - Creating an Additional Visualization (Sales Over Time by City) — Continued 14:30 - Filtering City Data with Select Inputs (UI.Input_Selectize) 21:15 - Rendering Shiny Inputs Within Text 22:15 - Quick Formatting Adjustments 22:54 - Understanding the Shiny Reactivity Model (How Does Shiny Render Things?) 24:23 - Adding a Checkbox Input to Change Out Bar Chart Marker Colors 28:00 - Deploying Our Updated App! 29:19 - Advanced Concepts in Shiny Reactivity (Reactive.Effect, Reactive.Event, Reactive.Isolate, Reactive.Invalidate_Later) & Other Resources
All videos in the series: Part 1 - How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny): https://www.youtube.com/watch?v=I2W7i7QyJPI&t=0s Part 2 - How to make Interactive Python Dashboards! (Reactivity in Shiny): https://www.youtube.com/watch?v=SLkA-Z8HTAE&t=0s Part 3 - How to make your Python Dashboard look Professional! (Layouts in Shiny): https://www.youtube.com/watch?v=jemk7DoN4qk&t=0s Part 4 - How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python): https://youtu.be/xDgO5hB4-VU?si=kk20yhdpsBqkMYcC Part 5 - How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python): https://youtu.be/uYZUS-eFbqw

Being SO good they can’t ignore you
Tom recommended the book So Good They Can’t Ignore You in a recent Data Science Hangout. Libby also keeps this awesome list of Hangout book recommendations: https://datahumans.notion.site/2f4552fd18be4d439b6b6977077e6ca5?v=738d0654fd81490890b8f741a2ef0a3c #positshorts
Communicating Data Science with Shiny! 🚀 Garrick Aden-Buie #datascience #datavisualization #shiny
Ever seen this diagram? It’s from R for Data Science, outlining the journey of tackling new data problems.
1️⃣ Start: Import and tidy your data. 2️⃣ Cycle: Transform, visualize, and model your data. 3️⃣ Communicate: Share your findings.
But communication isn’t just the end—it’s an ongoing process! Shiny apps are your secret weapon for this.
Scenario 1: Quick Shiny app for colleague feedback ️ refine your work. Scenario 2: Small app grows into a full-featured web application.
From small, quick-use apps to robust final products, Shiny evolves with your project needs. Discover why Shiny is essential for every data scientist!
Get Started: https://shiny.posit.co #positshorts

{shinylive}: Serverless Shiny Apps | Barret Schloerke | Posit
In the rapidly evolving landscape of web technologies, the integration of R (and Python) with modern web frameworks has become increasingly important for data scientists and developers. This presentation introduces {shinylive}, a new R package that exports Shiny applications to be run within statically hosted websites. We will explore the capabilities of {shinylive} through its use of the innovative R package {webR}, which allows for the execution of R code in the browser (via WebAssembly and service workers) without the need for a centralized server.
The presentation will cover the technical foundation of {shinylive}, including its architecture and the integration process with Quarto documents. We will also discuss the practical aspects and drawbacks of exporting Shiny apps with {shinylive}, highlighting the ease of exporting apps to a folder for local use or hosting them on GitHub pages.
{shinylive} bridges the gap between Shiny and static websites, making it a valuable resource for interactive data analysis and presentation.
Link to app: https://schloerke.com/presentation-2024-04-18-appsilon-shinylive/ Link to script: https://github.com/posit-dev/r-shinylive/blob/main/examples/deploy-app.yaml Link to use_github_action(): https://github.com/posit-dev/r-shinylive#github-pages Shinylive website: https://posit-dev.github.io/r-shinylive/ {webr} docs: https://docs.r-wasm.org/webr/latest/

Analyze and explore data stored in Snowflake using R
James Blair, Senior Product Manager, Cloud Integrations at Posit, will demonstrate using the R language to analyze and explore data stored in Snowflake. He will also show you how easy it is to set up an R environment inside Posit Workbench that runs as a native app on Snowpark Container Services.
You also find out how using the dbplyr interface can be used to push computation data into Snowflake, giving you access to greater memory and compute power than in a standard R session.
It’s easy to get started. In just a few minutes, you can work in your R session securely inside Snowflake using the RStudio Pro IDE in Posit Workbench. Posit also supports VS Code and Jupyter for data scientists who prefer to work in other languages like Python, so you can continue to use the tools you know and love.
Learn more about the Snowflake and Posit integration: https://posit.co/solutions/snowflake/
How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny)
This is a quick-start guide to Shiny for Python. It’s part 1 of a multi-part series. Data scientists need to quickly build web applications to create and share interactive visualizations, giving others a way to interact with data and analytics. Shiny helps you do this.
In this video, we’ll walk you through the basics of setting up Shiny for Python, creating your first app, and deploying it so others can use it. We’ll cover:
- Installing Shiny and necessary dependencies
- Writing and running your first Shiny app
- Basic UI and server structure
- Deploying your app online
- Helpful Links
Shiny for Python Homepage: https://shiny.posit.co/py/
The link to the final app can be found here: https://keithgalli.shinyapps.io/final-app/
Follow along with the code examples provided in this repository: https://github.com/KeithGalli/shiny-python-projects
Check out the complete documentation here: https://shiny.posit.co/py/api/express/
Stay tuned for part 2, where we’ll dive deeper into advanced features and customization options.
Video Timeline! 0:00 - Intro to Shiny & Video Overview 1:43 - Getting Started with the Shinylive Playground 2:44 - Building a custom visualization with Shinylive 5:18 - Easily sharing the code/application for a Shinylive app 6:12 - Building a Shiny Express App locally (VSCode) 9:40 - How to run app if you’re not using VSCode 10:17 - Further customization of our app (adding title, using CSV data, dynamic input) 17:15 - Deploying our Shiny app to the web 21:20 - Conclusion & what’s coming next in the series
Video by @KeithGalli
All videos in the series: Part 1 - How to Build, Deploy, & Share a Python Application in 20 minutes! (Using Shiny): https://www.youtube.com/watch?v=I2W7i7QyJPI&t=0s Part 2 - How to make Interactive Python Dashboards! (Reactivity in Shiny): https://www.youtube.com/watch?v=SLkA-Z8HTAE&t=0s Part 3 - How to make your Python Dashboard look Professional! (Layouts in Shiny): https://www.youtube.com/watch?v=jemk7DoN4qk&t=0s Part 4 - How to combine Matplotlib, Plotly, Seaborn, & more in a single Python Dashboard! (Shiny for Python): https://youtu.be/xDgO5hB4-VU?si=kk20yhdpsBqkMYcC Part 5 - How to Perfect Your Python Dashboard with Advanced Styling! (HTML/CSS - Shiny for Python): https://youtu.be/uYZUS-eFbqw
Joe Cheng | Managing long-running operations in Shiny | Posit
It’s been years since Shiny evolved to allow asynchronous operations within applications, improving scalability. The introduction of the {promises} package enabled concurrent processing between multiple Shiny sessions, a significant step forward in handling background tasks. However, this did not address the need for intra-session concurrency, where users expect to interact with the application while long-running calculations are executed in the background.
Recently, we added a new ExtendedTask feature to Shiny to allow for such intra-session concurrency. This new feature provides a different approach for developers to incorporate asynchronous tasks, enabling smoother user interactions during intensive computations. Alongside ExtendedTask, this talk will also discuss newer methods for launching asynchronous tasks, besides the usual {future} package. The focus will be on the practical application and integration of these features into Shiny applications.
Links mentioned in the video: ⬡ Shiny in Production: Principles, practices, and tools, https://youtu.be/Wy3TY0gOmJw?feature=shared
Timestamps: 0:20 Make your slow code fast 1:43 Long-running operations are a problem 3:28 Inter-session concurrency and intra-session concurrency 4:24 Introducing ExtendedTask 5:17 Demo of a slow API using ExtendedTask 6:13 Slow code example (R) 7:16 Fix slow code with ExtendedTask (R) 8:55 Slow code example (Python) 7:16 Fix slow code with ExtendedTask (Python) 10:46 Links to get started 11:06 ExtendedTask backstory intro 11:28 ExtendedTask vs. Shiny Async 15:50 How reactive programming works in Shiny 21:31 How ExtendedTask works in the reactive process 25:38 What we’re still working on 26:35 {future} alternatives 31:47 Wrapping up

Future of Shiny to the FDA with WebR ✨
For more on How Pharma is Pioneering WebAssembly with webR & Shiny for FDA Clinical Trial Submissions: https://posit.co/blog/webr-fda-pilot/ #positshorts
Using your dataset in Shiny Templates | Carson Sievert | Posit
Watch the Shiny team’s Carson Sievert change the dataset in a Shiny Template.
Find the right template for you at https://shiny.posit.co/py/templates/
0:00 Intro with Carson Sievert
0:19 How to load the template code
1:14 Running your Shiny app in VS Code with a live reloading preview
1:29 How this template works
2:23 See the contents of your data in a data_frame
2:53 How this template imports data
3:33 A more optimized way to import a large amount of data
5:10 Changing the dataset
5:44 Troubleshooting the inevitable errors when changing the dataset


Introducing Shiny for Python Templates | Carson Sievert | Posit
Last month we introduced the Shiny for Python Components and Layouts galleries, which are a simple, visual overview of what Shiny can do, mixed with cheatsheet-like information. They are for new and seasoned users alike.
We’re excited to announce a third section which brings those two things together into opinionated boilerplate code: Shiny Templates. This is just a start… We expect this gallery to grow as time goes on.
These will allow you to hit the ground running, whether you need a quick simple app or a quick complicated one .
Get started at https://shiny.posit.co/py/templates/
0:00 Introduction to Shiny for Python Templates 0:38 How to work with a template locally in VS Code 2:24 Preview your app with the Shiny for Python VS Code Extension 2:45 A data_frame is a quick and easy way to see the contents of your data 4:39 See everything in your window with the “fillable=True” page_opts 5:16 Modifying inputs 7:40 Fix the logic in your @render.plot to show your modified inputs 9:00 Add a component to the sidebar 9:05 How to add input_dark_mode to your app 9:54 How to make your plot change to dark mode as well

Deploying Databricks-backed content on Posit Connect
After you connect to Databricks using sparklyr and create your content, you’ll want to deploy and share your work. With the new pysparklyr::deploy_databricks() function, you can deploy your content to Posit Connect. Run the function and confirm to start deployment. The deploy_databricks() function will gather your document location, credentials, and URLs. It uses this information to deploy to Posit Connect. After it’s done, click the URL to see the deployed content on Posit Connect. Open the content from the publisher view. Click around and check out your work. In Posit Connect, you can edit sharing permissions, create a vanity URL, and more. Open the content URL to see how your work would look to stakeholders.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- Posit Connect: https://posit.co/products/enterprise/connect/
- sparklyr and Databricks Connect v2: https://spark.posit.co/deployment/databricks-connect.html
- Deploying to Posit Connect: https://spark.posit.co/deployment/databricks-posit-connect.html
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
Databricks Pro Driver in Posit Workbench
We’ve added a Databricks driver to our Professional Drivers. The RStudio Connections Pane allows users to connect to their Databricks clusters from the IDE. Select the Databricks driver from the list of available drivers. Select the Driver to establish the connection. The driver can be used with the new databricks() function from the odbc package to connect to Databricks clusters and SQL warehouses.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- RStudio IDE and Posit Workbench 2023.12.0: What’s New: https://posit.co/blog/rstudio-2023-12-0-whats-new/
- Posit Professional Drivers 2024.03.0: Support for Apple Silicon: https://posit.co/blog/pro-drivers-2024-03-0/
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
Databricks Pane in Posit Workbench
We’ve introduced a Databricks Pane in RStudio Pro for discovering and managing Databricks clusters. Users can stay in RStudio Pro without navigating to the Databricks web interface to see their clusters. Click on the ‘Connect to’ icon to open up a new Databricks Connection pop-up. This forms the initial connection to Databricks. Once you click ‘ok’, you will be connected to Databricks.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- RStudio IDE and Posit Workbench 2023.12.0: What’s New: https://posit.co/blog/rstudio-2023-12-0-whats-new/
- Posit Professional Drivers 2024.03.0: Support for Apple Silicon: https://posit.co/blog/pro-drivers-2024-03-0/
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
Databricks Authentication in Posit Workbench
Posit Workbench now has delegated Databricks credentials.
Users can log into a Databricks Workspace when starting an RStudio or VS Code session. Authentication relies on OAuth-backed refresh tokens rather than Personal Access Tokens (PATs). This allows for more granular control over permissions, built-in expiration, and defined scopes. Once logged in, you can interact directly with your Databricks clusters in that Workspace in your preferred environment.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- RStudio IDE and Posit Workbench 2023.12.0: What’s New: https://posit.co/blog/rstudio-2023-12-0-whats-new/
- Posit Professional Drivers 2024.03.0: Support for Apple Silicon: https://posit.co/blog/pro-drivers-2024-03-0/
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
Connecting RStudio and Databricks with sparklyr
You can connect RStudio and Databricks with the sparklyr package.
First, load the necessary packages. Next, set up the connection with sparklyr::spark_connect(). See your data in the Connections pane. Check which databases you’re connected to. Navigate the data structure by expanding the levels. Navigate to the table you want to explore…and analyze your data in RStudio.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- Posit Connect: https://posit.co/products/enterprise/connect/
- sparklyr and Databricks Connect v2: https://spark.posit.co/deployment/databricks-connect.html
- Deploying to Posit Connect: https://spark.posit.co/deployment/databricks-posit-connect.html
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
Connecting RStudio and Databricks with ODBC
The odbc package, in conjunction with a driver, provides DBI support and an ODBC connection.
With the new odbc::databricks_connect function, you can create an ODBC connection to determine and configure the necessary settings to access your Databricks account. Your Databricks HTTP path is the only argument you need to run databricks_connect(). Provide your HTTP path and you will be able to see your Databricks data in the RStudio Connections Pane. Then, you can analyze your data in RStudio.
Learn more:
- Databricks x Posit: https://posit.co/solutions/databricks/
- Empowering R and Python Developers: Databricks and Posit Announce New Integrations: https://posit.co/blog/databricks-and-posit-announce-new-integrations/
- RStudio IDE and Posit Workbench 2023.12.0: What’s New: https://posit.co/blog/rstudio-2023-12-0-whats-new/
- Posit Professional Drivers 2024.03.0: Support for Apple Silicon: https://posit.co/blog/pro-drivers-2024-03-0/
Contact our sales team to schedule a demo: https://posit.co/schedule-a-call/?booking_calendar__c=Databricks
GitHub Copilot on Posit Cloud
Speed up your coding projects in the RStudio IDE on Posit Cloud with GitHub Copilot, an AI coding assistant.
Learn more in our blog post: https://posit.co/blog/github-copilot-on-posit-cloud/
Posit Cloud: https://posit.cloud/ GitHub Copilot: https://github.com/features/copilot RStudio User Guide: https://docs.posit.co/ide/user/ide/guide/tools/copilot.html
You Can Lead a Horse to Water…Changing the Data Science Culture for Veterinary Scientists
Presented by Jill MacKay
A retrospective look at supporting data science skills in a research-focussed veterinary school
This is a talk about environment management, but not in the way you’re thinking. In many industries, domain-specific experts need enough understanding of data science to support their work and communicate with data scientists, but often have insufficient training in these skills, and limited time with which to obtain data science skills and practice them. This is particularly challenging for those who are interdisciplinary and have limited control over their workload, such as medics and field scientists. In this talk, an educational scientist describes the previous 10 years of supporting veterinary scientists to adopt open science practices surrounding data science. What worked, what failed miserably, and reflections on why it can be so hard to get a horse to drink.
Materials:
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Teaching data science. Session Code: TALK-1095
Why You Should Stop Networking and Start Making Friends - posit::conf(2023)
Presented by Libby Heeren
When we think about making connections, we think about networking. I’d like you to forget about networking and start thinking about making friends. I’ll share my perspective as a community builder and host of the Data Humans podcast on how I cultivated a community of practice for myself and how I became a force multiplier who increases engagement.
You’ll learn how I made genuine human connections, the practical steps to making data friends, the power of vulnerability, and why we all benefit when we show up as our whole selves.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1167
Why You Should Add Logging To Your Code (and make it more helpful) - posit::conf(2023)
Presented by Daren Eiri
Learn how the log4r package can help you better understand the errors your code may produce, and how to also get promptly alerted for severe errors by leveraging cloud monitoring solutions like Azure Monitor or AWS CloudWatch
When an error happens in your API, Shiny App, or quarto document, it is not always clear what line of code you need to look at, and the error messages aren’t always helpful. By walking through a simple API example, I show how you can use logging packages like log4r to provide error messages that make sense to you. I also show how you can use cloud-based data collection platforms like Azure Monitor or AWS CloudWatch to set up alerts, so you can get notified by email or text message for those severe errors that you need to be immediately aware of.
Gain more visibility into the health of your code by incorporating logging and pushing your logs to the cloud.
Materials: https://dareneiri.github.io/positconf2023/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1164
What’s New in the Torch Ecosystem - posit::conf(2023)
Presented by Daniel Falbel
torch is an R port of PyTorch, a scientific computing library that enables fast and easy creation and training of deep learning models.
In this talk, you will learn about the latest features and developments in torch, such as luz, a higher-level interface that simplifies your model training code, and vetiver, a new integration that allows you to deploy your torch models with just a few lines of code. You will also see how torch works well with other R packages and tools to enhance your data science workflow. Whether you are new to torch or already an experienced user, this talk will show you how torch can help you tackle your data science challenges and inspire you to build your own models.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1163

What’s New in Quarto?* - posit::conf(2023)
Presented by Charlotte Wickham
It’s been over a year since Quarto 1.0, an open-source scientific and technical publishing system, was announced at rstudio::conf(2022). In this talk, I’ll highlight some of the improvements to Quarto since then. You’ll learn about new formats, options, tools, and ways to supercharge your content. And, if you haven’t used Quarto yet, come to see some reasons to try it out.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (1). Session Code: TALK-1072

What I Wish I Knew Before Becoming a Data Scientist - posit::conf(2023)
Presented by Kaitlin Bustos
In this talk, I’m sharing my personal journey as a data scientist and the key lessons learned along the way. I’ll emphasize the importance of finding a positive community of like minded-allies, persevering through setbacks as success is not linear, and exploring by embracing the broad nature of the data science field. By sharing my experiences and acknowledging the challenges I’ve faced attendees will gain a fresh perspective on what it takes to succeed in a data science career and inspire them to pursue their passions in the field.
Overall, this talk aims to provide a glimpse into the reality of a data science career. Attendees will take away a sense of motivation and empowerment to find their own unique path to success.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1169
What an Early 2000s Reality Show Taught Me about File Management - posit::conf(2023)
Presented by Reiko Okamoto
Clutter, whether it’s physical or digital, destroys our ability to focus; home organization ideas can be extended to create an workspace where analysts feel inspired to work with data.
Ideas from home organization shows are surprisingly applicable to file management. Using a room divider to establish dedicated zones for different activities in a studio apartment is analogous to creating self-contained projects in RStudio. Likewise, swapping mismatched hangers with matching ones to tidy a closet resembles the adoption of a file naming convention to make a directory easier to navigate.
In this talk, I will share good practices in file management through the lens of home organization. We all know that clutter, whether it is in our physical space or on our machine, destroys our ability to focus. These practices will help R users of all levels create a serene, relaxing environment where they feel inspired to work with data.
https://reikookamoto.github.io/; https://github.com/reikookamoto/posit-conf-2023-neat
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Getting %$!@ done: productive workflows for data science. Session Code: TALK-1090
We Converted our Documentation to Quarto - posit::conf(2023)
Presented by Melissa Van Bussel
Elevate your Quarto projects to new heights with these practical tips and tricks!
“Wiki”, “User Guide”, “Handbook” – whatever you call yours, we converted ours to Quarto!
A year ago, my team’s documentation, which had been created using Microsoft Word, was large and lacked version control. Scrolling through the document was slow, and, due to confidentiality reasons, only one person could edit it at a time, which was a significant challenge for our team of multiple developers. After realizing we needed a more flexible solution, we successfully converted our documentation to Quarto.
In this talk, I’ll discuss our journey converting to Quarto, the challenges we faced along the way, and tips and tricks for anyone else who might be looking to adopt Quarto too.
Slides: https://melissavanbussel.quarto.pub/posit-conf-2023; Code for slides: https://github.com/melissavanbussel/posit-conf-2023; My YouTube: https://www.youtube.com/c/ggnot2; My website: https://www.melissavanbussel.com/; My Twitter: https://twitter.com/melvanbussel; My LinkedIn: https://www.linkedin.com/in/melissavanbussel/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (2). Session Code: TALK-1140
Visualizing Data Analysis Pipelines with Pandas Tutor and Tidy Data Tutor - posit::conf(2023)
Presented by Sean Kross
The data frame is a fundamental data structure for data scientists using Python and R. Pandas and the tidyverse are designed to center building pipelines for the transformation of data frames. However, within these pipelines it is not always clear how each operation is changing the underlying data frame. To explain each step in a pipeline data science instructors resort to hand-drawing diagrams to illustrate the semantics of operations such as filtering, sorting, and grouping.
In this talk, I will introduce Pandas Tutor and Tidy Data Tutor, step-by-step visual representation engines of data frame transformations. Both tools illustrate the row, column, and cell-wise relationships between an operation’s input and output data frames.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Teaching data science. Session Code: TALK-1096
Validating and Testing R Dataframes with Pandera via reticulate - R-Python Interoperability
Presented by Niels Bantilan
Original Full Title: Validating and Testing R Dataframes with Pandera via reticulate: A Case Study in R-Python Interoperability
Data science and machine learning practitioners work with data every day to analyze and model them for insights and predictions. A major component of any project is data quality, which is a process of cleaning, and protecting against flaws in data that may invalidate the analysis or model. Pandera is an open source data testing toolkit for dataframes in the Python ecosystem: but can it validate R dataframes?
This talk is composed of three parts: first I’ll describe what data testing is and motivate why you need it. Then, I’ll introduce the iterative process of creating and refining dataframe schemas in Pandera. Finally, I’ll demonstrate how to use it in R with the reticulate package using a simple modeling exercise as an example.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: R or Python? Why not both!. Session Code: TALK-1123
Using R, Python, and Cloud Infrastructure to Battle Aquatic Invasive Species - posit::conf(2023)
Presented by Uli Muellner and Nicholas Snellgrove
Invasive species are a huge threat to lake ecosystems in Minnesota. With over 10,000 water bodies across the state, having up-to-date data and decision support is critical. Researchers at the University of Minnesota have created four complex R and Python models to support lake managers, all pulled together and presented with the most recent infestation data available.
Come along with us to see how we connected these models in the AIS Explorer, a decision support application built in Shiny to help prioritize risks and placing watercraft inspectors, using tools like OCPU and cloud toolings like Lambda, EventBridge and AWS S3.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: R or Python? Why not both!. Session Code: TALK-1118
Using R with Databricks Connect - posit::conf(2023)
Presented by Edgar Ruiz
Spark Connect, and Databricks Connect, enable the ability to interact with Spark stand-alone clusters remotely. This improves our ability to perform Data Science at-scale. We will share the work in sparklyr, and other products, that will make it easier for R users to take advantage this new framework.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Tidy up your models. Session Code: TALK-1084

Using R to develop production modeling workflows at Mayo Clinic - posit::conf(2023)
Presented by Brendan Broderick
Developing workflows that help train models and also help deploy them can be a difficult task. In this talk I will share some tools and workflow tips that I use to build production model pipelines using R. I will use a project of predicting patients who need specialized respiratory care after leaving the ICU as an example. I will show how to use the targets package to create a reproducible and easy to manage modeling and prediction pipeline, how to use the renv package to ensure a consistent environment for development and deployment, and how to use plumber, vetiver, and shiny applications to make the model accessible to care providers.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Leave it to the robots: automating your work. Session Code: TALK-1149
Using Data to Protect Traditional Lifeways - posit::conf(2023)
Presented by Angie Reed
The spirit of Penobscot Nation’s work to protect the health of their relative, the Penobscot River, is embodied in the Penobscot water song which says ““Water, we love you, thank you so much water, we respect you.”” Because the Penobscot River is not a natural resource - she is a relative, family - this song describes the foundation of our efforts to protect her health and well-being. The identity of Penobscot people cannot be disconnected from the river, and protecting this traditional lifeway is at the heart of our work.
For over a decade we have used R to manage, transform, analyze, and visualize data, and the free, open-source Posit products help us leave a legacy of good data management and the ability to share results with Penobscot Nation citizens. You will learn more about how our use of R has helped us achieve more stringent protections for the Penobscot River and how we engage young people in every step of this work. We are also part of a larger network of tribal environmental professionals, working together to learn R and share data and insights. We will give you information about how you can volunteer to help expand the network of folks providing technical assistance on any R and RStudio related topics.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: End-to-end data science with real-world impact. Session Code: TALK-1144
USGS R Package Development: 10-year Reflections - posit::conf(2023)
Presented by Laura DeCicco
Ten years ago, the first set of git commits was submitted to a new R software package repository “dataRetrieval” with the goal to provide an easy way for R users to retrieve U.S Geological Survey (USGS) water data. At that time, the perception within the USGS was the use of R was exclusive to an elite group of “very serious scientists.” Fast forward, we now find many newer USGS hires having a solid grasp of the language from the start along with the use of R in a wide variety of applications.
In this talk, I’ll discuss my experiences maintaining the dataRetrieval package, how it’s shaped my career, impacted USGS R usage, and why data providers should consider sponsoring their own R packages wrapping their data API services.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1171
Unlock the Power of DataViz Animation and Interactivity in Quarto - posit::conf(2023)
Presented by Deepsha Menghani
Plot animated and interactive visualizations with Plotly and Crosstalk in Quarto using R. In thi sintro to Plotly & Crosstalk in R: Using code examples, learn to integrate dashboard elements into Quarto with animated plots, interactive widgets (checkboxes), and linked plots via brushing.
This talk showcases how to use packages, such as Plotly and Crosstalk, to create interactive data visualizations and add dashboard-like elements to Quarto. Using a fun dataset available through the “Richmondway” package, we examine the number of times Roy Kent uses salty language throughout all seasons of ““Ted Lasso.”” We illustrate this using animated plots, interactive selection widgets such as checkboxes, and by linking two plots with brushing capabilities.
Materials:
- Slides: https://deepshamenghani.github.io/posit_plotly_crosstalk/#/title-slide
- Code repo: https://github.com/deepshamenghani/posit_plotly_crosstalk
- Richmondway data package: https://github.com/deepshamenghani/richmondway
- In-Depth Guide to Creating and Publishing an R Data Package (Richmondway) Using Devtools: https://medium.com/p/245b0fd4c359
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (2). Session Code: TALK-1143
Towards the Next Generation of Shiny UI
Presented by Carson Sievert
Create awesome looking and feature rich Shiny dashboards using the bslib R package.
Shiny recently celebrated its 10th birthday, and since its birth, has grown tremendously in many areas; however, a hello world Shiny app still looks roughly like it did 10 years ago. The bslib R package helps solve this problem making very easy to apply modern and customizable styling your Shiny apps, R Markdown / Quarto documents, and more. In addition, bslib also provides dashboard-focused UI components like expandable cards, value boxes, sidebar layouts, and more to help you create delightful Shiny dashboards.
Materials:
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Shiny user interfaces. Session Code: TALK-1124

tidymodels: Adventures in Rewriting a Modeling Pipeline - posit::conf(2023)
Presented by Ryan Timpe
An overview of the benefits unlocked on our data science team by adopting tidymodels.
Data science sure has changed over the past few years! Everyone’s talking about production. RStudio is now Posit. Models are now tidy.
This talk is about embracing that change and updating existing models using the tidymodels framework. I recently completed this change, letting go of our in-production code and revisioning it with tidymodels. My team ended up with a faster, more scalable pipeline that enabled us to better automate our workflow and increase our scale while improving our stakeholders’ experiences.
I’ll share tips and tricks for adopting the tidymodels framework in existing products, best practices for learning and upskilling teams, and advice for using tidymodel packages to build more accessible data science tools.
Materials: https://www.ryantimpe.com/files/tidymodels_adventures_positconf2023.pdf
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Tidy up your models. Session Code: TALK-1082
The Road to Easier Shiny App Deployments - posit::conf(2023)
Presented by Liam Kalita
We’re often helping developers to assess, fix and improve their Shiny apps, and often the first thing we do is see if we can deploy the app. If you can’t deploy your Shiny app, it’s a waste of time. If you can deploy it successfully, then at the very least it runs, so we’ve got something to work with.
There are a bunch of reasons why apps fail to deploy. They can be easy to fix, like Hardcoded secrets, fonts, or missing libraries. Or they can be intractable and super frustrating to deal with, like manifest mismatches, resource starvation, and missing libraries.
At the end of this talk, I want you to know how to identify, investigate and proactively prevent Shiny app deployment failures from happening.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: The future is Shiny. Session Code: TALK-1089
The Power of Prototyping in R Shiny: Saving Millions by Building the Right Tool - posit::conf(2023)
Presented by Maria Grycuk
The development of software can be costly and time-consuming. If the end users are not involved in the process from the start the tool we built may not meet their needs. In this presentation, I will discuss how prototyping in Shiny can help you build the right tool and save you from spending millions of dollars on a tool no one will use. I will explore the advantages of using Shiny for prototyping, particularly its ability to rapidly build interactive applications. I will also discuss how to design effective prototypes, including techniques for gathering user feedback and using that feedback to refine your tool. I will emphasize the importance of presenting real-life data, particularly when building data-driven tools.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Shiny user interfaces. Session Code: TALK-1125
The People of Posit: Bringing Personality to R Packages - posit::conf(2023)
Presented by JP Flores and Sarah Parker
The R programming language offers the versatility to perform statistical analyses, create publication-ready plots, and render high-quality reports and presentations. Despite having this environment of indispensable tools, it can be daunting for a beginner-level programmer to get started. Luckily, the Posit community is one of a kind and values inclusivity, collaboration, and empathy. By putting a face to the R packages we use on a daily basis, we hope to make every programmer feel included and capable. We want to inspire attendees to create their own projects or packages, connect with others inside and outside of their field of expertise, and challenge themselves to learn something new, knowing the community is right there to support them.
Materials: http://www.sarmapar.com/people_of_posit/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1165
The Need for Speed - AccelerateR-ing R Adoption in GSK - posit::conf(2023)
Presented by Ben Arancibia
How does a risk-averse Pharma Biostatistics organization with 900+ people switch from using proprietary software to using R and other open-source tools for delivering clinical trial submissions? First slowly, then all at once. GSK started the transition of using R for its clinical trial data analysis in 2020 and now uses R for our regulatory-reviewed outputs. The AccelerateR Team, an agile pod of R experts and data scientists, rotates through GSK Biostatistics study teams sitting side by side to answer questions and mentor during this transition.
We will share our experience from AccelerateR and how other organizations can use our learnings to scale R from pilots to full enterprise adoption and contribute to open source industry R packages.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Pharma. Session Code: TALK-1068
The ‘I’ in Team: Peer-to-Peer Best Practices for Growing Data Science Teams - posit::conf(2023)
Presented by Liz Roten
R users don’t always come in sets. Often, you may be the only user on in the cubicle-block. But, one miraculous day, your manager finally fills the void and you welcome more folks on your team. Suddenly, the little R system you created to suit your needs, like a custom package, code styling, and file organization, isn’t just for you.
Want to suddenly overhaul that one package you wrote two years ago? It probably won’t work when your colleagues try to update it.
Your new teammates are data.table fans, but you prefer the tidyverse. Do you need to refactor? Are style choices, like indentation important when collaborating, or are you just being persnickety?
In this talk, you will learn how to bring new teammates on board and blend your respective styles without pulling your hair out.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Building effective data science teams. Session Code: TALK-1063
Thanks, I Made It with Quartodoc - posit::conf(2023)
Presented by Isabel Zimmerman
When Python package developers create documentation, they typically must choose between mostly auto-generated docs or writing all the docs by hand. This is problematic since effective documentation has a mix of function references, high-level context, examples, and other content.
Quartodoc is a new documentation system that automatically generates Python function references within Quarto websites. This talk will discuss pkgdown’s success in the R ecosystem and how those wins can be replicated in Python with quartodoc examples. Listeners will walk away knowing more about what makes documentation delightful (or painful), when to use quartodoc, and how to use this tool to make docs for a Python package.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science with Python. Session Code: TALK-1139

Teaching Data Science in Adverse Circumstances: Posit Cloud and Quarto to the Rescue - posit::conf
Presented by Aleksander Dietrichson
The focus of this presentation is on the challenges faced by teachers of data science whose students are not quantitatively inclined and may face some adversity in terms of technology resources available to them and potential language barriers. I identify three main areas of challenges and show how at Universidad Nacional de San Martín (Argentina) we addressed each of the areas through a combination of original curriculum redesign, production of course materials appropriate for the students in question; and the use of OS, and some Posit products, i.e.:posit.cloud and Quarto. I show how these technologies can be used as a pedagogical tool to overcome the challenges mentioned, even on a shoestring budget.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Teaching data science. Session Code: TALK-1094
Take it in Bits: Using R to Make Eviction Data Accessible to the Legal Aid Community - posit::conf
Presented by Logan Pratico
One in five low-income renter households in the US experienced falling behind on rent or being threatened with eviction in 2021. Yet most are unrepresented when facing eviction in court. The complex and fast-paced legal system obscures access to timely information, leaving tenants without assistance.
In this talk, I discuss the Civil Court Data Initiative’s use of R alongside AWS Cloud and SQL to analyze disaggregate eviction records. I focus on the integration of RMarkdown with Amazon Athena and EC2 to create weekly eviction reports across 20 states for legal aid groups working to assist tenants. The upshot: accessible eviction data to help legal aid providers better address local legal needs.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: End-to-end data science with real-world impact. Session Code: TALK-1146
Sustainable Growth of Global Communities: R-Ladies’ Next Ten Years - posit::conf(2023)
Presented by Riva Quiroga
In this talk we share how good programming practices inspire the way we manage the R-Ladies community in order to make it sustainable.
R-Ladies’ first ten years were about growing the community: from being just one chapter in 2012 to becoming a global organization in 2016, and now fostering more than 230 chapters worldwide. But how can we face the challenges of growing an organization based solely on volunteer work?
In this talk, we discuss how good programming practices –such as modularity, refactoring, and testing– inspire the way we see the sustainable management of an ever-growing community. To that end, we will present our most recent efforts at creating and documenting workflows, distributing the workload, and automating tasks that allow volunteers to focus their time where it is most needed.
After watching this talk, you will get some ideas on how to support volunteers in your own community or project, and on how to use GitHub Actions to automate workflows and tasks.
Learn more and join at: https://rladies.org/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: It takes a village: building and sustaining communities. Session Code: TALK-1128
Succeed in the Life Sciences with R/Python and the Cloud - posit::conf(2023)
Presented by Colby Ford
This talk covers best practices and lessons learned surrounding the use of R and Python by technical teams in the cloud, focusing on Posit Workbench, Azure ML, and Databricks.
In the life sciences, whether it’s pharma, biotech, research, or another type of organization, we are unique in that we blend scientific knowledge with technical skills to extract insights from large, complex datasets. In the cloud, we can architect solutions to help us scale, automate, and collaborate. Interestingly, the use of R and Python by bioinformatics, genomics, biostatistics, and data science teams can be challenging in a cloud-first world where all the data is somewhere other than your laptop (like a data lake).
In this talk, I will share best practices and lessons learned surrounding the use of R and Python by technical teams in the cloud. We’ll focus on the use of Posit Workbench and RStudio on various cloud services such as Azure ML and Databricks.
Tuple, The Cloud Genomics Company: https://tuple.xyz
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Pharma. Session Code: TALK-1069
Styling and Templating Quarto Documents - posit::conf(2023)
Presented by Emil Hvitfeldt
Quarto is a powerful engine to generate documents, slides, books, websites, and more. The default aesthetics looks good, but there are times when you want and need to change how they look. This is that talk.
Whether you want your slides to stand out from the crowd, or you need your documents to fit within your corporate style guide, being able to style Quarto documents is a valuable skill.
Once you have persevered and created the perfect document, you don’t want the effort to go to waste. This is where templating comes in. Quarto makes it super easy to turn a styled document into a template to be used over and over again.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Compelling design for apps and reports. Session Code: TALK-1106

Speeding Up Plots in R/Shiny - posit::conf(2023)
Presented by Ryszard Szymański
A slow plots can ruin the user experience of our dashboard. This talk covers techniques for speeding up the rendering process of our visualisations.
Slow dashboards lead to a poor user experience and cause users to lose interest, or even become frustrated. A common culprit of this situation is a slowly rendering plot.
During the talk, we will dive deeper into how plots are rendered in Shiny, identify common bottlenecks that can occur during the rendering process, and learn various techniques for improving the speed of plots in R/Shiny dashboards.
These techniques will range from more efficient data processing to library-specific optimisations at the browser level.
Materials: I’d like to include a link to my linkedin profile: https://www.linkedin.com/in/ryszard-szyma%C5%84ski-310a7017a/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1172
Solving a Secure Geocoding Problem (That Hardly Anybody Has) - posit::conf(2023)
Presented by Tesla DuBois
Due to data security concerns, the strictest health researchers won’t send patient addresses to remote servers for geocoding. The only existing methods for offline geocoding are expensive, cumbersome, or require working with code - all limiting factors for many researchers. So, a couple of classmates and I made a standalone desktop application using shell, Docker, PostGIS, and Python to geocode addresses through a simple GUI without ever sending them off the local machine. Come for the technical ins and outs and stay for the anecdotes about how my R background played into the daunting, frustrating, but ultimately successful task of creating a data science tool using unfamiliar technologies.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Developing your skillset; building your career. Session Code: TALK-1111
Small Package, Broad Impact: How I Discovered the Ultimate New Hire Hack - posit::conf(2023)
Presented by Trang Le
Onboarding new hires can be a challenging process, but taking a problem-focused approach can make it more meaningful and rewarding. In this talk, I will share how I discovered the ultimate new hire hack by creating two small packages that gave me the confidence I needed when I started at BMS. Through building these packages, I not only learned R things like using bslib and making font files available for published dashboards, but also gained a deep understanding of my company’s internal systems and workflows, and connected with my team via lots of questions. The resulting packages are still heavily used today.
Join me to discover how small packages can have a broad impact and what hiring managers can do to help.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Developing your skillset; building your career. Session Code: TALK-1112
Siuba and duckdb: Analyzing Everything Everywhere All at Once - posit::conf(2023)
Presented by Michael Chow
Every data analysis in Python starts with a big fork in the road: which DataFrame library should I use?
The DataFrame Decision locks you into different methods, with subtly different behavior::
- different table methods (e.g. polars
.with_columns()vs pandas.assign()) - different column methods (e.g. polars
.map_dict()vs pandas.map())
In this talk, I’ll discuss how siuba (a dplyr port to python) combines with duckdb (a crazy powerful sql engine) to provide a unified, dplyr-like interface for analyzing a wide range of data sources‚ whether pandas and polars DataFrames, parquet files in a cloud bucket, or pins on Posit Connect.
Finally, I’ll discuss recent experiments to more tightly integrate siuba and duckdb.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Databases for data science with duckdb and dbt. Session Code: TALK-1101

Side Effects of a Year of Blogging - posit::conf(2023)
Presented by Millie Symns
A big part of being in the R community is sharing your knowledge in different forums, no matter how big or small. So what better way to do that than a blog? And what better way than using R and Posit products to build and maintain that blog and website? This was the route I took to challenge myself in putting myself out there more in the community to find my voice, share my knowledge and learn new things.
In this talk, I will reflect on lessons learned and gains I have spent the past year blogging and sharing my website for all to see. The side effects include professional and personal benefits - from a clear profile of my skills to the progression of the development of my art. You may leave inspired to try the challenge for yourself.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: It takes a village: building and sustaining communities. Session Code: TALK-1130
ShinyUiEditor: From Alpha to Powerful Shiny App Development Tool - posit::conf(2023)
Presented by Nick Strayer
Since its alpha debut at last year’s conference, the ShinyUiEditor has experienced continuous development, evolving into a powerful tool for crafting Shiny app UIs. Some key enhancements include the integration of new bslib components and the editor’s ability to create or navigate to existing server bindings for inputs and outputs.
In addition to new features, the editor is now available as a VSCode extension enabling it to integrate smoothly into more developers’ workflows. This talk will showcase how these new capabilities empower users to efficiently create visually appealing and production-ready applications with ease.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Shiny user interfaces. Session Code: TALK-1126

Shiny New Tools for Scaling your Shiny Apps - posit::conf(2023)
Presented by Joe Kirincic
So you have a Shiny app your org loves, but as adoption grows, performance starts getting sluggish. Profiling reveals your cool interactive plots are the culprit. What can you do to make things snappy again? We can increase the number of app instances, sure, but suppose that isn’t an option for us. Another approach is to shift the plotting work from the server onto the client.
In this talk, we’ll learn how to leverage two Javascript projects, DuckDB-WASM and Observable’s Plot.js, in our Shiny app to create fast, flexible interactive visualizations in the browser without burdening our app’s server function. The end result is an app that can scale to more users without needing to increase compute resources.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: The future is Shiny. Session Code: TALK-1088
Shiny for Python Machine Learning Apps with pandas, scikit-learn and TensorFlow - posit::conf(2023)
Presented by Chelsea Parlett-Pelleriti
With the introduction of Shiny for Python in 2022, users can now use the power of reactivity with their favorite Python packages. Shiny can be used to build interactive reports, dashboards, and web apps, that make sharing insights and results both simple and dynamic. This includes apps to display and explore popular Machine Learning models built with staple Python packages like pandas, scikit-learn, and TensorFlow. This talk will demonstrate how to build simple Shiny for Python apps that interface with these packages, and discuss some of the benefits of using Shiny for Python to build your web apps.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: The future is Shiny. Session Code: TALK-1087
Shiny Developer Secrets: Insights From Over 1200 Applicants and What You MUST Know to Shine
Presented by Vedha Viyash
Over 1,200 candidates applied for the R/Shiny developer role at Appsilon in the last year, and I will be sharing some insights that we have gained from going through the qualitative and quantitative feedback collected from every round of the interview process.
I will be sharing some key takeaways that would help you focus on things that will make you a better Shiny developer. From reactivity to software testing, there are multiple skills that make up a good Shiny developer and you will get to know the major gaps and how to focus on them.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1173
Serenity Now, Productivity Later: Focus Your Project Stack with The Gonzalez Matrix - posit::conf
Presented by Patrick Tennant
How should you respond when your boss has too many good ideas for data science projects? In this talk, I’ll review our use of an adapted version of the Eisenhower Matrix that lays out our projects according to the effort required and the value they will produce. Given the functionally unlimited number of data science projects a team could do, learn how we keep our team focused on valuable work while reducing the stress of a never-ending list of projects.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Building effective data science teams. Session Code: TALK-1065
Scale Your Data Validation Workflow With {pointblank} and Posit Connect - posit::conf(2023)
Presented by Michael Garcia
For the Data Services team at Medable, our number one priority is to ensure the data we collect and deliver to our clients is of the highest quality. The {pointblank} package, along with Posit Connect, modernizes how we tackle data validation within Data Services.
In this talk, I will briefly summarize how we develop test code with {pointblank}, share with {pins}, execute with {rmarkdown}, and report findings with {blastula}. Finally, I will show how we aggregate data from test results across projects into a holistic view using {shiny}.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Leave it to the robots: automating your work. Session Code: TALK-1058
Running R-Shiny without a Server - posit::conf(2023)
Presented by Joe Cheng
A year ago, Posit announced ShinyLive, a deployment mode of Shiny that lets you run interactive applications written in Python, without actually running a Python server at runtime. Instead, ShinyLive turns Shiny for Python apps into pure client-side apps, running on a pure client-side Python installation.
Now, that same capability has come to Shiny for R, thanks to the webR project.
In this talk, I’ll show you how you can get started with ShinyLive for R, and why this is more interesting than just cheaper app hosting. I’ll talk about some of the different use cases we had in mind for ShinyLive, and help you decide if ShinyLive makes sense for your app.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: I can’t believe it’s not magic: new tools for data science. Session Code: TALK-1151

Reproducible Manuscripts with Quarto - posit::conf(2023)
Presented by Mine Çetinkaya-Rundel
In this talk, we present a new capability in Quarto that provides a straightforward and user-friendly approach to creating truly reproducible manuscripts that are publication-ready for submission to popular journals. This new feature, Quarto manuscripts, includes the ability to produce a bundled output containing a standardized journal format, source documents, source computations, referenced resources, and execution information into a single bundle that is ingested into journal review and production processes. We’ll demo how Quarto manuscripts work and how you can incorporate them into your current manuscript development process as well as touch on pain points in your current workflow that Quarto manuscripts help alleviate.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (1). Session Code: TALK-1070

Reliable Maintenance of Machine Learning Models - posit::conf(2023)
Presented by Julia Silge
Maintaining machine learning models in production can be quite different from maintaining general software projects, because of the unique statistical characteristics of ML models.
In this talk, learn about model drift, the different ways the word “performance” is used with models, what you can monitor about a model, how feedback loops impact models, and how you can use vetiver to set yourself up for success with model maintenance. This talk will help practitioners who are already deploying models, but this is also useful knowledge for practitioners earlier in their MLOps journey; decisions made along the way can make the difference between resilient models that are easier to maintain and disappointing or misleading models.
Materials: https://github.com/juliasilge/ml-maintenance-2023
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Tidy up your models. Session Code: TALK-1083

R! You Going?! - posit::conf(2023)
Presented by SherAaron Hurt
3 things to remember when starting your journey to become a data scientist
Everyone will have a different journey when becoming a data scientist. However, there are a few tips to consider to make the journey less daunting and more enjoyable. Listen, as I tell my story as a data scientist and offer resources and tips to build confidence for those who are new to their journey. The tools are available however, it is not always easy to find them.
keywords: openscience, The Carpentries, R programming language, GPS, data science journey, data science resources
Materials:
- https://www.linkedin.com/in/sheraaronhurt/
- carpentries.org/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Teaching data science. Session Code: TALK-1097
R Not Only In Production - posit::conf(2023)
Presented by Kara Woo
I will share what our team has learned from successfully integrating R in all areas of our company’s operations. InsightRX is a precision medicine company whose goal is to ensure that each patient receives the right drug at the optimal dose. At InsightRX, R is a first-class language that’s used for purposes ranging from customer-facing products to internal data infrastructure, new product prototypes, and regulatory reporting. Using R in this way has given us the opportunity to forge fruitful collaborations with other teams in which we can both learn and teach.
Join me as I share how the skills of data science and engineering can complement each other to create better products and greater impact.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: R Not Only In Production. Session Code: KEY-1108
Quickly get your Quarto HTML theme in order - posit::conf(2023)
Presented by Greg Swinehart
A 5-minute talk to discuss how I’ve used Quarto and Bootstrap variables to quickly make Shiny’s new website look as it should. The Quarto user I have in mind works at an organization with specific brand guidelines to follow. I‚ will discuss how to set up your theme, show some key Quarto settings, and how Bootstrap‚ Sass variables are your best friend.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1170

Parameterized Quarto Reports Improve Understanding of Soil Health - posit::conf(2023)
Presented by Jadey Ryan
Learn how to use R and Quarto parameterized reporting in this four-step workflow to automate custom HTML and Word reports that are thoughtfully designed for audience interpretation and accessibility.
Soil health data are notoriously challenging to tidy and effectively communicate to farmers. We used functional programming with the tidyverse to reproducibly streamline data cleaning and summarization. To improve project outreach, we developed a Quarto project to dynamically create interactive HTML reports and printable PDFs. Custom to every farmer, reports include project goals, measured parameter descriptions, summary statistics, maps, tables, and graphs.
Our case study presents a workflow for data preparation and parameterized reporting, with best practices for effective data visualization, interpretation, and accessibility.
Talk materials: https://jadeyryan.com/talks/2023-09-25_posit_parameterized-quarto/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Elevating your reports. Session Code: TALK-1160
Package Management for Data Scientists - posit::conf(2023)
Presented by Tyler Finethy
In my talk, “Package Management for Data Scientists,” we will discuss software dependencies for R and Python and the common issues faced during package installations. I will begin with an overview of package management, highlighting its crucial role in data science. We’ll then focus on practical strategies to prevent dependency errors and address effective troubleshooting when these problems occur. Lastly, we will look towards the future, discussing potential package management improvements, focusing on reproducibility and accessibility for those new to the field.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Managing packages. Session Code: TALK-1081
Open Source Solutions to Next-Generation Submissions, After 30 Years of Industry Experience
Presented by Mike K Smith
The pharmaceutical industry is undergoing rapid change, driven by a desire from both industry and regulatory agencies to move to more interactive visualizations and web applications to review data and make decisions. These changes would have been unthinkable 30 years ago when I started working at Pfizer.
In this talk, I’ll consider the drivers for these changes, how open-source tools can help achieve this, and why collaboration across the industry is vital to achieving this goal. I’ll contrast this with my experience of 30 years working in the pharma industry - when the R language had only just been released, when the internet was new, and when submissions to agencies were printed out, loaded onto trucks, and shipped to their doors.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Pharma. Session Code: TALK-1067
Open Source Property Assessment: Tidymodels to Allocate $16B in Property Taxes - posit::conf(2023)
Presented by Nicole Jardine and Dan Snow
How the Cook County Assessor’s Office uses R and tidymodels for its residential property valuation models.
The Cook County Assessor’s Office (CCAO) determines the current market value of properties for the purpose of property taxation. Since 2020, the CCAO has used R, tidymodels, and LightGBM to build predictive models that value Cook County’s 1.5 million residential properties, which are collectively worth over $400B. These predictive models are open-source, easily replicable, and have significantly improved valuation accuracy and equity over time.
Join CCAO Chief Data Officer Nicole Jardine and Director of Data Science Dan Snow as they walk through the CCAO’s modeling process, shares lessons learned, and offer a sneak peek at changes planned for the 2024 reassessment of Chicago.
Materials: https://github.com/ccao-data
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: End-to-end data science with real-world impact. Session Code: TALK-1147
Oops I’m a Manager - On More Effective 1-on-1 Meetings - posit::conf(2023)
Presented by Andrew Holz
As a team leader (accidental or not), it’s easy to get caught up in the daily grind and overlook the importance of 1-on-1s. Bad idea. 1-on-1s are critical for building trust, providing feedback, and ensuring that everyone is on the same page.
Keys to good 1-on-1s start with a small amount of prep and a running shared document of notes and takeaways. Another key is to rotate types of 1-on-1s. Possibilities include “heads down” on recent work, “heads up” looking further out, and career-focused sessions. After some tips on the right sort of questions and uncovering sneaky issues, I will also touch on effective feedback.
I will share resources and hope to include Seussian visuals and a few poetic lines to help the key points stick.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Building effective data science teams. Session Code: TALK-1064

Never again in outer par mode: making next-generation PDFs with Quarto & typst - posit::conf(2023)
Presented by Carlos Scheidegger
Quarto 1.4 will introduce support for Typst. Typst is a brand-new open-source typesetting system built from scratch to support the lessons we have learned over almost half a century of high-quality computer typesetting that TeX and LaTeX have enabled. If you’ve ever had to produce a PDF with Quarto and got stuck handling an inscrutable error message from LaTeX, or wanted to create a new template but were too intimated by LaTeX’s arcane syntax, this talk is for you. I’ll show you why we need an alternative for TeX and LaTeX , and why it will make Quarto even better.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (2). Session Code: TALK-1142

Motley Crews: Collaborating with Quarto - posit::conf(2023)
Presented by Susan McMillan, Wyl Schuth, and Michael Zenz
Adoption of Quarto for document creation has transformed the collaborative workflow for our small higher-education analytics team. Historically, content experts wrote in Word documents and data analysts used R for statistics and graphics. Specialization in different software tools created challenges for producing collaborative analytic reports, but Quarto has solved this problem. We will describe how we use Quarto for writing and editing text, embedding statistical analysis and graphics, and producing reports with a standard style in multiple formats, including web pages.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Elevating your reports. Session Code: TALK-1157
Matching Tools to Titans: Tailoring Posit Workbench for Every Cloud - posit::conf(2023)
Presented by James Blair
In an era of diverse cloud platforms, leveraging tools effectively is paramount. This talk highlights the adaptability of Posit Workbench within leading cloud platforms. Delve into strategic integrations, understand key challenges, and uncover practical solutions. By the end, attendees will be equipped with insights to harness Posit Workbench’s capabilities seamlessly across varied cloud environments.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science infrastructure for your org. Session Code: TALK-1115
Making a (Python) Web App is easy! - posit::conf(2023)
Presented by Marcos Huerta
Making Python Web apps using Dash, Streamlit, and Shiny for Python
This talk describes how to make distribution-free prediction intervals for regression models via the tidymodels framework.
By creating and deploying an interactive web application you can better share your data, code, and ideas easily with a broad audience. I plan to talk about several Python web application frameworks, and how you can use them to turn a class, function, or data set visualization into an interactive web page to share with the world. I plan to discuss building simple web applications with Plotly Dash, Streamlit, and Shiny for Python.
Materials:
- Comprehensive talk notes here: https://marcoshuerta.com/posts/positconf2023/
- https://www.tidymodels.org/learn/models/conformal-regression/
- https://probably.tidymodels.org/reference/index.html#regression-predictions
Corrections: In my live remarks, I said a Dash callback can have only one output: that is not correct, a Dash callback can update multiple outputs. I was trying to say that a Dash output can only be updated by one callback, but even that is no longer true as of Dash 2.9. https://dash.plotly.com/duplicate-callback-outputs""
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: The future is Shiny. Session Code: TALK-1086
Magic with WebAssembly and webR - posit::conf(2023)
Presented by George Stagg
Earlier this year the initial version of webR was released and users have begun building new interactive experiences with R on the web. In this talk, I’ll discuss webR’s TypeScript library and what it is able to do. The library allows users to interact with the R environment directly from JavaScript, which enables manipulation tricks that seem like magic. I’ll begin by describing how to move objects from R to JS and back again, and discuss the technology that makes this possible. I’ll continue with more advanced manipulation, such as invoking R functions from JS and talk about why you might want to do so. Finally, I’ll describe how messages are sent over webR’s communication channel and explain how this enables webR to work with Shinylive.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: I can’t believe it’s not magic: new tools for data science. Session Code: TALK-1152

Large Language Models in RStudio - posit::conf(2023)
Presented by James Wade
Large language models (LLMs), such as ChatGPT, have shown the potential to transform how we code. As an R package developer, I have contributed to the creation of two packages – gptstudio and gpttools – specifically designed to incorporate LLMs into R workflows within the RStudio environment.
The integration of ChatGPT allows users to efficiently add code comments, debug scripts, and address complex coding challenges directly from RStudio. With text embedding and semantic search, we can teach ChatGPT new tricks, resulting in more precise and context-aware responses. This talk will delve into hands-on examples to showcase the practical application of these models, as well as offer my perspective as a recent entrant into public package development.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: I can’t believe it’s not magic: new tools for data science. Session Code: TALK-1154
It’s All About Perspective: Making a Case for Generative Art - posit::conf(2023)
Presented by Meghan Santiago Harris
This talk explores how to create art in the R language while highlighting some similarities between the skills required for creating generative art and those needed to perform data science tasks in R.
Because the field of data science is inherently task-oriented, it is no wonder that most people struggle to see the utility of generative art past the bounds of a casual hobby. This talk will invite the participant to learn about generative art while focusing on ““why”” people should create it and its potential place in data science. This talk is suitable for all disciplines and artistic abilities. Furthermore, this talk will aim to expand the participant’s perspective on generative art with the following concepts:
- What is generative art and how can it be created in R or Python
- Justifications for generative art within Data Science
- Examples of programming skills that are transferrable between generative art and pragmatic data science projects
Materials:
- Link to the talk repo: https://github.com/Meghansaha/a_case_for_genart
- Link to the slides: https://meghansaha.github.io/a_case_for_genart/#/title-slide
- Link to the artpack package site: https://meghansaha.github.io/artpack/
- Personal Site: https://thetidytrekker.com/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Developing your skillset; building your career. Session Code: TALK-1109
It’s Abstractions All the Way Down… - posit::conf(2023)
Presented by JD Long
Abstractions rule everything around us. JD Long talks about abstractions from the board room to the silicon.
Over 20 years ago Joel Spolsky famously wrote, “All non-trivial abstractions, to some degree, are leaky.” Unsurprisingly this has not changed. However, we have introduced more and more layers of abstraction into our workflows: Virtual Machines, AWS services, WASM, Docker, R, Python, data frames, and on and on. But then on top of the computational abstractions we have people abstractions: managers, colleagues, executives, stakeholders, etc.
JD’s presentation will be a wild romp through the mental models of abstractions and discuss how we, as technical analytical types, can gain skill in traversing abstractions and dealing with leaks.
Materials: https://github.com/CerebralMastication/Presentations/tree/master/2023_posit-conf
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: It’s abstractions all the way down …. Session Code: KEY-1161
It’s a Great Time to be an R Package Developer! - posit::conf(2023)
Presented by Jenny Bryan and Hadley Wickham
(Due to unforeseen circumstances, Hadley Wickham presented this talk “slide karaoke” style, from materials prepared by Jenny Bryan.)
In R, the fundamental unit of shareable code is the package. As of March 2023, there were over 19,000 packages available on CRAN. Hadley Wickham and I recently updated the R Packages book for a second edition, which brought home just how much the package development landscape has changed in recent years (for the better!).
In this talk, I highlight recent-ish developments that I think have a great payoff for package maintainers. I’ll talk about the impact of new services like GitHub Actions, new tools like pkgdown, and emerging shared practices, such as principles that are helpful when testing a package.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Package development. Session Code: TALK-1132


Insights in 5-D! (Using magic small-multiples layouts) - posit::conf(2023)
Presented by Matt Dzugan
Using Small-Multiples (faceted graphs) is an effective way to compare patterns across many dimensions. In this talk, I’ll walk you through some ways to lay out your individual facets according to the underlying data. For example, maybe each facet represents a city or point on a 2D plane - we’ll explore ways to organize facets in a grid that mimics the data itself - unlocking your ability to explore patterns in 4+ dimensions. Other solutions to this problem rely on manually-curated lists that map common layouts to a grid, but in this talk, we’ll explore solutions that work on EVERYTHING. I’ll show you how to incorporate this technique into your viz and how I built the libraries since there are some interesting data science concepts at play.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1174
In-Process Analytical Data Management with DuckDB - posit::conf(2023)
Presented by Hannes Mühleisen
This talks introduces DuckDB, an in-process analytical data management system that is deeply integrated into the R ecosystem.
DuckDB is an in-process analytical data management system. DuckDB supports complex SQL queries, has no external dependencies, and is deeply integrated into the R ecosystem. For example, DuckDB can run SQL queries directly on R data frames without any data transfer. DuckDB uses state-of-the-art query processing techniques like vectorised execution and automatic parallelism. DuckDB is out-of-core capable, meaning that it is possible to process datasets far bigger than main memory. DuckDB is free and open source software under the MIT license.
In this talk, we will describe the user values of DuckDB, and how it can be used to improve their day-to-day lives through automatic parallelisation, efficient operators, and out-of-core operations.
Materials:
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Databases for data science with duckdb and dbt. Session Code: TALK-1099
HTML and CSS for R Users - posit::conf(2023)
Presented by Albert Rapp
You can get the most out of popular R tools by combining them with easy-to-learn HTML & CSS commands.
It’s easy to think that R users do not need HTML and CSS. After all, R is a language designed for data analysis, right? But the reality is that these web standards are everywhere, even in R. In fact, many great tools like {ggtext}, {gt}, {shiny}, and Quarto unlock their full potential when you know a little bit of HTML & CSS. In this talk, I will demonstrate specific examples where R users can benefit from HTML and CSS and show you how to get started with these two languages.
Materials:
- Here’s the link to the video that I mention in the talk: https://youtu.be/QU8wSya-Y9E?si=zw59OSFPl1eJSY7M
- Part 1 of this two part series can be found at https://www.youtube.com/watch?v=jX4_Dnzhl0M
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Compelling design for apps and reports. Session Code: TALK-1105
How You Get Value as a 1-Person Posit Connect Team - posit::conf(2023)
Presented by Sean Nguyen
Sean, a sole Posit Connect developer, shares his experience in delivering business impact. He narrates his transition from crafting one-off reports to developing and deploying robust data science web applications using Python and R with Posit Connect. Despite its common association with large enterprise teams, Sean demonstrates how Posit Connect can be effectively utilized in smaller settings. He presents his work on creating and deploying end-to-end machine learning pipelines in Python, hosting them as APIs, and seamlessly integrating with Shiny apps via Posit Connect. This talk imparts practical strategies and techniques to foster user and executive adoption of Posit Connect within lean (and large) organizations.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Getting %$!@ done: productive workflows for data science. Session Code: TALK-1093
How to Win Friends and Influence People (With Data) - posit::conf(2023)
Presented by Joe Powers
Too many great data science products never go into production. To persuade leaders and colleagues to adopt your data science offering, you must translate your insights into terms that are relevant and accessible to them. Attempts to persuade these audiences with proofs and model performance stats will often fall flat because the audience is left feeling overwhelmed.
This talk will demonstrate the data simulation, visualization, and story-telling techniques that I use to influence leadership and the community-building techniques I use to earn the trust and support of fellow analysts. These efforts were successful in persuading Intuit to adopt advanced analytic methods like sequential analysis that cut the duration of our AB tests by over 60%.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Bridging the gap between data scientists and decision makers. Session Code: TALK-1077
How to Keep Your Data Science Meetup Sustainable - posit::conf(2023)
Presented by Ted Laderas
Many data science meetup organizers struggle with burnout. It can be daunting to plan a meetup schedule, especially with the added burden of work and life.
In this talk, I want to highlight some strategies for keeping your data science meetup sustainable. Specifically, I want to highlight the role of self-care in growing and sustaining your group, as well as low-key activities like a data scavenger hunt, watching videos together, styling plots together, and sharing useful tidyverse functions.
By making it easy for your members to contribute and empowering them, it takes a lot of the burden off you as an organizer. You don’t need to reinvent the wheel for meetups or have famous guests for each one. Let’s start the conversation and make your meetup last.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: It takes a village: building and sustaining communities. Session Code: TALK-1129
How to Help Developers Make Apps Users Love - posit::conf(2023)
Presented by Michał Parkoła
There are many resources that can help you design better apps.
But what if your org creates many apps?
Scaling good design to larger groups dials the challenge up to 11.
In this talk, I will share how we approach the problem at Appsilon.
- I will present our in-house Design Guide.
- I will share the successes and failures we’ve had building it and helping a wide variety of developers use it
- I will then share some tips about what you might want to consider if you want to help your org build better apps at scale.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Shiny user interfaces. Session Code: TALK-1127
How I Learned to Stop Worrying and Love Public Packages - posit::conf(2023)
Presented by Joe Roberts
The popularity of R and Python for data science is in no small part attributable to the vast collection of extension packages available for everything from common tasks like data cleaning to highly-specialized domain-specific functions. However, with that ease of sharing packages comes a larger target for bad actors trying to exploit them. We’ll explore these security risks along with approaches you can take to mitigate them using Posit Package Manager.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Managing packages. Session Code: TALK-1079
How Data Scientists Broke A/B Testing (And How We Can Fix It) - posit::conf(2023)
Presented by Carl Vogel
As data scientists, we care about making valid statistical inferences from experiments. And we’ve adapted well-established and well-understood statistical methods to help us do so in our A/B tests. Our stakeholders, though, care about making good product decisions efficiently. I’ll describe how the way we design A/B tests can put these goals in tension and why that often causes misalignment between how A/B tests are intended to be used and how they are actually used. I’ll also talk about how I’ve used R to implement alternative experimental approaches that have helped bridge the gap between data scientists and stakeholders.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Bridging the gap between data scientists and decision makers. Session Code: TALK-1076
Hitting the Target(s) of Data Orchestration - posit::conf(2023)
Presented by Alexandros Kouretsis
We are living at a time when the size of datasets can be overwhelming. Add to this that their process involves linking together different computing systems and software, and integrating dynamically changing reference data, and for sure, you have a problem. Reproducibility, traceability, and transparency have left the building.
Here is where Posit Connect along with the vast R ecosystem comes to save the day, allowing the creation of reproducible pipelines. I will share with you my first-hand experience in this presentation. In particular, how we used Targets in Posit Connect combined with AWS technologies in a bioinformatics pipeline. The result? An effective and secure workflow orchestration that is scalable and advances knowledge.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Leave it to the robots: automating your work. Session Code: TALK-1148
Grammar of Graphics in Python with Plotnine - posit::conf(2023)
Presented by Hassan Kibirige
{plotnine} brings the elegance of {ggplot2} to the Python programming language. Learn about The Grammar of Graphics and get a feel of why it is an effective way to create Statistical Graphics.
ggplot2 is one of the most loved visualisation libraries. It implements a Grammar of Graphics system, which requires one to think about data in terms of columns of variables and how to transform them into geometric objects. It is elegant and powerful. This is a talk about plotnine, which brings the elegance of ggplot2 to the Python programming language. It is an invitation to learn about the Grammar of Graphics system and to appreciate it. It will include some tips on how to avoid common frustrations as you learn the system.
Materials:
- Website: https://plotnine.org
- Source Code: https://github.com/has2k1/plotnine
- Slides for this talk: https://github.com/has2k1/my-talks
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science with Python. Session Code: TALK-1137

Github Copilot integration with RStudio, it’s finally here! - posit::conf(2023)
Presented by Tom Mock
This talk closes issue #10148, “Github Copilot integration with RStudio”, the most upvoted feature request in RStudio’s history. Code generating AI tools like Github Copilot‚ promise an “AI pair programmer that offers autocomplete-style suggestions as you code”. For the first time, we’ll show a native integration of Copilot into RStudio, helping to build on that promise by providing AI-generated “ghost text” autocompletion with R and other languages. I’ll also provide a comparison of Copilot’s “ghost text” to a chat-style interface in RStudio via the {chattr} package from the Posit MLVerse team.
To make the most of these new features, I’ll walk through some examples of how sharing additional context, comments, code, and other “prompt engineering” can help you go from code-generating AI tools that feels like an annoying backseat driver to an experienced copilot. We’ll close with a robust end-to-end example of how these new RStudio integrations and packages can help you be a more productive developer.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science infrastructure for your org. Session Code: TALK-1117
Getting the Most Out of Git - posit::conf(2023)
Presented by Colin Gillespie
Did you believe that Git will solve all of your data science worries? Instead, you’ve been plunged HEAD~1 first into merging (or is that rebasing?) chaos. Issues are ignored, branches are everywhere, main never works, and no one really knows who owns the repository.
Don’t worry! There are ways to escape this pit of despair. Over the last few years, we’ve worked with many data science teams. During this time, we’ve spotted common patterns and also common pitfalls. While one size does not fit all, there are golden rules that should be followed. At the end of this talk, you’ll understand the processes other data science teams implement to make Git work for them.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Getting %$!@ done: productive workflows for data science. Session Code: TALK-1091#
Thumbnail from happygitwithr.com, still from Heaven King video
From Novices to Experts: Building a Community of Engaged R Users - posit::conf(2023)
Presented by Natalia Andriychuk
At Pfizer, we have over 1500 users with R installed on their machines, along with an R community on MS Teams comprising over a thousand colleagues globally. How can we effectively engage with Pfizer R users and celebrate the successes of this community, while sharing best practices? Additionally, how do we avoid isolated groups duplicating efforts to solve R-related problems across different parts of the organization?
To address these challenges, we established the Pfizer R Center of Excellence (CoE) in early 2022. We focus our efforts on bringing together a rapidly growing community of colleagues, providing technical expertise, and offering best-practice guidance. A well-established, maintained and engaged R community promotes an inclusive and supportive learning environment that drives innovation within organizations. Our aim is to help colleagues thrive in their R journey, regardless of their expertise level.
During my talk, I will share the techniques we used to build a supportive R community, the tools employed to increase community engagement, and the successes and challenges encountered in building an engaging community of R users.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Pharma. Session Code: TALK-1066
From Journalist to Coder: Creating a Web Publication with Quarto - posit::conf(2023)
Presented by Brian Tarran
This is the story of how a Royal Statistical Society writer discovered Quarto, learned how to code (a bit), and built realworlddatascience.net, an online publication for the data science community.
In March 2022, I was tasked by the Royal Statistical Society with creating a new online publication: a data science website for data science professionals. I’ve been a print journalist for 20 years and have worked on websites in that time, but my coding ability began and ended with wrapping href tags around text and images. That is until I discovered Quarto. In this talk, I describe how I explored, learned, and fell in love with the Quarto publishing system, how I used it to build a website – Real World Data Science (realworlddatascience.net) – and how the open source community mindset helped shape my thinking about what a new publication could and should be!
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (1). Session Code: TALK-1071
From Data Confusion to Data Intelligence - posit::conf(2023)
Presented by Elaine McVey and David Meza
Data science teams operate in a unique environment, much different than the IT or software development life cycle. Hope from executives for the impact of data science is extremely high! Understanding of how to make data science efforts successful is very low! This creates an interesting set of organizational challenges for data and analytics teams. These are particularly clear when data science is being introduced at new companies, but plays out at organizations of all sizes. So, how do we navigate this dynamic? We will share some strategies for success.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: From Data Confusion to Data Intelligence. Session Code: KEY-1060
From Concept to Impact: Building and Launching Shiny Apps in the Workplace - posit::conf(2023)
Presented by Tiger Tang
Learn to build and launch a Shiny app like you are working on a start-up!
Unlock the potential of Shiny apps for your organization! Join Tiger as he shares insights from implementing Shiny apps at his workplace, handling over 160,000 internal requests. Discover a practical mindmap to find, build, and enhance Shiny app use cases, ensuring robustness and improved user engagement.
Materials: https://tigertang.org/posit_conf_2023/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Bridging the gap between data scientists and decision makers. Session Code: TALK-1074
FOCAL Point: Utilizing Python, R, and Shiny to Capture, Process, and Visualize Motion - posit::conf
Presented by Justin Markel & Alyssa Burritt
One of the fastest movements in modern sports is a golf swing. Capturing this motion using a high-speed camera system creates many unique challenges in processing, analyzing, and visualizing the thousands of data points that are generated. These spatial coordinates can be quickly translated through Python scripts to well-known, industry-specific performance metrics and graphics in Shiny. Down the line, R utilities aid more complicated analyses and optimizations, driving new product innovations.
This talk will cover our company’s process of implementing these tools into our workflow and highlight key program features that have helped successfully combine these applications for users with a variety of technical backgrounds.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: R or Python? Why not both!. Session Code: TALK-1120
Field Guide to Writing Your First R Package - posit::conf(2023)
Presented by Fonti Kar
I recall writing my first package being an intimidating task. In my talk, I will share how a Biologist’s mindset can make R package writing more approachable. This talk is an encouragement and a gentle stroll through the package building process. I will show you ways to be curious when you get stuck and how to prepare for the unexpected. I hope sharing my perspective will help others see package development as wonderful as the natural world and dispel any hesitation to start!
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Package development. Session Code: TALK-1135
Extending Quarto - posit::conf(2023)
Presented by Richard Iannone
What are Quarto shortcode extensions? Think of them as powerful little programs you can run in your Quarto docs. I won’t show you how to build a shortcode extension during this talk but rather I’m going to take you on a trip across this new ecosystem of shortcode extensions that people have already written. For example, I’ll introduce you to the fancy-text extension for outputting nicely-formatted versions of fancy strings such as LaTeX and BibTeX; you’ll learn all about the fontawesome, lordicon, academicons, material-icons, and bsicons shortcode extensions that let you add all sorts of icons. This is only a sampling of the shortcode extensions I will present, there will be many other inspiring examples as well.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (2). Session Code: TALK-1141
epoxy: Super Glue for Data-driven Reports and Shiny Apps - posit::conf(2023)
Presented by Garrick Aden-Buie
R Markdown, Quarto, and Shiny are powerful frameworks that allow authors to create data-driven reports and apps. But truly excellent reports require a lot of work in the final steps to get numerical and stylistic formatting just right.
{epoxy} is a new package that uses {glue} to give authors templating superpowers. Epoxy works in R Markdown and Quarto, in markdown, LaTeX, and HTML outputs. It also provides easy templating for Shiny apps for dynamic data-driven reporting.
Beyond epoxy’s features, this talk will also touch on tips and approaches for data-driven reporting that will be useful to a wide audience, from R Markdown experts to the Quarto and Shiny curious.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Elevating your reports. Session Code: TALK-1155

Dynamic Interactions: webR to Empower Educators & Researchers with Interactive Quarto Docs
Presented by James Balamuta
Full talk title: Dynamic Interactions: Empowering Educators and Researchers with Interactive Quarto Documents Using webR
Traditional Quarto documents often lack interactivity, limiting the ability of students and researchers to fully explore and engage with the presented topic. In this talk, we propose a novel approach that utilizes webR, a WebAssembly-powered version of R, to seamlessly embed R code directly within the browser without the need for a server. We demonstrate how this approach can transform static Quarto documents into dynamic examples by leveraging webR’s capabilities through standard Quarto code cells, enabling real-time execution of R code and dynamic display of results. Our approach empowers educators and researchers alike to harness the power of interactivity and reproducibility for enhanced learning and research experiences.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Quarto (1). Session Code: TALK-1073
duckplyr: Tight Integration of duckdb with R and the tidyverse - posit::conf(2023)
Presented by Kirill Müller
The duckplyr R package combines the convenience of dplyr with the performance of DuckDB. Better than dbplyr: Data frame in, data frame out, fully compatible with dplyr.
duckdb is the new high-performance analytical database system that works great with R, Python, and other host systems. dplyr is the grammar of data manipulation in the tidyverse, tightly integrated with R, but it works best for small or medium-sized data. The former has been designed with large or big data in mind, but currently, you need to formulate your queries in SQL.
The new duckplyr package offers the best of both worlds. It transforms a dplyr pipe into a query object that duckdb can execute, using an optimized query plan. It is better than dbplyr because the interface is “data frames in, data frames out”, and no intermediate SQL code is generated.
The talk first presents our results, a bit of the mechanics, and an outlook for this ambitious project.
Materials: https://github.com/duckdblabs/duckplyr/
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Databases for data science with duckdb and dbt. Session Code: TALK-1100
dplyr 1.1.0 Features You Can’t Live Without - posit::conf(2023)
Presented by Davis Vaughan
Did you enjoy my clickbait title? Did it work? Either way, welcome!
The dplyr 1.1.0 release included a number of new features, such as:
- Per-operation grouping with
.by - An overhaul to joins, including new inequality and rolling joins
- New
consecutive_id()andcase_match()helpers - Significant performance improvements in
arrange()
Join me as we take a tour of this exciting dplyr update, and learn how to use these new features in your own work!
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1162

Diversify Your Career with Shiny for Python - posit::conf(2023)
Presented by Gordon Shotwell
A few years ago my company made a sudden shift from R to Python which was quite bad for my career because I didn’t really know Python. The main issue was that I couldn’t find a niche that allowed me to use my existing knowledge while learning the new language.
Shiny for Python is a great niche for R users because none of the Python web frameworks can do what Shiny can do. Additionally, almost all of your knowledge of the R package is applicable to the Python one.
This talk will provide an overview of the Python web application landscape and articulate what Shiny adds to this landscape, and then go through the five things that R users need to know before developing their first Shiny for Python application.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science with Python. Session Code: TALK-1138
Developing a Prototyping Competency in a Statistical Science Organization - posit::conf(2023)
Presented by Daniel Woodie
The introduction of new tools, methods, and processes can be a struggle within a statistical science organization. Being deliberate and investing in the creation of a prototyping competency can help in accelerating progress. Prototyping allows organizations to quickly experiment with new ideas, reduce the risk of failure, identify potential issues early, and iterate until the desired outcome is achieved.
I will highlight the key areas we have focused on accelerating, our framework for developing this competency, how we use Shiny, and the lessons we’ve learned along the way. Developing a prototyping competency is crucial for statistical science organizations that wish to stay competitive and innovative in today’s rapidly changing landscape.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Building effective data science teams. Session Code: TALK-1059
Democratizing Access to Education Data - posit::conf(2023)
Presented by Erika Tyagi
Learn how the Urban Institute is making high-quality data more accessible through the Education Data Portal.
Every year, government agencies release large amounts of data on schools and colleges, but this information is scattered across various websites and is often difficult to use. To make these data more accessible, the Urban Institute built the Education Data Portal, a freely available one-stop shop for harmonized data and metadata for nearly all major federal education datasets. In this talk, we’ll demonstrate how the portal works and share lessons we’ve learned about making data accessible to users with varying technical skills and preferred programming languages.
The Urban Institute’s Education Data Portal: https://educationdata.urban.org
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: End-to-end data science with real-world impact. Session Code: TALK-1145
dbtplyr: Bringing Column-Name Contracts from R to dbt - posit::conf(2023)
Presented by Emily Riederer
starts_with(language): Translating select helpers to dbt. Translating syntax between languages transports concepts across communities. We see a case study of adapting a column-naming workflow from dplyr to dbt’s data engineering toolkit.
dplyr’s select helpers exemplify how the tidyverse uses opinionated design to push users into the pit of success. The ability to efficiently operate on names incentivizes good naming patterns and creates efficiency in data wrangling and validation.
However, in a polyglot world, users may find they must leave the pit when comparable syntactic sugar is not accessible in other languages like Python and SQL.
In this talk, I will explain how dplyr’s select helpers inspired my approach to ‘column name contracts,’ how good naming systems can help supercharge data management with packages like {dplyr} and {pointblank}, and my experience building the {dbtplyr} to port this functionality to dbt for building complex SQL-based data pipelines.
Materials:
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Databases for data science with duckdb and dbt. Session Code: TALK-1098
Data Visualization with Seaborn - posit::conf(2023)
Presented by Michael Waskom
Seaborn is a Python library for statistical data visualization. After nearly a decade of development, seaborn recently introduced an entirely new API that is more explicitly based on a formal grammar of graphics. My talk will introduce this API and contrast it with the classic seaborn interface, sharing insights about the influence of the grammar of graphics on the ergonomics and maintainability of data visualization software.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science with Python. Session Code: TALK-1136
Data Science in Production: The Way to a Centralized Infrastructure - posit::conf(2023)
Presented by Oliver Bracht
In this talk, the success story of Covestro’s posit infrastructure is presented. The problem of the leading German material manufacturer was that no common development environment existed. With the help of eoda and Posit, a replicable, centralized development environment for R and Python was created. Although R and Python represent the core of the infrastructure, multiple languages and tools are unified. In addition to the collaboration of Covestro’s data science teams, compliance guidelines could also be better fulfilled. The staging architecture hereby provides developers with a concept for testing and going live with their products. This project presents a best practice approach to a data science infrastructure using Covestro as an example.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science infrastructure for your org. Session Code: TALK-1113
CRAN-ial Expansion: Taking Your R Package Development to New Frontiers with R-Universe - posit::conf
Presented by Mo Athanasia Mowinckel
Say goodbye to installation headaches and hello to a universe of possibilities with R-Universe! Take your R package development to new frontiers by organizing and sharing packages beyond the bounds of CRAN. R-Universe’s reliable package-building process strengthens installation and usage instructions, resulting in fewer support requests and an easy installation experience for users. With webpages and an API for exploring packages, R-Universe creates a streamlined and tidy ecosystem for R-package constellations. Also, you can build a custom toolchain for your users, relieving your workload and empowering users to help themselves. Join me to learn how to explore the vastness of R-Universe and expand your package development possibilities!
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Managing packages. Session Code: TALK-1080
Connect on Kubernetes: Content-level Containerization - posit::conf(2023)
Presented by E. David Aja, not Kelly O’Briant
Running Connect with off-host content execution in Kubernetes is very cool and allows you to enable some powerful and sophisticated workflows. The question is, do you really need it? How do you evaluate and decide? Let’s have a candid conversation about whether Connect content execution on Kubernetes is right for you and your organization.
Moving to Kubernetes will introduce complexity, so it’s important to have a strong motivating reason for making the switch. This talk will introduce new Connect features that are made possible by content-level containerization.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Data science infrastructure for your org. Session Code: TALK-1116
Conformal Inference with Tidymodels - posit::conf(2023)
Presented by Max Kuhn
Conformal inference theory enables any model to produce probabilistic predictions, such as prediction intervals. We’ll demonstrate how these analytical methods can be used with tidymodels. Simulations will show that the results have good coverage (i.e., a 90% interval should include the real point 90% of the time).
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Tidy up your models. Session Code: TALK-1085

Commit to Change: How to Increase Accessibility in Your Favorite Open Source Projects - posit::conf
Presented by Rose Franzen
Explore accessibility for data scientists by uncovering some common barriers in open source tools with simple fixes that anyone can implement.
Dive into the often-overlooked world of accessibility for developers and data scientists! Uncover common accessibility barriers in open source tools, and learn simple steps to address them. Whether you’re a seasoned maintainer or a total novice, you’ll walk away with clear action items to implement right away. Join the movement of individuals championing the next frontier of disability inclusion in technology, shaping a more equitable future for all!
Materials: https://github.com/franzenr/commit-to-change
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Package development. Session Code: TALK-1134
Combining R and Python for the Belgian Justice Department - posit::conf(2023)
Presented by Thomas Michem
We build a great case on how to combine R and Python in a production environment.
So the justice department’s back office monitors the smooth processing of all traffic fines in Belgium. They gather that data from all police departments and check if any anomalies occur.
The back-office monitors that using a shiny application where they can see traffic signs showing the status of the whole operation and the status is built using Python scripts that perform anomaly detection if the number of fines is in line with what they expect daily. And the results of those checks are delivered to a front-end shiny application with Python flask API.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: R or Python? Why not both!. Session Code: TALK-1122
Coding Tools for Industry R&D – Development Lessons from an Analytical Lab - posit::conf(2023)
Presented by Camila Saez Cabezas
Are you considering or curious about developing code-based tools for scientists? Whether you are an experienced developer or a fellow Posit Academy graduate who might be stepping into this role for the first time, the aim of my story is to inspire you and help you navigate this process. While developing custom R functions, packages, and Shiny apps for diverse analytical capabilities and users in R&D, I learned why it’s important to collect certain information at the start before writing any tidying, analysis, visualization, and web application code.
In this talk, I will share the essential technical questions that help me define and plan for success.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1168
CI/CD Pipelines - Oh, the Places You’ll Go! - posit::conf(2023)
Presented by Trevor Nederlof
Data scientists are creating incredibly useful data products at an accelerating rate. These products are consumed by others who expect them to be accurate reliable and timely, often promises unfulfilled. In this talk, we will explore how to use common CI/CD pipeline tools already within reach of attendees to automatically test and deploy their apps, APIs, and reports.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Lightning talks. Session Code: TALK-1166
Can I Have a Word? - posit::conf(2023)
Presented by Ellis Hughes
Since its release, {gt} has won over the hearts of many due to its flexible and powerful table-generating abilities. However, in cases where office products were required by downstream users, {gt}’s potential remained untapped. That all changed in 2022 when Rich Iannone and I collaborated to add Word documents as an official output type. Now, data scientists can engage stakeholders directly, wherever they are.
Join me for an upcoming talk where I’ll share my excitement about the new opportunities this update presents for the R community as well as future developments we can look forward to.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Elevating your reports. Session Code: TALK-1156

Building a Flexible, Scaleable Self-Serve Reporting System with Shiny - posit::conf(2023)
Presented by Natalie O’Shea
Working in the high-touch world of consulting, our team needed to develop a reporting system that was flexible enough to be tailored to the specific needs of any given partner while still reducing the highly manual nature of populating client-ready slide decks with various metrics and data visualizations. Utilizing the extensive resources developed by the R user community, I was able to create a flexible, scalable reporting system that allows users to populate templated Google slide decks with metrics and professional-grade visualizations using data pulled directly from our database at the time of query. This streamlined approach enables our consultants to spend less time copy-pasting data from one channel to another and instead focus on what they do best: surfacing business-relevant insights and recommendations for our partners.
By sharing my approach to customizable self-serve reporting in Shiny, I hope attendees will walk away with new ideas about how to combine parameterized reporting and dashboard development to get the best of both worlds. Additionally, I hope to end by sharing how this project was pivotal in making the business case for procuring Posit products for my broader organization.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Bridging the gap between data scientists and decision makers. Session Code: TALK-1075
Black Hair and Data Science Have More in Common Than You Think - posit::conf(2023)
Presented by Kari Jordan
Data science is often difficult to define because of its many intersections, including statistics, programming, analytics, and other domain knowledge. Would you believe it if I told you Black hair and data science have much in common?
This talk is for those considering learning about, studying, or pursuing data science. In it, Dr. Kari L. Jordan draws parallels between approaches to caring for Black hair and approaches to learning data science. We start with the roots and end by picking the right tools and products to maintain our coiffure.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: It takes a village: building and sustaining communities. Session Code: TALK-1131
Becoming an R Package Author (or How I Got Rich Responding to GitHub Issues) - posit::conf(2023)
Presented by Matt Herman
The transition from analyzing data in R to making packages in R can feel like a big step. Writing code to clean data or make visualizations seems categorically different from building robust “software” on which other people rely.
In this talk, I’ll show why that distinction is not necessarily true by discussing my personal experience from learning R in graduate school to reporting bugs on GitHub to becoming a co-author of the tidycensus package and a practicing data scientist. The positive and supportive R community on GitHub, Twitter, and elsewhere contributes to why anyone who writes R code can become a package author.
- I have not actually gotten rich but I did get freelance data work based on my package contributions!
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Package development. Session Code: TALK-1133
Automating the Dutch National Flu Surveillance for Pandemic Preparedness - posit::conf(2023)
Presented by Patrick van den Berg
The next pandemic may be caused by a flu strain, and with thousands of patients with the flu in Dutch hospitals annually it is important to have accurate and current data. The National Institute for Public Health and the Environment of the Netherlands (RIVM) collects and processes flu data to achieve pandemic preparedness. However, the flu reporting process used to be very laborious, stealing precious time from epidemiologists. In our journey of automating this data pipeline we learned that collaboration was the most important factor in getting to a working system. This talk will be at the cross-section of data science and epidemiology and will provide you with a valuable opportunity to learn from our experiences.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Leave it to the robots: automating your work. Session Code: TALK-1150
AI and Shiny for Python: Unlocking New Possibilities - posit::conf
Presented by Winston Chang
In the past year, people have come to realize that AI can revolutionize the way we work. This talk focuses on using AI tools with Shiny for Python, demonstrating how AI can accelerate Shiny application development and enhance its capabilities. We’ll also explore Shiny’s unique ability to interface with AI models, offering possibilities beyond Python web frameworks like Streamlit and Dash. Learn how Shiny and AI together can empower you to do more, and do it faster.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: I can’t believe it’s not magic: new tools for data science. Session Code: TALK-1153

Adding a Touch of glitr: Developing a Package of Themes on Top of ggplot - posit::conf(2023)
Presented by Aaron Chafetz and Karishma Srikanth Please note, a power issue cut off the first five minutes of the talk.
Explore how our team at the US Agency for International Development (USAID) created our own data viz branding R package on top of ggplot2 and how you can too.
How do you create brand cohesion across your large team when it comes to data viz? Inspired by the BBC’s bbplot, our team at the US Agency for International Development (USAID) developed a package on top of ggplot2 to create a common look and feel for our team’s products. This effort improved not just the cohesiveness of our work, but also trustworthiness. By creating this package, we reduced the reliance on using defaults and the time spent on each project customizing numerous graphic elements. More importantly, this package provided an easier on-ramp for new teammates to adopt R. We share our journey within a federal agency developing a style guide and aim to guide and inspire other organizations who could benefit from developing their own branding package and guidance.
Materials:
- https://speakerdeck.com/achafetz/adding-a-touch-of-glitr
- https://usaid-oha-si.github.io/glitr/
- https://issuu.com/achafetz/docs/oha_styleguide
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Compelling design for apps and reports. Session Code: TALK-1103
A hacker’s guide to open source LLMs - posit::conf(2023)
Presented by Jeremy Howard
In this deeply informative video, Jeremy Howard, co-founder of fast.ai and creator of the ULMFiT approach on which all modern language models (LMs) are based, takes you on a comprehensive journey through the fascinating landscape of LMs. Starting with the foundational concepts, Jeremy introduces the architecture and mechanics that make these AI systems tick. He then delves into critical evaluations of GPT-4, illuminates practical uses of language models in code writing and data analysis, and offers hands-on tips for working with the OpenAI API. The video also provides expert guidance on technical topics such as fine-tuning, decoding tokens, and running private instances of GPT models.
As we move further into the intricacies, Jeremy unpacks advanced strategies for model testing and optimization, utilizing tools like GPTQ and Hugging Face Transformers. He also explores the potential of specialized datasets like Orca and Platypus for fine-tuning and discusses cutting-edge trends in Retrieval Augmented Generation and information retrieval. Whether you’re new to the field or an established professional, this presentation offers a wealth of insights to help you navigate the ever-evolving world of language models.
(The above summary was, of course, created by an LLM!)
For the notebook used in this talk, see https://github.com/fastai/lm-hackers .
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Notebooks+LLMs may just be the future of coding. Session Code: KEY-1107
20 questions and AI chat bots - posit::conf(2023)
Presented by Winston Chang
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: I can’t believe it’s not magic: new tools for data science. Session Code: TALK-1153

{slushy}: A Bridge to the Future - posit::conf(2023)
Presented by Becca Krouse
Scaling the use of R can present complications for environment management, especially in regulated industries with a focus on traceability. One solution is controlled (aka “frozen”) environments, which are carefully curated and tested by tech teams. However, the speed of R development means the environments quickly become outdated and users are unable to benefit from the latest advances. Enter {slushy}: a team-friendly tool powered by {renv} and Posit Package Manager. Users can quickly mimic a controlled environment, with the easy ability to time travel between snapshot dates. Attendees will learn how {slushy} bolstered our R adoption efforts, and how this strategy enables tech teams and users to work in parallel towards a common future.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Managing packages. Session Code: TALK-1078
How the R for Data Science (R4DS) Online Learning Community Made Me a Better Student - posit::conf
Presented by Lydia Gibson
Through my participation in R4DS Online Learning Community, I have advanced my R and data science skills, making me a better student than I otherwise would have been through just my studies. As a non-traditional MS Statistics student with an undergraduate background in economics, I had absolutely no experience with the R programming language prior to pursuing my Master’s degree. In July 2021, with hopes of getting a headstart on learning R before beginning my degree program, I joined the R4DS Slack Workspace. Along with helping to improve my programming skills, R4DS has connected me with scholarships, mentorship, and other opportunities, and I think that it would be beneficial for other students to know about this great resource.
Presented at Posit Conference, between Sept 19-20 2023, Learn more at posit.co/conference.#
Talk Track: Developing your skillset; building your career. Session Code: TALK-1110
Quarto Dashboards | Charles Teague | Posit
Quarto has a host of exciting new features in release v1.4, with one of the most anticipated being Quarto Dashboards. In a recent internal presentation, Posit’s Charles Teague demonstrated the new capabilities and we wanted to share it with community.
Please note that you can use this feature today, but to access it you need to be running on a Quarto prerelease build dated November 6, 2023, or later. We also encourage users to review our pre-release documentation which offers additional information and examples of the dashboard functionality.
Quarto Pre-release builds: https://quarto.org/docs/download/prerelease.html Quarto Dashboard Documentation: https://quarto.org/docs/dashboards/
webR 0.2: Updates to webR’s developer API | George Stagg | Posit
More from George Stagg on what’s new in the webR 0.2 release series, this time on webR’s developer API. If you’re a JavaScript or TypeScript developer, give webR a try and see what you might use it for!
WebR makes it possible to run R code in the browser without the need for an R server to execute the code: the R interpreter runs directly on the user’s machine.
It is possible to work entirely within webR and the R graphics devices, but you might also want to integrate webR into external JavaScript or TypeScript frameworks, including visualization packages. Learn about how to do this and more with webR’s developer API, including plotting data from webR using Observable JS, recent performance improvements, better error handling, worker event messages, and neatly terminating a webR session.
00:15 Performance improvements working with JavaScript 02:50 Example: Plotting data from webR using Observable JS 04:35 Type predicate functions and type conversion 07:30 Handling errors with webRError 09:15 Event messages from webr::canvas() 10:25 Safely handling webR termination 12:30 Links to documentation and resources
Website and developer documentation: https://docs.r-wasm.org/ Examples of using webR with Observable JS:
- Loading webR and R data manipulation: https://observablehq.com/d/6936259b898a25ce
- Bitmap plotting and custom fonts: https://observablehq.com/d/32e2b7e465c0b994

webR 0.2: R Packages and Shiny for WebAssembly | George Stagg | Posit
WebR makes it possible to run R code in the browser without the need for an R server to execute the code: the R interpreter runs directly on the user’s machine. But just running R isn’t enough, you need the R packages you use every day too.
webR 0.2.0 makes many new packages available (10,324 packages - about 51% of CRAN!) and it’s now possible to run Shiny apps under webR, entirely client side.
George Stagg shares how to load packages with webR, know what ones are available, and get started running Shiny apps in the web browser. There’s a demo webR Shiny app too!
00:15 Loading R packages with webR 01:50 Wasm system libraries available for use with webR 05:30 Tidyverse, tidymodels, geospatial data, and database packages available 08:00 Shiny and httpuv: running Shiny apps under webR 11:05 Example Shiny app running in the web browser 12:05 Links with where to learn more
Shiny webR demo app: https://shinylive.io/r/examples/
Website: https://docs.r-wasm.org/ webR REPL example: https://webr.r-wasm.org/latest/
Demo webR Shiny app in this video: https://shiny-standalone-webr-demo.netlify.app/ Source: https://github.com/georgestagg/shiny-standalone-webr-demo/
See the overview of what’s new in webR 0.2.0: https://youtu.be/Mpq9a6yMl_w

webR 0.2 Overview: R in the browser | George Stagg | Posit
WebR is a version of the statistical language R compiled for the browser and Node.js using WebAssembly, via Emscripten.
WebR makes it possible to run R code in the browser without the need for an R server to execute the code: the R interpreter runs directly on the user’s machine. Several R packages have also been ported for use with webR, and can be loaded in the usual way using the library() function.
George Stagg shares what’s new in the 0.2.0 release!
00:23 About WebR and applications of computing with WebAssembly 02:25 Overview of changes in webR 0.2.0 release 04:10 The webR REPL app 07:28 Improved speed in graphics rendering 08:43 Text rendering in plots, including international and accessible fonts 10:27 Updated support for standard bitmap devices 13:05 Lazy virtual file system allows for decreased download size 15:40 Links with where to learn more
Website: https://docs.r-wasm.org/ webR REPL example: https://webr.r-wasm.org/latest/

Bite-sized tricks for machine learning with tidymodels | Posit
The tidymodels framework is a collection of R packages for modeling and machine learning using tidyverse principles. This video highlights a number of tidymodels features that could improve your modeling workflows.
0:03 Switching modeling engines is easy 0:21 Never lose your tuning results 0:36 Built-in visualizations for modeling objects 1:03 Grouped resampling 1:16 Case weights 1:32 Select variables based on role and type 2:00 Spatial resampling 2:16 Keep your tidymodels objects small
Learn more at https://www.tidymodels.org/
How does Shiny render things? | Gordon Shotwell
Discussion on the Shiny Python Discord channel from Gordon Shotwell. Gordon talks about how Shiny renders things with reactive programming, how other frameworks work, and how Shiny scales for complex applications.
0:00 - How Shiny renders things - reactivity 2:31 - How do other frameworks work 3:51 - Event driven programming, what’s a better way? 6:53 - Runtime tracing 8:25 - Declarative programming 9:20 - Drawing a graph 12:05 - How reactivity scales 13:30 - Reactive calculus 18:45 - Question and answer
Shiny for Python: https://shiny.posit.co/py/ Shiny for Python Discord server: https://discord.com/invite/yMGCamUMnS
Teaching the tidyverse in 2023 | Mine Çetinkaya-Rundel
Recommendations for teaching the tidyverse in 2023, summarizing package updates most relevant for teaching data science with the tidyverse, particularly to new learners.
00:00 Introduction 00:46 Using addins to switch between RStudio themes (See https://github.com/mine-cetinkaya-rundel/addmins for more info) 01:40 Native pipe 03:08 Nine core packages in tidyverse 2.0.0 07:15 Conflict resolution in the tidyverse 11:30 Improved and expanded *_join() functionality 22:05 Per operation grouping 27:41 Quality of life improvements to case_when() and if_else() 31:41 New syntax for separating columns 34:51 New argument for line geoms: linewidth 36:08 Wrap up
See more in the Teaching the tidyverse in 2023 blog post https://www.tidyverse.org/blog/2023/08/teach-tidyverse-23

What does superseded mean? Package development lifecycle process and the meaning of superseded.
An important part of the process of package lifecycle and package development is not just adding new functions. It’s is equally important to remove functions.
Hadley Wickham shares about the package lifecycle process and what ‘supersede’ means for functions.
See the full video about the purrr 1.0 release: https://youtu.be/EGAs7zuRutY
More about the package lifecycle stages: https://lifecycle.r-lib.org/articles/stages.html
Maintaining the house that tidyverse built: https://youtu.be/izFssYRsLZs

What does deprecated mean? Package lifecycle and the process of deprecation.
An important part of the process of package lifecycle and package development is not just adding new functions. It’s equally important to remove functions.
Hadley Wickham shares about the package lifecycle process and what ‘deprecation’ means for functions.
See the full video about the purrr 1.0 release: https://youtu.be/EGAs7zuRutY
More about the package lifecycle stages: https://lifecycle.r-lib.org/articles/stages.html
Maintaining the house that tidyverse built: https://youtu.be/izFssYRsLZs

Posit Cloud Essentials | Ep 1: Getting Started
On the last Tuesday of every month, we host an event – Posit Cloud Essentials – where we explore the ins and outs of Posit Cloud, diving into its key features, valuable tips, and real-world use cases. The event is open to all and hosted on YouTube with a live Q&A during each month’s event.
This month, Alex Chisholm, Product Manager for Posit Cloud, walks through how to get started with a free Posit Cloud account. Enabling you to conduct analysis, generate insights, and share findings from your web browser.
What is Posit Cloud? Posit Cloud makes it easy to move your entire workflow into a unified online experience, complete with project management and publishing capabilities. Use your favorite coding languages and environments and share your work seamlessly with others, all from the comfort of your own web browser.
No registration is required to join the events. Simply add the event to your calendar using the link below.
Create a free Posit Cloud account → https://posit.cloud/
Explore the source code used in this demo → https://posit.cloud/spaces/394911/join?access_code=v-iZm0epL-n-vNHpht4JAfH47gmqWdg0cM6hyll7
Add future Posit Cloud Essential events to your calendar → http://evt.to/adahaeuow
Q&A from this demo can be found here → https://app.sli.do/event/q2aLBPfVRAvUCFryNs9YuL
What Exactly Is Digital Transformation? | Posit + PING
Doug Linsmeyer, VP of Digital Technology at PING, clarifies how he thinks about digital transformation, adopting new technologies, and how Posit Connect helps data scientists at PING continue to innovate.
Read and watch the full story here: https://posit.co/about/customer-stories/ping/
Learn more about Posit Connect: https://posit.co/products/enterprise/connect/
Python support in Posit Connect
Posit Connect: Deploy everything you create in R & Python, including interactive applications (Shiny, Streamlit, Dash), documents, notebooks, and dashboards.
Learn more at https://posit.co/products/enterprise/connect/
Live Q&A Session - Ep 3. Scheduling a Quarto Doc (with custom branding) on Posit Connect
Live Q&A Session for the End-to-End Workflow Demo on June 28th *Please note this was the live Q&A portion of the event.
You can view the demo recording here: https://youtu.be/V82BBU9ldcM
Ep 3. Scheduling a Quarto Doc (with custom branding) on Posit Connect | End-to-end workflows
Follow-up links:
- Demo recording: https://youtu.be/V82BBU9ldcM
- Posit Team: https://posit.co/products/enterprise/team/
- Talk to us directly: https://posit.co/schedule-a-call/?booking_calendar__c=RST_YT_Demo
- Follow-along blog post: To be added
- Source code for example: To be added
- Posit Team demo resources: pos.it/demo-resources
Open Source in Drug Development | Thomas Nietmann and Posit
Thomas Neitmann, Associate Director at Denali Therapeutics, sat down with Posit to talk about open source in clinical trials, his work at Roche, the creation of admiral, career beginnings, and his future predictions for data science in the pharma space.
Posit’s work in Pharma: https://posit.co/solutions/pharma/
RStudio + Amazon SageMaker | Build Beyond Your Laptop
Did you know that you can use RStudio, the best IDE for R and Python users, with Amazon Sagemaker?
RStudio on Amazon SageMaker makes it easy for R users to quickly and easily get started coding in RStudio on AWS from their browser, no server setup required, by using a new integration with Posit Workbench.
In this webinar, Posit team members will show you how to get started with RStudio on Amazon SageMaker to analyze your organization’s data in S3 and train ML models.
As a fully managed offering on Amazon SageMaker, this release makes it easy for DevOps teams and IT Admins to administer, secure, and scale their organization’s centralized data science infrastructure with familiar AWS tools and frameworks.
Learn more at: https://posit.co/products/cloud/sagemaker/ Talk to us about using RStudio and SageMaker: https://posit.co/schedule-a-call/?booking_calendar__c=Sagemaker
Python made easier with Posit
Tom Mock, Workbench Product Manager at Posit, discusses our commitment to Python from open-source projects to enterprise support.
Specifically, Tom discusses Posit Team, the all-in-one solution for your data science team to build, share and maintain your R & Python data products.
Posit Team comprises our three professional products, Posit Workbench, Connect, and Package Manager.
Posit Workbench give your data scientists access to their favorite development tools in a centralized environment. Enabling them to work in the language they prefer, all while sharing IT resources and collaborating to find actionable insights.
Posit Connect is where your team can securely host all of their data products and share them with the push of a button. Schedule reports to update automatically and give users access to only the insights they need.
Posit Package Manager allows your team to deliver reproducible data science without the burden of manual package management. Organize and centralize R and Python packages across your team, department, or organization.
Posit Team: https://posit.co/products/enterprise/team/ Posit Workbench: https://posit.co/products/enterprise/workbench/ Posit Connect: https://posit.co/products/enterprise/connect/ Posit Package Manager: https://posit.co/products/enterprise/package-manager/
Posit Connect | Provide Authenticated Access to Your Data Products
Posit Connect is all about getting your data products into the hands of stakeholders and collaborators.
Here, we demonstrate how to provide authenticated access to a Dash application.
For more information about Posit Connect, go to: https://posit.co/products/enterprise/connect/
Get started with Quarto | Mine Çetinkaya-Rundel
This video walks you through creating documents, presentations, and websites and publishing with Quarto. The video features authoring Quarto documents with executable R code chunks using the RStudio Visual Editor (https://quarto.org/docs/visual-editor/) .
00:00 Introduction 00:34 Authoring a document with Quarto 01:13 Using the RStudio visual editor 04:13 Code chunks and chunk options 06:31 Inserting cross references to figures and tables (https://quarto.org/docs/authoring/cross-references.html ) 08:56 Adding a citation from a DOI (https://quarto.org/docs/visual-editor/technical.html#citations ) 10:10 Seamlessly switching between output formats 10:58 Creating Quarto presentations (https://quarto.org/docs/presentations/ ) 14:36 Customizing the output location of code in presentations (https://quarto.org/docs/presentations/revealjs/#output-location ) 16:09 Creating a website from scratch (https://quarto.org/docs/websites/ ) 19:19 Creating multi-format documents (https://quarto.org/docs/output-formats/html-multi-format.html ) 20:22 Publishing the website to QuartoPub (https://quarto.org/docs/publishing/quarto-pub.html )

Why Shiny for Python? - Posit PBC
Learn how Shiny for Python’s design philosophy sets it apart from Streamlit, Dash, and traditional web development frameworks.
With Shiny for Python out of alpha as of April, many have wondered how it stacks up against other popular alternatives. In this video, Gordon Shotwell – developer advocate on the Shiny team at Posit – explores the design philosophy behind Shiny for Python and how it compares to other frameworks for developing data science web applications. If you are a data scientist working mostly in Python, we hope this motivates you to take a serious look at Shiny for Python.
Learn more on Posit blog, https://posit.co/blog/why-shiny-for-python/
00:00 What is Shiny for Python? 03:05 What is Reactivity? 04:19 How does Shiny compare to Streamlit? 05:14 What are the main differences between Streamlit and Shiny for Python? 07:05 Why should I prefer Shiny over Streamlit? 09:09 How does Shiny compare to Dash? 10:22 What is the difference between a stateless and a stateful application? 12:19 Why consider Shiny for Python over Dash? 13:37 Shiny for Python’s Design Philosophy

posit::conf(2023) Workshop:Enhancing Communication & Collaboration with Quarto and Jupyter Notebooks
Register now: http://pos.it/conf Instructor: Hamel Husain Workshop Duration: 1-Day Workshop
This workshop is for you if you: • have some experience with Python and Jupyter and want to learn how Quarto can support and enhance your workflows • want to learn about turning your notebooks to websites and publications • want to learn how to write python packages with Jupyter notebooks and Quarto with the help of nbdev
The workshop will assume some prior experience with Python and Jupyter Notebooks.
Sharing knowledge through writing is a critical aspect of scientific activity, including data science. It allows researchers to communicate their findings and insights to a wider audience, build upon existing work, and collaborate with others in their field. However, until recently, there have been limited options for publishing long-form writing and expository analyses authored in Jupyter Notebooks, a popular medium for data scientists.
Enter Quarto - an innovative, open-source scientific and technical publishing system compatible with Jupyter Notebooks and other popular mediums. Quarto provides data scientists with a seamless way to publish their work in a high-quality format that is easily accessible and shareable. With Quarto, researchers can turn their Jupyter Notebooks into professional-looking publications in a variety of formats, including web pages, books, and slides.
In this workshop, we will demonstrate how Quarto enables data scientists to turn their work products into professional, high-quality publications, websites, blog posts, and other shareable artifacts. As a bonus, we will also discuss how you can create and document Python packages using Jupyter notebooks and Quarto with the help of nbdev.
The learning outcomes for the workshop include: • examine case studies where sharing scientific knowledge has greatly improved the efficacy of data science teams • author documents in plain text markdown or Jupyter notebooks with equations, citations, crossrefs, figure panels, callouts, and advanced layouts • learn how to author content in IPython/Jupyter and the Quarto VS Code extension • leverage Quarto for creating different types of publications, including personal blogs, knowledge management for teams, notes, books, websites, and presentation slides • extend Quarto with notebook filters and extensions • host websites and publications on platforms like GitHub Pages, QuartoPub, and Netlify • test notebooks and documentation with Quarto’s execution options • create and document Python packages with nbdev and Quarto
posit::conf(2023) Workshop: What They Forgot to Teach You About R
Register now: http://pos.it/conf Instructors: Shannon Pileggi and David Aja Workshop Duration: 1-Day Workshop
This course is for you if you answer yes to these questions: • Have you been using R for a while and feel there might be better ways to organize your R life, but don’t know what they are? • Do you want to put programming on pause and learn about actionable programming-adjacent workflows for streamlining analysis in R? • Are you willing to feel a bit of (git) pain to leverage the benefits of version control for collaboration and time travel?
This 1-day What They Forgot (WTF) To Teach You About R workshop is for experienced R and RStudio users who want to (re)design their R lifestyle via project-oriented workflows and version control for data science (Git/GitHub). At the conclusion of the workshop, you will have strategies for organizing data science projects and workflows, employing robust file paths, constructing human and machine-readable file names, and facilitating collaboration with yourself or others via version control
posit::conf(2023) Workshop: Web Design for Shiny Developers
Register now: http://pos.it/conf Instructors: Maya Gans and David Granjon
This course is for you if: • you are an R developer with basic Shiny knowledge • you want to quickly test new business ideas • you want to increase the reach of your apps and websites
Website design and development is one of the most critical factors contributing to whether the user has a good or poor experience while browsing your site, directly influencing the overall impression of your brand. Besides, bad design decisions can significantly impact app performances. By exposing you to common governing rules of design, this course will walk you through the entire design process, from ideation to execution. These rules will help you to become a better collaborator to design teams, and enable you to create beautiful front-end experiences for Shiny
posit::conf(2023) Workshop: Tidy time series and forecasting in R
Register now: http://pos.it/conf Instructor: Rob J Hyndman Workshop Duration: 2-Day Workshop
This course is for you if you: • already use the tidyverse packages in R such as dplyr, tidyr, tibble and ggplot2 • need to analyze large collections of related time series • would like to learn how to use some tidy tools for time series analysis including visualization, decomposition and forecasting
It is common for organizations to collect huge amounts of data over time, and existing time series analysis tools are not always suitable to handle the scale, frequency and structure of the data collected. In this workshop, we will look at some packages and methods that have been developed to handle the analysis of large collections of time series.
On day 1, we will look at the tsibble data structure for flexibly managing collections of related time series. We will look at how to do data wrangling, data visualizations and exploratory data analysis. We will explore feature-based methods to explore time series data in high dimensions. A similar feature-based approach can be used to identify anomalous time series within a collection of time series, or to cluster or classify time series. Primary packages for day 1 will be tsibble, lubridate and feasts (along with the tidyverse of course).
Day 2 will be about forecasting. We will look at some classical time series models and how they are automated in the fable package, and we will explore the creation of ensemble forecasts and hybrid forecasts. Best practices for evaluating forecast accuracy will also be covered. Finally, we will look at forecast reconciliation, allowing millions of time series to be forecast in a relatively short time while accounting for constraints on how the series are related
posit::conf(2023) Workshop: Teaching Data Science Masterclass
Register now: http://pos.it/conf Instructor: Dr. Mine Çetinkaya-Rundel Workshop Duration: 1-Day Workshop
This course is for you if you: • you want to learn / discuss curriculum, pedagogy, and computing infrastructure design for teaching data science with R and RStudio using the tidyverse and Quarto • you are interested in setting up your class in Posit Cloud • you want to integrate version control with git into your teaching and learn about tools and best practices for running your course on GitHub
This masterclass is aimed primarily at participants teaching data science in an academic setting in semester-long courses, however much of the information and tooling we introduce is applicable for shorter teaching experiences like workshops and bootcamps as well. Basic knowledge of R is assumed and familiarity with the tidyverse and Git is preferred.
There has been significant innovation in introductory statistics and data science courses to equip students with the statistical, computing, and communication skills needed for modern data analysis. Success in data science and statistics is dependent on the development of both analytical and computational skills, and the demand for educators who are proficient at teaching both these skills is growing. The goal of this masterclass is to equip educators with concrete information on content, workflows, and infrastructure for painlessly introducing modern computation with R and RStudio within a data science curriculum. In a nutshell, the day you’ll spend in this workshop will save you endless hours of solo work designing and setting up your course.
Topics will cover teaching the tidyverse in 2023, highlighting updates to R for Data Science (2nd ed) and Data Science in a Box as well as present tooling options and workflows for reproducible authoring, computing infrastructure, version control, and collaboration.
The workshop will be comprised of four modules: • Teaching data science with the tidyverse and Quarto • Teaching data science with Git and GitHub • Organizing, publishing, and sharing of course materials • Computing infrastructure for teaching data science
Throughout each module we’ll shift between the student perspective and the instructor perspective. The activities and demos will be hands-on; attendees will also have the opportunity to exchange ideas and ask questions throughout the session.
In addition to gaining technical knowledge, participants will engage in discussion around the decisions that go into developing a data science curriculum and choosing workflows and infrastructure that best support the curriculum and allow for scalability. We will also discuss best practices for configuring and deploying classroom infrastructures to support these tools

posit::conf(2023) Workshop: Steal like an Rtist: Creative Coding in R
Register now: http://pos.it/conf Instructors: Ijeamaka Anyene Fumagalli & Sharla Gelfand Workshop Duration: 1-Day Workshop
This workshop is for you if you: • are comfortable with R and RStudio, experience with tidyverse and ggplot2 • are interested in applying data visualization skills more creatively, but may not know where to start or how to develop style/inspiration • are an artist interested in exploring code as another medium for creating their work
R is a tool for data analysis but also can be used for self-expression. This workshop will be an introduction to creative coding in R in order to make visual art. We will take an inspiration-first approach, using compelling pieces to discuss and learn the techniques that shape the work. This workshop takes guidance from its namesake, the book “Steal Like An Artist” by Austin Kleon - once we have identified and learned to recreate existing works, we will cover how to take this inspiration and transform, remix, or reinterpret it in the pursuit of developing our own work and artistic styles.
This workshop is hands-on and will cover color theory and manipulation, a reintroduction of the data frame as the foundation for creating art (instead of just for analyzing data!), using ggplot2 as an artistic canvas, creating basic and specialized shapes, tiling and pattern making, developing your own functions and using iteration. We will also discuss how to use controlled randomness to convert a standalone piece into a generative art system that can produce many distinct outputs. Creative coding may seem a world apart from data analysis, but we see a large overlap and intersection of the skills used in both, not to mention the creative muscles that are already used in data visualization
posit::conf(2023) Workshop: Shiny in Production: Tools and Techniques
Register now: http://pos.it/conf Instructors: Eric Nantz and Mike Thomas Workshop Duration: 1-Day Workshop
This course is for you if you: • had a Shiny application work just fine on your machine, but encounters critical issues after deployment • are eager to prospectively apply techniques before deployment to plan for the unexpected • want to know the benefits and trade-offs between various ways of hosting Shiny applications
Shiny brings tremendous possibilities to share innovative data science workflows with others inside an intuitive web interface. Many in the Shiny community have shared effective development techniques for building a robust application. Even with the best intentions during application development, a myriad of issues can arise once it leaves the confines of your machine. In this one-day workshop, you will implement core techniques to account for common scenarios that arise once your application is used in production, such as accounting for thousands of simultaneous users, how effective profiling can address performance bottlenecks, and ensuring your application is doing as little as possible to ensure a smooth and responsive experience.
This course assumes intermediate knowledge of building Shiny applications in R and prior experience deploying an application to a platform such as the shinyapps.io service or products like Posit Connect
posit::conf(2023) Workshop: Shiny Dashboards
Register now: http://pos.it/conf Instructor: Colin Rundel Workshop Duration: 1 Day Workshop
This course is for you if you: • have some experience with Shiny and want to improve your skills, • are interested in building dashboards for reporting, and • want to learn about styling and theming your dashboard.
In this workshop we will explore all of the interesting and variety of ways you can use Shiny: from adding dynamic elements to your existing RMarkdown / Quarto documents to building and deploying dashboards for reporting, and customizing the appearance and themeing of the app (and your outplots like plots and tables). This workshop assumes that you have a basic familiarity with Shiny (e.g. the ability to write simple apps and basics of reactivity)
posit::conf(2023) Workshop: Machine Learning and Deep Learning with Python
Register now: http://pos.it/conf Instructor: Sebastian Raschka Workshop Duration: 1-Day Workshop
In this workshop, you will learn the machine and deep learning fundamentals using a modern open-source stack. We’ll start with a brief introduction to Python’s scientific computing libraries, including NumPy, Pandas, and Matplotlib, which provide the foundation for data analysis and visualization. From there, we will dive into the scikit-learn API, a user-friendly, open-source library for machine learning in Python. You will learn how to use it to create machine learning classifiers and apply tree-based models like random forests, gradient boosting, and XGBoost.
In the second part of this workshop, we will also cover deep learning concepts and introduce PyTorch, the most widely used deep learning research library. You will also learn about training multi-layer neural networks efficiently using multi-GPU and mixed-precision techniques. Finally, we will explore how to use a pretrained large language transformer with scikit-learn and fine-tune it on a custom downstream task using PyTorch.
By the end of this workshop, you will have a good understanding of the fundamental principles of machine learning and be able to construct advanced classification pipelines for tabular data using scikit-learn. Additionally, you will gain experience in image classification and natural language processing techniques using PyTorch and be able to implement them in your own predictive modeling projects effectively
posit::conf(2023) Workshop: It’s Not Just Code: Managing an Open Source Project
Register now: http://pos.it/conf Instructor: Tracy Teal Workshop Duration: 1-Day Workshop
This workshop is for you if you: • are involved in maintaining an open source project and struggling to feel like it’s sustainable, or are looking for practice or guidance • are starting out or interested in being involved in maintaining an open source project, and want to learn how to set up the project for the most effective engagement from contributors and users • are interested in learning more about the people side of open source project maintenance and connecting with other maintainers
posit::conf(2023) Workshop: Introduction to tidymodels
Register now: http://pos.it/conf Instructors: Hannah Frick, Simon Couch, Emil Hvitfeldt Workshop Duration: 1-Day Workshop
This workshop is for you if you: • have intermediate R knowledge, experience with tidyverse packages, and either of the R pipes • can read data into R, transform and reshape data, and make a wide variety of graphs • have had some exposure to basic statistical concepts such as linear models, random forests, etc.
Intermediate or expert familiarity with modeling or machine learning is not required.
This workshop will teach you core tidymodels packages and their uses: data splitting/resampling with rsample, model fitting with parsnip, measuring model performance with yardstick, and basic pre-processing with recipes. Time permitting, you’ll be introduced to model optimization using the tune package. You’ll learn tidymodels syntax as well as the process of predictive modeling for tabular data



posit::conf(2023) Workshop: Introduction to Quarto with R + RStudio
Register now: http://pos.it/conf Instructor: Andrew Bray Workshop Duration: 1-Day Workshop
This course is for you if you: • have a basic knowledge of how to use the RStudio IDE • have some familiarity with markdown, or • are excited to author flexible single documents like technical reports and slide presentations
Seasoned users of R Markdown will get more out of the Advanced Quarto with R and RStudio: Projects, Websites, Books, and More workshop, which is focused on projects, a distinct strength of Quarto in authoring work that spans multiple documents.
This workshop will prepare you to author a rich array of documents in Quarto, the next generation of R Markdown. Quarto is an open-source scientific and technical publishing system that offers multilingual programming language support to create dynamic and static documents, books, presentations, blogs, and other online resources.
The focus for this workshop will be on single documents. You will learn to create static documents, to add interactivity to them with Shiny and htmlwidgets, or steer them in the direction of sophisticated scientific documents. In the afternoon you’ll take the same authoring approaches to create slide presentations in various formats such as reveal.js, beamer, and pptx
posit::conf(2023) Workshop: Introduction to Data Science with R and Tidyverse
Register now: http://pos.it/conf Instructors: Posit Academy Instructors Workshop Duration: 2-Day Workshop
This course is ideal for: • those new to R or the Tidyverse • anyone who has dabbled in R, but now wants a rigorous foundation in up-to-date data science best practices • SAS and Excel users looking to switch their workflows to R
This is not a standard workshop, but a six-week online apprenticeship that culminates in two in-person days at posit::conf(2023). Begins August 7th, 2023. No knowledge of R required. Visit posit.co/academy to learn more about this uniquely effective learning format.
Here, you will learn the foundations of R and the Tidyverse under the guidance of a Posit Academy mentor and in the company of a close group of fellow learners. You will be expected to complete a weekly curriculum of interactive tutorials, and to attend a weekly presentation meeting with your mentor and fellow students. Topics will include the basics of R, importing data, visualizing data with ggplot2, wrangling data with dplyr and tidyr, working with strings, factors, and date-times, modelling data with base R, and reporting reproducibly with quarto
posit::conf(2023) Workshop: Introduction to Data Science with Python
Register now: http://pos.it/conf Instructors: Posit Academy Instructors Workshop Duration: 1 Day Workshop
This course is ideal for: • those new to Python • anyone who has dabbled in Python, but is not sure how to use Python to do data science • R users who want to work more closely with Python users on their team
This is not a standard workshop, but a six-week online apprenticeship that culminates in one in-person day at posit::conf(2023). Begins August 7th, 2023. No knowledge of Python required. Visit posit.co/academy to learn more about this uniquely effective learning format.
Here, you will learn the foundations of Python and data analysis under the guidance of a Posit Academy mentor and in the company of a close group of fellow learners. You will be expected to complete a weekly curriculum of interactive tutorials, and to attend a weekly presentation meeting with your mentor and fellow students. Topics will include importing packages and datasets, visualizing data with plotnine, wrangling data with pandas, writing and applying functions, and reporting reproducibly with quarto
posit::conf(2023) Workshop: Getting Started with Shiny for R
Register now: http://pos.it/conf Instructor: Colin Rundel Workshop Duration: 1-Day Workshop
This course is for you if you: • are comfortable with the basics of R, such as writing functions, indexing vectors and lists, debugging simple errors, and working with data structures like data frames • are interested in creating interactive web applications • have no or minimal experience with Shiny for R
Shiny is an R package that makes it easy to build interactive web apps straight from R. This workshop will start at the beginning: designing and creating user interfaces, learning and mastering the reactive model that connects your R code to the interface, and deploying apps publicly and privately. We will wrap up with some intermediate-level tools: debugging and modularizing your apps and implementing dynamic user interfaces. In the end, you’ll be a confident Shiny user, able to design interactive apps to achieve your purpose and produce a polished and professional implementation. If you have a bit of experience, you’ll see things in a new way. If you don’t, we’ll get you started on the right footing
posit::conf(2023) Workshop: Fundamentals of Package Development
Register now: http://pos.it/conf Instructor: Andy Teucher Workshop Duration: 1-Day Workshop
This workshop is for you if: • You have written several R scripts and find yourself wondering how to reuse or share the code you’ve written • You know how to write functions in R • You are looking for a way to take the next step in your R programming journey
We will be demonstrating some workflows using Git and GitHub. Knowledge of these tools is not required, and you will absolutely be able to complete the workshop without them, but some of the lessons will be more rewarding to you if you are prepared to try them out. If you are looking to get started with Git and GitHub, we recommend you register for the “What they forgot to teach you about R” workshop on Day 1, and join us for this workshop on Day 2.
We are often faced with the need to share our code with others, or find ourselves writing similar code over and over again across different projects. In R, the fundamental unit of reusable code is a package, containing helpful functions, documentation, and sometimes sample data. This workshop will teach you the fundamentals of package development in R, using tools and principles developed and used extensively by the tidyverse team - specifically the ‘devtools’ family of packages including usethis, testthat, and roxygen2. These packages and workflows help you focus on the contents of your package rather than the minutiae of package structure.
You will learn the structure of a package, how to organize your code, and workflows to help you develop your package iteratively. You will learn how to write good documentation so that users can learn how to use your package, and how to use automated testing to ensure it is functioning the way you expect it to, now and into the future. You will also learn how to check your package for common problems, and how to distribute your package for others to use.
This will be an interactive 1-day workshop, and we will be using the RStudio IDE to work through the materials, as it has been designed to work well with the development practices we will be featuring
posit::conf(2023) Workshop: From R User to R Programmer
Register now: http://pos.it/conf Instructors: Emma Rand and Ian Lyttle Workshop Duration: 1-Day Workshop
This course is for you if you: • have experience equivalent to an introductory data science course using tidyverse • feel comfortable with the Whole game chapter of R for Data Science
This is a one-day, hands-on workshop for those who have embraced the tidyverse and want to improve their R programming skills and, especially, reduce the amount of duplication in their code. The two main ways to reduce duplication are creating functions and using iteration. We will use a tidyverse approach to cover function design and iteration with {purrr}.
• Master the art of writing functions that do one thing well, adhere to existing conventions and can be fluently combined together to solve more complex problems. • Learn how to perform the same action on many objects using code which is succinct and easy to read
posit::conf(2023) Workshop: Engaging and Beautiful Data Visualizations with ggplot2
Register now: http://pos.it/conf Instructor: Cédric Scherer Workshop Duration: 1-Day Workshop
This course will be appropriate for you if you: • already know how to create basic graphics with the ggplot2 package • aim to improve the design of your ggplot outputs • want to learn how to create more complex charts which feature multiple layers, annotations, text styling, custom themes, and more
Creating effective and easily accessible data visualizations of high quality in an efficient and preferably reproducible way is an essential skill for everyone working in a data-related field. Luckily, by leveraging the functionality of ggplot2, the most famous package for data visualization with R, and related extension packages one can create highly customized data visualization without the need for post-processing.
This workshop provides everything one needs to know to create and customize numerous chart types with ggplot2. Participants will learn the most important steps and helpful tips to create visually appealing and informative graphics with a code-only approach. The power of ggplot2 and related extension packages will be illustrated with advanced real–life examples that help to understand useful coding tricks and the process of creating engaging and effective visualizations. The workshop will particularly focus on more advanced tasks with ggplot2 such as styling labels and titles, customizing themes and visual aesthetics, and using less-common chart types
posit::conf(2023) Workshop: DevOps for Data Scientists
Register now: http://pos.it/conf Instructor: Rika Gorn Workshop Duration: 2-Day Workshop
This workshop is for you if you: • are a data scientist or analyst who wants to put their work into production, • want to learn a more about Docker containers and virtual machines, or • want to better understand importance of networking, security, storage, and different server architectures to deploying data apps.
In this workshop, we will discuss ways to better containerize, deploy, and scale your data products. We’ll use both R and shell scripting to virtualize Posit products in the cloud. You’ll learn about servers, networking, security, and authorization to be dangerous – or at least to understand your DevSecOps teams. By the end of the workshop you will have the tools to start deploying your own data science assets into production
posit::conf(2023) Workshop: Designing Data Visualizations to Successfully Tell a Story
Register now: http://pos.it/conf Instructor: Cédric Scherer Workshop Duration: 1-Day Workshop
This course is for you if you: • want to understand and learn the art of communicating data with impactful visualizations • aim to improve your data visualization design to create effective and informative graphics • are willing to spend a bit more time to choose the right chart, proper color palettes, and suitable fonts along with additional elements to guide the viewer
Communicating data through meaningful and easily accessible visualization is a critical competence for most data-related roles including data scientists, analysts, scientific researchers, and managers. A well-designed graphic is able to inform, spark engagement, explain patterns, and drive decisions and actions. At the same time, poor choices in the design process can complicate interpretation or even, intentionally or unintentionally, mislead the audience.
The aim of this course is to demystify the creative processes of data visualization design to turn data into a meaningful story. Participants will learn helpful tips and tricks to create appealing and informative data visualizations that are not “just showing the numbers” but successfully tell a story. We will cover principles of good data visualization design, explore different options to display data, and discuss ways to guide and engage viewers with the aim to create impactful graphics. The course also features sessions on picking suitable yet beautiful colors, what to consider when choosing and pairing typefaces, and the layout of graphics, also in the context of dashboard building
posit::conf(2023) Workshop: Deploy and Maintain Models with vetiver
Register now: http://pos.it/conf Instructor: Julia Silge Workshop Duration: 1-Day Workshop
This workshop is for you if you: • have intermediate R or Python knowledge (this will be a “choose your own adventure” workshop where you can work through the exercises in either R or Python) • can read data from CSV and other flat files, transform and reshape data, and make a wide variety of graphs • can fit a model to data with your modeling framework of choice
We expect participants to have exposure to basic modeling and machine learning practice, but NOT expert familiarity with advanced ML or MLOps topics.
Many data scientists understand what goes into training a machine learning or statistical model, but creating a strategy to deploy and maintain that model can be daunting. In this workshop, learn what MLOps (machine learning operations) is, what principles can be used to create a practical MLOps strategy, and what kinds of tasks and components are involved. We’ll use vetiver, a framework for MLOps tasks in Python and R, to version, deploy, and monitor the models you have trained and want to deploy and maintain in production reliably and efficiently

posit::conf(2023) Workshop: Data Science Workflows with Posit Tools — R Focus
Register now: http://pos.it/conf Instructor: Ryan Johnson and Katie Masiello Workshop Duration: 1-Day Workshop
This course is for you if you: • Build finished data products starting from raw data and are looking to improve your workflow • Are looking to expand your knowledge of Posit open source and professional tools • Want to improve interoperability between data products in your work or on your team • Have experience developing in R. An analogous course with a Python focus is also offered
In this R-focused workshop, we will discuss ways to improve your data science workflows! During the course, we will review packages for data validation, alerting, modeling, and more. We’ll use Posit’s open source and professional tools to string all the pieces together for an efficient workflow. We’ll discuss environments, managing deployed content, working with databases, and interoperability across data products
posit::conf(2023) Workshop: Data Science Workflows with Posit Tools — Python Focus
Register now: http://pos.it/conf Instructors:Gagan Singh and Sam Edwardes Workshop Duration: 1-Day Workshop Workshop Duration: 1-Day Workshop This course is for you if you: • Build finished data products starting from raw data and are looking to improve your workflow • Are looking to expand your knowledge of Posit open source and professional tools • Want to improve interoperability between data products in your work or on your team • Have experience developing in Python. An analogous course with an R focus is also offered
In this Python-focused workshop, we will discuss ways to improve your data science workflows! During the course, we will review packages for data validation, alerting, modeling, and more. We’ll use Posit’s open source and professional tools to string all the pieces together for an efficient workflow. We’ll discuss environments, managing deployed content, working with databases, and interoperability across data products
posit::conf(2023) Workshop: Causal Inference with R
Register now: http://pos.it/conf Instructors: Malcolm Barrett and Travis Gerke
This course is for you if you: • know how to fit a linear regression model in R • have a basic understanding of data manipulation and visualization using tidyverse tools • are interested in understanding the fundamentals behind how to move from estimating correlations to causal relationships
In this workshop, we’ll teach the essential elements of answering causal questions in R through causal diagrams, and causal modeling techniques such as propensity scores and inverse probability weighting.
In both data science and academic research, prediction modeling is often not enough; to answer many questions, we need to approach them causally. In this workshop, we’ll teach the essential elements of answering causal questions in R through causal diagrams, and causal modeling techniques such as propensity scores and inverse probability weighting. We’ll also show that by distinguishing predictive models from causal models, we can better take advantage of both tools. You’ll be able to use the tools you already know–the tidyverse, regression models, and more–to answer the questions that are important to your work
posit::conf(2023) Workshop: Big Data with Arrow
Register now: http://pos.it/conf Instructors: Nic Crane and Stephanie Hazlitt Workshop Duration: 1-Day Workshop
This course is for you if you: • want to learn how to work with tabular data that is too large to fit in memory using existing R and tidyverse syntax implemented in Arrow • want to learn about Parquet and other file formats that are powerful alternatives to CSV files • want to learn how to engineer your tabular data storage for more performant access and analysis with Apache Arrow
Data analysis pipelines with larger-than-memory data are becoming more and more commonplace. In this workshop you will learn how to use Apache Arrow, a multi-language toolbox for working with larger-than-memory tabular data, to create seamless “big” data analysis pipelines with R.
The workshop will focus on using the the arrow R package—a mature R interface to Apache Arrow— to process larger-than-memory files and multi-file data sets with arrow using familiar dplyr syntax. You’ll learn to create and use interoperable data file formats like Parquet for efficient data storage and access, with data stored both on disk and in the cloud, and also how to exercise fine control over data types to avoid common large data pipeline problems. This workshop will provide a foundation for using Arrow, giving you access to a powerful suite of tools for performant analysis of larger-than-memory data in R
posit::conf(2023) Workshop: Advanced tidymodels
Register now: http://pos.it/conf Instructor: Max Kuhn, Software Engineer, Posit Workshop Duration: 1-Day Workshop
This workshop is for you if you: • have used tidymodels packages like recipes, rsample, and parsnip • are comfortable with tidyverse syntax (e.g. piping, mutates, pivoting) • have some experience with resampling and modeling (e.g., linear regression, random forests, etc.), but we don’t expect you to be an expert in these
In this workshop, you will learn more about model optimization using the tune and finetune packages, including racing and iterative methods. You’ll be able to do more sophisticated feature engineering with recipes. Time permitting, model ensembles via stacking will be introduced. This course is focused on the analysis of tabular data and does not include deep learning methods.
Participants who have completed the “Introduction to tidymodels” workshop will be well-prepared for this course. Participants who are new to tidymodels will benefit from taking the Introduction to tidymodels workshop before joining this one

posit::conf(2023) Workshop: Advanced Quarto with R + RStudio
Register now: http://pos.it/conf Instructor: Andrew Bray Workshop Duration: 1-Day Workshop
This course is for you if you: • have a basic knowledge of how to use the RStudio IDE • have experience working with single R Markdown and/or Quarto files • are excited to author multi-document projects like books, websites, and blogs
Participants who are new to computational documents will benefit from taking Intro to Quarto with R and RStudio: Documents and Presentations before joining this workshop.
This workshop will prepare you to author a rich array of documents in Quarto, the next generation of R Markdown. Quarto is an open-source scientific and technical publishing system that offers multilingual programming language support to create dynamic and static documents, books, presentations, blogs, and other online resources.
The focus for this workshop will be on projects that weave together multiple documents and allow you to write books and build websites. You will also learn various ways to deploy and publish your Quarto projects on the web
posit::conf Workshop:Leveraging & Contributing to the Pharmaverse for Clinical Trial Reporting in R
Register now: http://pos.it/conf Instructors: Pawel Rucki, Christina Fillmore, Thomas Neitmann Workshop Duration: 1-Day Workshop
You should take this workshop if you are interested in the future of clinical trial reporting, and would like to join this shift to between company collaboration.
In this workshop we will introduce the pharmaverse, a collection of open source R packages that provide the next generation backbone for clinical trial reporting. As of March 2023, 123 people from more than 10 companies have contributed to the pharmaverse packages - and this workshop is about how you can both leverage their work to date and get involved to help evolve this important collection of efforts.
We will create ADaM datasets, prepare tables and figures as well as interactive shiny apps. This course will also give a grounding in how to navigate pharmaverse R packages, and their repositories, and understand how you can contribute
Deploying a Python application with Posit Connect
Posit Connect is our flagship publishing platform for data products built in R and Python.
Learn more: https://posit.co/products/enterprise/connect/
Book a demo of Connect: https://posit.co/schedule-a-call/?booking_calendar__c=RSC_YT_Demo
With Connect, you can deploy, manage, and share your R and Python content, including Shiny applications, Dash, Streamlit, and Voilà applications, R Markdown reports, Jupyter Notebooks, Quarto documents, dashboards, APIs (Plumber, Flask), and more.
Give stakeholders authenticated access to the content they need, and schedule reports to update automatically
Launch different development environments and manage cluster options with Posit Workbench
Posit Workbench: https://posit.co/products/enterprise/workbench/
Data scientists should be able to use the language and development environment they prefer.
Jupyter Notebook, JupyterLab, VS Code, and RStudio are all available development environments within Posit Workbench.
Workbench is also exceptional for managing compute resources. Use Kubernetes and Slurm and adjust the CPU and memory to match the job you’re trying to run
What is Posit Team? [in less than 2 minutes]
Posit Team is the bundle of our most popular products including: Workbench, Connect, and Package Manager.
Together, this bundle delivers an end-to-end toolchain for data science teams committed to R and Python, improving every step of a data scientist’s workflow, from developing insights, to deploying data products, to managing environments.
Learn more at https://posit.co/products/enterprise/team/
Running multiple R & Python sessions at once on Posit Workbench
Posit Workbench is the premier development experience for professional data scientists who use R and Python.
One of the many great features Workbench offers is the ability to run multiple sessions at once, across different languages and development environments.
In this video, we give you a glimpse of that feature.
To watch the full demo of our professional software, go here: https://youtu.be/1KEX3gZTQnE
Learn more about Posit Workbench: https://posit.co/products/enterprise/workbench/
How to deploy a Dash application from VS Code to Posit Connect
Episode 1: Publishing a Dash application to Posit Connect Led by: Ryan Johnson, Data Science Advisor
Follow-up links:
- Posit Team: https://posit.co/products/enterprise/team/
- Talk to us directly: https://posit.co/schedule-a-call/?booking_calendar__c=RST_YT_Demo
- Follow-along blog post: https://posit.co/blog/deploying-a-dash-application-to-posit-connect/
- Source code for example: https://github.com/sol-eng/python-examples
- Posit Team demo resources: pos.it/demo-resources
Timestamps: 00:53 - What is Posit Team? (Posit Workbench, Posit Connect, Posit Package Manager) 3:25 - JumpStart Examples in Posit Connect 4:00 - Opening up a VS Code Session in Posit Workbench 8:03 - Downloading the Dash JumpStart example in Posit Connect 9:40 - Open up the JumpStart example in VS Code in Posit Workbench 11:18 - Install the required Python packages using pip 12:55 - Python packages on Posit Package Manager 15:12 - Defining the packages you want to install (latest, specific date, etc.) 19:12 - Creating an API key in Posit Connect 20:29 - Deployment process from VS Code to Posit Connect 21:36 - Dash application hosted on Posit Connect 22:23 - Access controls in Posit Connect (sharing with the people who need to see your app) 24:10 - Adjusting the runtime of an application in Posit Connect (controlling compute resources) 26:35 - Tags in Posit Connect 26:48 - Vars (if your content requires privileged access) 27:15 - Recap of what was covered in the demo
On the last Wednesday of every month, we host a Posit Team demo and Q&A session that is open to all. You can use this to add the event to your own calendar.
Who are these monthly demos for? Everyone is welcome to join us - regardless of industry, background, or experience!
We will discuss topics that will speak to:
- Data scientists and administrators new to Posit Team or are looking to grow their understanding of our toolchain,
- Teams searching for a new analytic platform built to support open-source data science,
- And, those that are just curious about Posit Team!
What you can expect from the monthly Posit Team demo:
During the session, we will walk through an end-to-end data science workflow and demo the core functionality of Posit Team while highlighting some of our latest features!
While each session’s content will vary slightly, here are a few core topics we will address each month:
- Open Source Analytics: The future of data science is open source. We’ll discuss methods for leveraging open-source tools and packages in a secure and scalable way!
- Deployment: How to share the amazing data science assets your Team has built, including web applications, machine learning models, APIs, and more!
- Data Access: Data comes in various forms and is stored in various ways. We’ll discuss best practices for accessing, reading, and writing data!
- Job Scheduling: Do you have recurring data science jobs? We’ll show you how to automate these processes using Posit Connect.
What is Posit Team?
Posit Team is a bundle of our popular professional software (Posit Workbench, Posit Connect, and Posit Package Manager) for developing data science projects, publishing data products, and managing packages.
Registration is not required. The event will be streamed through YouTube Premiere
RStudio on Amazon SageMaker
Working with analysis or a data set that exceeds the capabilities of your local workstation? One simple option for scaling up is RStudio on Amazon SageMaker.
See how you can get started quickly.
Link to learn more: https://docs.aws.amazon.com/sagemaker/latest/dg/rstudio.html
Hadley Wickham | {purrr} 1.0: A complete and consistent set of tools for functions and vectors
{purrr} has reached the 1.0 milestone, with new features like progress bars, improvements to the map family, and tools for list flattening and simplification.
0:00 Introduction 0:11 What is purrr? 00:32 What is functional programming? 03:08 Announcing purrr 1.0 03:58 Progress bars 05:18 Better error messages 07:18 New map function: map_vec() 09:58 New list_* functions 12:04 Flattening and simplification 17:40 Breaking Changes 22:34 How the tidyverse handles deprecation 24:41 An overview of functional programming 26:22 Closing, resources to help with deprecation, how to submit issues
See more in the {purrr} 1.0.0 release blog post! https://www.tidyverse.org/blog/2023/03/tidyverse-2-0-0/

Embracing R and Python
Listen to Posit’s Chief Scientist Hadley Wickham talk about the future of Posit.
Visit www.posit.co to learn more

Posit Package Manager | Manage R and Python Packages Across Your Organization
Posit Package Manager is a repository management server to organize and centralize R and Python packages across your organization.
Learn more here: https://posit.co/products/enterprise/package-manager/
Use it to provide full mirrors of CRAN, Bioconductor, and PyPI. Restrict access to potentially harmful public packages by curating your own custom repository with only the packages you need. Support air-gapped environments by providing offline access to your package repository
Rich Iannone | What’s new and exciting in gt 0.8.0 | Posit
With the gt package, anyone can make wonderful-looking tables using the R programming language. Rich Iannone, maintainer of gt, shows what’s new and improved in gt 0.8.0!
00:00 Introduction 00:42 Find/Replace values with sub_values() 02:46 Find values and style them with tab_style_body() 05:00 Place a cell in your Quarto/RMarkdown doc with extract_cells() 07:13 Make numbers more readable with cols_align_decimal() 08:54 See column id info with tab_info() 11:03 Date and time formatting improvements
For more details: • Demo script in this video: https://pos.it/gt8 • Read the blog post on gt 0.8.0: https://posit.co/blog/new-features-upgrades-in-gt-0-8-0/ • Learn more at https://gt.rstudio.com/ • See a full list of new features and improvements at https://gt.rstudio.com/news/index.html#gt-080

Quarto with the Quarto Team | An Open-Source Chat
Join Al Manning, Carlos SchIidegger, & Charles Teague, members of the Quarto Team, as they take our questions.
Quarto is an open-source tool for scientific and technical publishing. Create dynamic content with Python, R, Julia, and Observable. Author documents as plain text markdown or Jupyter notebooks. Publish high-quality articles, reports, presentations, websites, blogs, and books in HTML, PDF, MS Word, ePub, and more. Author with scientific markdown, including equations, citations, crossrefs, figure panels, callouts, advanced layout, and more.
Key Resources: ⬡ Learn more and get started with Quarto at quarto.org
Contact ⬡ Bug reports and feature requests - https://github.com/quarto-dev/quarto-cli/issues ⬡ Need help? Github discussions - https://github.com/quarto-dev/quarto-cli/discussions
Introduction Videos for Quarto ⬡ Mine and Julia talk, https://www.youtube.com/watch?v=p7Hxu4coDl8 ⬡ Quarto Series, 1️⃣ Welcome to Quarto Workshop led by Tom Mock: https://www.youtube.com/watch?v=yvi5uXQMvu4 2️⃣ Building a Blog with Quarto led by Isabella Velásquez: https://www.youtube.com/watch?v=CVcvXfRyfE0&feature=youtu.be 3️⃣ Beautiful reports and presentations with Quarto led by Tom Mock: https://www.youtube.com/watch?v=hbf7Ai3jnxY&feature=youtu.be
Timestamps
00:00:00 Introductions
2:55 Why open source?
6:20 Can we expect to see Quarto available to R-users via CRAN any time soon?
9:10 Quarto and Google Docs?
9:49 Lua filters/shortcodes. Advice for a good development environment for prototyping and debugging?
14:59 Is there a single documentation page for ALL the quarto-specific YAML options? https://quarto.org/docs/reference
16:15 Navigating Quarto’s documentation.
18:00 Is there something like Observable SQL cells on the roadmap?
20:10 Is there something closer to {bookdown} for Quarto? What is the best way to retain data and environment objects in a quarto book? Is there any path to enabling this? See Includes, https://quarto.org/docs/authoring/includes.html
24:20 Flexdashboard? Coming soon.
26:30 A big challenge in the adoption is that Quarto is competing with ipython notebooks for mindspace, what does the Quarto team think about that? Quarto and Jupyter Notebooks will hopefully be thought of as complementary to one another, with Quarto helping a lot with narrative, layout, and appearance for publication and sharing.
30:10 Where should I go to contact you about an issue? What if the issue isn’t just Quarto, say, Quarto + Jupyter?
31:50: What is the Quarto team hoping to see the community produce? Feedback, reporting in github issues. Quarto Extensions.
34:05 Custom styling, configuring grid options. Any tips or anything in the roadmap that will help users finetune the look and feel of their output?
38:40 Terminology question; what do we call a published Quarto doc? (or webpage, blog, etc.?)
40:00 How do I stay up to date with Quarto? Getting the latest release and learning about what is new?
See what’s up on quarto.org. Look under get-started and under downloads for pre-releases
What is Posit Connect | Deploy All of Your R & Python Content
Posit Connect is our flagship professional product for data scientists that want to share their data products with other.
Learn more at https://posit.co/products/enterprise/connect/
Whether you’re building a Shiny application, a Dash application, a Quarto report, or dashboard, you can host it on Posit Connect.
Posit Connect supports all the languages that data scientists love, as well as the development environments they love to build in
Open Source Chat - {gt} with Rich Iannone
Join Rich Iannone, maintainer of the {gt} package, as he takes questions from the community about the latest in {gt} v0.7.0, and building great looking data display tables with R.
Key Resources: ⬡ Get started with {gt} - https://gt.rstudio.com
Reach out: 38:48 - How do I ask Rich about {gt}, feature requests, bug reports, how to solve a problem via {gt}? Rich and the {gt} team would love to hear from you. ⬡ Feature requests & bug reports with GitHub Issues, https://github.com/rstudio/gt/issues ⬡ GitHub Discussions, https://github.com/rstudio/gt/discussions ⬡ Ask the community a question, https://community.rstudio.com/tag/gt ⬡ Follow {gt} on Twitter, feel free to reach out and ask questions, https://twitter.com/gt_package
Timestamps
Rich Iannone Introduction.
03:52 - Why {gt}? - What does {gt} bring to the table? Why so much effort into static, data display tables?
05:50 - Why open source? Why is {gt} open source and why have you dedicated your career to develop open source software?
08:30 - {gt} v0.7.0, Tell us about those new vector formatting functions in {gt}. Why did you include them? Could you show us some examples?
{gt}’s vector formatting functions help you customize the styling, look and feel of your values. Converting the output values R gives you, and making them look exactly the way you want them to can be tricky. A lot of work was put into {gt} to give nice value formatting options. You can now access all these outside of a gt table; e.g. in text, in a plot, etc.
22:35 - Could you provide an example or two with the new styling function called opt_stylize()? What kinds of tables can you make with that? Can you extend that with your own tweaks?
28:15 - Can you make your own themes and share them? “How do I create my own custom theme for my table? A theme I can share with the rest of my organization?”
31:58 - What is the distinction between tab_options and the opt_* functions? Why would a function be in opt_* and not tab_options?
34:00 - sub_values() function, to find and replace certain values in your table.
36:50 - What is the current support for latex in {gt} at the moment? “Personally, I much prefer HTML, but for scientific publications, we are asked to provide a LaTeX file.”
42:50 - “In my work, I often produce A4 output in PDF, mainly with ggplot2 content. It would be nice to be able to combine ggplot + gt tables in a similar way {patchwork} works. Having the plot and the table next to it is very useful sometimes.”
44:30 - Interactive Tables with {gt}?
47:45 - “Any plans to make applying of same style to several columns easier? Unless I’m mistaken, the locations argument of tab_style requires one to specify an individual column. See here: https://gt.rstudio.com/reference/tab_style.html#examples."
Yes, supply a vector of columns or use tidyselect functions.
49:15 - “Excel output with {gt}? Would be a huge improvement. I often have to produce tabular output that can be easily reused. Usually it means Excel tables. So far I have mainly done this with Python and openpyxl or PyWin32 (through COM). A simple solution in R would be great.”
50:20 - Support for additional output formats with {gt}? Excel, PowerPoint, etc.?
50:25 - {pointplank}, a package to methodically validate your data whether in the form of data frames or as database tables., https://rich-iannone.github.io/pointblank/
. Check out the workshop materials at https://github.com/rich-iannone/pointblank-workshop
55:50 - “Are there ways to have grouped rows? I mean when repeated rows have same characters can we merge them to one?”
58:00 - “Is there an ability to add ‘battleship coordinates’ (e.g. column letters & row numbers) to a gt object? This is a standard for table across my org and I’ve been trying to figure out how to implement it.”
59:59 “Do you have suggestions or examples of building out & applying corporate formatting to gt tables (e.g. adding a company logo, company colors, etc.)?”
01:04:30 - “With PDF/LaTeX output for wide tables, it does not shrink the table.”

What’s New in {gt} 0.7.0?
gt 0.7.0 was just released. Rich Iannone, maintainer of gt, dives into the 7 new features added.
For more details, ⬢ Read the blog post on gt 0.7 https://www.rstudio.com/blog/all-new-things-in-gt-0-7-0/ . ⬢ Learn more about gt at https://gt.rstudio.com/ . ⬢ Follow the gt twitter account, https://twitter.com/gt_package .
00:07 The new Word table output format, .docx output. 00:34 A whole new family of vector formatting functions (vec_fmt_*()) has been added. 01:03 Table presets/themes styling with the new opt_stylize() function. 01:50 The new tab_stub_indent() for superfine control over row label indentation (in the stub) 02:26 The new fmt_duration() function for formatting of time duration values. 03:32 An upgraded gtsave() that uses {webshot2}, .png output looks better. 04:14 Accessibility enhancements for HTML table outputs

Plot Outputs in Shiny for Python || Winston Chang || RStudio
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack. You can try out Shiny for Python without installing a single thing… All in the browser.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Winston Chang (@winston_chang)

Multiple Inputs in Shiny for Python || Winston Chang || RStudio
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack. You can try out Shiny for Python without installing a single thing… All in the browser.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Winston Chang (@winston_chang)

Getting Started with Shiny for Python - in the browser! || Winston Chang || Posit
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack. You can try out Shiny for Python without installing a single thing… All in the browser.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Winston Chang (@winston_chang)

Submitting Your Work to the Table Contest | 2022 Table Contest
Rich Iannone walks through how to submit a table to the 2022 Table Contest. He explains considerations for each field, and how to update & edit your entry afterwards.
Learn more about the 2022 Table Contest at https://www.rstudio.com/blog/rstudio-table-contest-2022/

Create & Publish a Quarto Blog on Quarto Pub in 100 Seconds | Quarto Pub
Thomas Mock, Quarto Product Manager, walks you through how to build a simple blog with Quarto and share it with the world on quarto.pub, all in less than two minutes.
Quarto is the multi-language publishing system. It also allows you to publish executable code blocks to include R, Python, Julia, or Observable JS output in your blog posts (and many other formats).
Quarto websites and blogs are particularly excellent ways to develop your technical skills and share your learnings with the world.
Resources, ⬡ Creating a Quarto Blog, https://quarto.org/docs/websites/website-blog.html ⬡ Publishing to Quarto Pub, https://quarto.org/docs/publishing/quarto-pub.html ⬡ Customize your Quarto blog or Website. This example creates and deploys a simple Quarto blog template, but there are ways to customize and style your content. Isabella Velásquez walks through this in detail at the Sept 2022 meetup, https://youtu.be/CVcvXfRyfE0 ⬡ Learn more about Quarto at quarto.org.
Requirements,
- To publish from the RStudio IDE, you’ll need to be working on a recent version of RStudio, v2022.07.1 or later.
- You may also work from Jupyter Labs, VS Code, or a notebook integrated with the Quarto CLI
Wrangling data for a Shiny app in Python || Michael Chow || Posit
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Michael Chow (@chowthedog) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Shinywidgets - An Overview || Carson Sievert || RStudio
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack.
Shinywidgets lets you use ipywidgets in Shiny for Python applications. We called it ipyShiny during development, but we’re launching as Shinywidgets! Learn more about how to integrate them into your Shiny for Python apps. .
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Carson Sievert (@cpsievert) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Shiny UI Editor Project Walkthrough || Nick Strayer || RStudio
The Shiny UI Editor is a dynamic drag-and drop interface to help you design beautiful Shiny apps. The Shiny UI Editor is a visual tool for building the UI portion of a Shiny application that generates clean and human-readable code.
The goal of the Shiny UI Editor is to allow people to build the broad-level UI for their Shiny app without writing code. The editor is intended for those who may not be comfortable with the HTML-style code of Shiny’s UI functions or who simply don’t want to fiddle with sizes to get things laid out correctly.
Learn more about the Shiny UI Editor here: https://rstudio.github.io/shinyuieditor/ And read up on GridLayout here: https://rstudio.github.io/gridlayout
Content: Nick Strayer (@NicholasStrayer) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Shiny UI Editor Feature Tour || Nick Strayer || Posit (RStudio)
The Shiny UI Editor is a dynamic drag-and drop interface to help you design beautiful Shiny apps. The Shiny UI Editor is a visual tool for building the UI portion of a Shiny application that generates clean and human-readable code.
The goal of the Shiny UI Editor is to allow people to build the broad-level UI for their Shiny app without writing code. The editor is intended for those who may not be comfortable with the HTML-style code of Shiny’s UI functions or who simply don’t want to fiddle with sizes to get things laid out correctly.
Learn more about the Shiny UI Editor here: https://rstudio.github.io/shinyuieditor/ And read up on GridLayout here: https://rstudio.github.io/gridlayout
Content: Nick Strayer (@NicholasStrayer) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Shiny Programming Practices || Joe Cheng || Posit
Have you ever wanted to sit down and talk with Joe Cheng, the creator of Shiny and CTO of Posit (RStudio) and ask him how he approaches programming? Look no further - we’ve got that conversation for you right here!
Shiny makes it easy to build interactive web apps straight from R or Python. You can host standalone apps on a webpage or embed them in Markdown-style documents or build dashboards. You can also extend your Shiny apps with CSS themes, htmlwidgets, and JavaScript actions.
Learn more about Shiny: https://shiny.rstudio.com/ Check out Shiny for Python: https://shiny.rstudio.com/py/ Explore our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Joe Cheng (@jcheng) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Getting Started with {shinytest2} Part I || Example + basics || RStudio
00:00 Introduction 00:48 Overview of the demo Shiny app 03:00 Running record_test() 04:44 Results from record_test() 07:18 A note on .png files created during testing 08:52 Debugging with shinytest2 09:32 Using app$view() to open a visual representation of a headless browser
Part 2 - Exporting values: https://youtu.be/7KLv6HdIxvU Part 3 - Using shiny.testmode: https://youtu.be/xDxa_mDwN04
Manually testing Shiny applications is often laborious, inconsistent, and doesn’t scale well. Whether you are developing new features, fixing bug(s), or simply upgrading dependencies on a serious app where mistakes have real consequences, it is critical to know when regressions are introduced. shinytest2 provides a streamlined toolkit for unit testing Shiny applications and seamlessly integrates with the popular testthat framework for unit testing R code.
shinytest2 uses chromote to render applications in a headless Chrome browser. chromote allows for a live preview, better debugging tools, and/or simply using modern JavaScript/CSS.
By simply recording your actions as code and extending them to test the more particular aspects of your application, it will result in fewer bugs and more confidence in future Shiny application development.
Read up on shinytest2 here: https://rstudio.github.io/shinytest2/
Learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) Motion design and editing: Jesse Mostipak (@kierisi)
Theme song: Brad PKL by Blue Dot Sessions (https://app.sessions.blue/browse/track/113507 )

Getting Started with {shinytest2} Part 3 || Using shiny.testmode in {shinytest2} || RStudio
00:00 Introduction 00:15 Testing production apps
Part 1 - Getting started: https://youtu.be/SS1Na3c8lhk Part 2 - Exporting values: https://youtu.be/7KLv6HdIxvU
Manually testing Shiny applications is often laborious, inconsistent, and doesn’t scale well. Whether you are developing new features, fixing bug(s), or simply upgrading dependencies on a serious app where mistakes have real consequences, it is critical to know when regressions are introduced. shinytest2 provides a streamlined toolkit for unit testing Shiny applications and seamlessly integrates with the popular testthat framework for unit testing R code.
shinytest2 uses chromote to render applications in a headless Chrome browser. chromote allows for a live preview, better debugging tools, and/or simply using modern JavaScript/CSS.
By simply recording your actions as code and extending them to test the more particular aspects of your application, it will result in fewer bugs and more confidence in future Shiny application development.
Read up on shinytest2 here: https://rstudio.github.io/shinytest2/
Learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) Motion design and editing: Jesse Mostipak (@kierisi)
Theme song: Brad PKL by Blue Dot Sessions (https://app.sessions.blue/browse/track/113507 )

Getting Started with {shinytest2} Part 2 || Exporting values || RStudio
00:00 Introduction 00:29 Exporting reactives 03:28 Using exportTestValues()
Part 1 - Getting started: https://youtu.be/SS1Na3c8lhk Part 3 - Using shiny.testmode: https://youtu.be/xDxa_mDwN04
Manually testing Shiny applications is often laborious, inconsistent, and doesn’t scale well. Whether you are developing new features, fixing bug(s), or simply upgrading dependencies on a serious app where mistakes have real consequences, it is critical to know when regressions are introduced. shinytest2 provides a streamlined toolkit for unit testing Shiny applications and seamlessly integrates with the popular testthat framework for unit testing R code.
shinytest2 uses chromote to render applications in a headless Chrome browser. chromote allows for a live preview, better debugging tools, and/or simply using modern JavaScript/CSS.
By simply recording your actions as code and extending them to test the more particular aspects of your application, it will result in fewer bugs and more confidence in future Shiny application development.
Read up on shinytest2 here: https://rstudio.github.io/shinytest2/
Learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) Motion design and editing: Jesse Mostipak (@kierisi)
Theme song: Brad PKL by Blue Dot Sessions (https://app.sessions.blue/browse/track/113507 )

Data visualization and plotting with Shiny for Python || Carson Sievert || RStudio
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Carson Sievert (@cpsievert) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

An Interview with Winston Chang: Building a Wordle App with Shiny for Python || RStudio
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Winston Chang (@winston_chang) + Jesse Mostipak (@kierisi) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

A Beginner’s Guide to Shiny for Python || Winston Chang || Posit
Shiny makes it easy to build interactive web applications with the power of Python’s data and scientific stack.
Learn more about Shiny for Python: https://shiny.rstudio.com/py/ Check out our interactive Shiny for Python examples: https://shinylive.io/py/examples/
Content: Winston Chang (@winston_chang) Producer: Jesse Mostipak (@kierisi) Editing and Motion Design: Tony Pelleriti (@TonyPelleriti)

Programming Games with Shiny || Roll the Dice: with Quosures! || RStudio
00:00 Introduction
03:44 The pain of copy + paste
07:28 Going on a helper function adventure!
18:09 Ready for rlang
28:17 !! + enquo()
37:57 Benefits of the rlang approach
38:46 Embracing the embrace operator
41:33 Visualizing what’s happening using reactlog
You’ve most likely used Shiny to build a web app that displays data, but you can also use Shiny to build games! In this video series, Jesse and Barret pair program simply games in Shiny as a way to uncover and explore new features.
Read up on the embrace operator here: https://rlang.r-lib.org/reference/embrace-operator.html
Learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) and Jesse Mostipak (@kierisi) Animation, motion design, and editing: Jesse Mostipak (@kierisi)
Theme song: Hakodate Line by Blue Dot Sessions (https://app.sessions.blue/browse/track/111291" )

{gt} Table Battles || Eurovision || RStudio
00:00 Introduction 00:07 Jesse’s gt table, with a focus on flag emoji and interactivity via a Shiny app 09:50 Rich’s gt table, with a focus on CSS and embedded animations
Code: https://github.com/kierisi/rstudio_videos/tree/main/gt/table-battles
Learn more about the gt package here: https://gt.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Rich Iannone (@riannone) & Jesse Mostipak (@kierisi) Motion Design & editing: Jesse Mostipak Music: Gemeni City by Blue Dot Sessions https://app.sessions.blue/browse/track/113567

Programming Games with Shiny || Roll the Dice || RStudio
00:00 Introduction 01:40 Rolling with eventReactive( ) 06:26 Reducing eventReactive( ) to reactive( ) + isolate( ) 16:23 Combining reactive( ) and bindEvent( ) 20:11 Reviewing our reactives 21:23 Writing a function to de-duplicate dice rolls
You’ve most likely used Shiny to build a web app that displays data, but you can also use Shiny to build games! In this video series, Jesse and Barret pair program simply games in Shiny as a way to uncover and explore new features.
Read up on tabset panels here: https://shiny.rstudio.com/reference/shiny/0.14/tabsetPanel.html
Learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) and Jesse Mostipak (@kierisi) Animation, motion design, and editing: Jesse Mostipak (@kierisi)
Theme song: Hakodate Line by Blue Dot Sessions (https://app.sessions.blue/browse/track/111291" )

{gt} Table Battles || Crosswords || RStudio
00:00 Introduction 00:34 Rich’s gt table, with a focus on creating audio within a table 07:28 Jesse’s gt table, with a focus on sentiment analysis
Learn more about the gt package here: https://gt.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Rich Iannone (@riannone) & Jesse Mostipak (@kierisi) Motion Design & editing: Jesse Mostipak Music: Nu Fornacis by Blue Dot Sessions https://app.sessions.blue/browse/track/98983

Posit Package Manager || Link Your Package Manager Repo to Your RStudio IDE || Posit
In this video Jeremey Allen walks through connecting Posit Package Manager to Workbench for fast and secure access to the organization’s R and Python libraries.
Posit Package Manager is a repository management server to organize and centralize packages across your team, department, or entire organization. Get offline access to CRAN, PyPI, and Bioconductor, share local packages, restrict package access, find packages across repositories, and more. Experience reliable and consistent package management, optimized for data science.
Learn more about Posit Package Manager here: https://www.rstudio.com/products/package-manager/
Got questions? Check out the Posit Package Manager Frequently Asked Questions page: https://docs.rstudio.com/rspm/admin/getting-started/faq/
Katie Masiello || Build a Codenames app using {pins} and Shiny! || RStudio
00:00 Introduction 00:05 Project outline 03:56 Create a codename generator (using RMarkdown) 09:35 Publish to RStudio Connect 10:38 Create a Shiny app 18:15 A little bit of troubleshooting 18:18 Ta-da!
Learn more about the pins package here: https://pins.rstudio.com/ Learn more about Shiny here: https://shiny.rstudio.com/ And learn more about RStudio Connect here: https://www.rstudio.com/products/connect/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Katie Masiello (@katieontheridge) Animation, motion design, and editing: Jesse Mostipak (@kierisi)
Theme song: Contrarian by Blue Dot Sessions (https://app.sessions.blue/browse/track/64281 )
RStudio’s {pins} package: what it is, how it works, and what it can do for you! || RStudio
00:00 Introduction 00:09 What is the pins package? 01:49 pins - not just for RStudio Connect! 02:31 pins use cases 04:47 How to use pins instead of final_final_01_noreallyfinal.xls 06:37 How do pin boards work? 08:55 Getting started with pins 10:42 Versioning with pins at the board or pin level 11:47 pins and caching 12:13 Things you shouldn’t pin 14:00 Major functions in the pins package 17:21 Using pin_upload( ) and pin_download( ) 19:52 pins and Google Cloud 21:27 pins and modelops with the vetiver package
Learn more about the pins package here: https://pins.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Katie Masiello (@katieontheridge) and Jesse Mostipak (@kierisi) Animation, motion design, and editing: Jesse Mostipak (@kierisi)
Theme song: Contrarian by Blue Dot Sessions (https://app.sessions.blue/browse/track/64281 )
{gt} Table Battles || Digital Publications || RStudio
00:00 Introduction 00:32 Jesse’s gt table, with a focus on changing background cell color 07:11 Rich’s gt table, which uses three different tables to create a fixed-size scrollable gt table
You can find the code for each table here: https://github.com/kierisi/rstudio_videos/tree/main/gt/table-battles/01_round-01_digital-publications
Learn more about the gt package here: https://gt.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Rich Iannone (@riannone) & Jesse Mostipak (@kierisi) Motion Design & editing: Jesse Mostipak Music: Nu Fornacis by Blue Dot Sessions https://app.sessions.blue/browse/track/98983

Rich Iannone || {gt} Intendo Game Data Project Walkthrough || RStudio
00:00 Introduction 00:11 Setting up our environment 01:21 Importing data 01:56 Data preparation using the tidyverse 14:12 Basic gt table 16:25 Specifying row order with row_group_order() 17:20 Formatting currency with fmt_currency() 18:10 Formatting missing values with fmt_missing() 18:55 Creating row groups with tab_options() 19:50 Relabel column names with cols_label() 20:41 Creating tab spanners with tab_spanner() 23:00 Creating a table title and subtitle with tab_header() 24:40 Aligning table title and subtitle with opt_align_table_header() 25:16 Creating a stubhead label with tab_stubhead() 26:00 Format all table cell text using tab_style() 27:25 Automatically format data color based on value using data_color() 30:45 Creating Markdown-friendly source notes using tab_source_note() 32:45 Creating Markdown-friendly footnotes using tab_footnote() 39:28 Adjust table column width using cols_width() 40:55 Adjust cell padding using opt_horizontal_padding() and opt_vertical_padding() 42:22 Change row group headers using tab_style() 43:40 Convert all table text to small caps using opt_all_caps() 43:58 Change all table text font using opt_table_font() 44:28 Changing table, table heading, footnotes, and source notes background color using tab_options() 46:41 Add a table “cap” at the top and bottom using table.border.top.width() and table.border.bottom.width() 47:23 Use multiline formatting with footnotes using footnotes.multiline() 47:34 Change line style using table_body.hlines.style() 47:55 Change table title and subtitle font sizes using heading.title.font.size() and heading.subtitle.font.size() 48:11 Checking out our final table!
Code to recreate the table from the video: https://github.com/kierisi/rstudio_videos/blob/main/gt/rich-intendo-project-walkthrough/intendo-30032022.R
Learn more about the gt package here: https://gt.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Rich Iannone (@riannone) Motion design and editing: Jesse Mostipak (@kierisi) Music: Nu Fornacis by Blue Dot Sessions https://app.sessions.blue/browse/track/98983

“A Stroke of Innovation,” a Posit Film
This snippet is from Posit’s short film, “A Stroke of Innovation,” detailing the incredible work done by the data science team at the City of Reykjavík.
You can watch the whole film and read the entire story here: https://posit.co/about/customer-stories/iceland/
Posit Presents: A Stroke of Innovation
Introducing “A Stroke of Innovation,” a short film made possible by a team of innovators looking to make the world a better place.
Visit https://posit.co/about/customer-stories/iceland/ for the full web experience
Carson Sievert || Using tagQuery() from {htmltools} to modify HTML snippets in R || RStudio
00:00 Introduction 00:45 Motivating example - enabling front-facing camera as an input for fileInput() 01:55 Breaking down the return value of fileInput() 04:16 Design philosophy of fileInput() 07:27 tagAppendAttributes() overview 11:05 tagQuery() basics 12:00 Quick overview of the htmltools package 13:18 How tagQuery() is used to append attributes 20:54 How tagQuery() is used to append children 23:45 Using tagQuery() on an actionButton()
Learn more about tagQuery here: https://rstudio.github.io/htmltools/articles/tagQuery.html
Read up on tagAppendAttributes() here: https://shiny.rstudio.com/reference/shiny/latest/tagAppendAttributes.html
And learn more about the htmltools package here: https://rstudio.github.io/htmltools/index.html
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Developer (@winston_chang) Animation, design, and editing: Jesse Mostipak (@kierisi)

James Blair || Getting Started with {plumbertableau} || RStudio
00:00 Introduction 01:19 Setting up the problem - capitalizing text with a custom function 02:18 Using Plumber to create an API for our function 04:08 Using Run API + Swagger from the RStudio IDE 05:44 Giving Tableau access to the function with PlumberTableau 09:16 Reviewing what we’ve done so far 09:47 Comparing results between Plumber and PlumberTableau 10:12 Overview of what PlumberTableau does 14:27 Centralized hosting with RStudio Connect 15:17 Looking at our API in RStudio Connect 18:14 How to access the deployed API from Tableau 21:03 Overview of RStudio Connect, Tableau, and PlumberTableau process 21:52 More in-depth example using sample sales data 22:36 Example with the Python equivalent of PlumberTableau, FastAPITableau 25:15 Overview of how these Tableau extension packages work 27:21 Setting up a connection between Tableau and RStudio Connect
Read more about the plumbertableau package here: https://rstudio.github.io/plumbertableau/
And learn about the fastapitableau package here: https://rstudio.github.io/fastapitableau/
If you’re unfamiliar with Plumber, this Quickstart guide gives a good overview of the package: https://www.rplumber.io/articles/quickstart.html And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: James Blair (@Blair09M) Design and editing: Jesse Mostipak (@kierisi)
Music: Borough by Blue Dot Sessions https://app.sessions.blue/browse/track/89821
Carson Sievert || Customizing Navigation Items in Shiny using {bslib} || RStudio
00:00 Introduction 00:15 Linking inside navbarPage 01:19 Replacing tabPanel with navbarPage, and navbarMenu 02:32 nav_spacer() 03:41 Adding header and//or footer content 04:07 Replacing tabsetPanel with navs_tab and navs_pill 04:32 navs_tab_card() and navs_pill_card() variants 04:40 Demo of all of the nav_*() functions
The bslib R package provides tools for customizing Bootstrap themes directly from R, making it much easier to customize the appearance of Shiny apps & R Markdown documents. bslib’s primary goals are:
- To make custom theming as easy as possible.
- Custom themes may even be created interactively in real-time.
- Also provide easy access to pre-packaged Bootswatch themes.
- Make upgrading from Bootstrap 3 to 4 (and beyond) as seamless as possible. (Shiny and R Markdown default to Bootstrap 3 and will continue to do so to avoid breaking legacy code.)
- Serve as a general foundation for Shiny and R Markdown extension packages. (Extensions such as flexdashboard, pkgdown, and bookdown already fully support bslib’s custom theming capabilities.)
You can read more about bslib here: https://rstudio.github.io/bslib/articles/bslib.html And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Carson Sievert (@cpsievert) Design & editing: Jesse Mostipak (@kierisi)

Carson Sievert || Developing Shiny Custom Themes in Real Time Using {bslib}| RStudio
00:00 Introduction 00:09 The magic of bs_theme_preview() 01:43 The interactive widget provided by bs_theme_preview() 02:12 Using Bootswatch themes 02:57 Using the interactive widget to adjust your theme in real time 03:38 Integration with Google Fonts 04:22 Thematic is enabled in bs_theme_preview() 04:45 DT tables is enabled in bs_theme_preview() 05:30 Going from the interactive widget to your R code 07:03 Using interactive theming on your own Shiny app 09:01 Interactive theming with R Markdown documents
The bs_theme_preview() function launches an example shiny app via run_with_themer() and bs_theme_dependencies(). This is useful for getting a quick preview of the current theme setting as well as an interactive GUI for tweaking some of the main theme settings. Link to docs: https://rstudio.github.io/bslib/reference/bs_theme_preview.html
You can read more about the bslib package here: https://rstudio.github.io/bslib/ And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Carson Sievert (@cpsievert) Design and editing: Jesse Mostipak (@kierisi)

Carson Sievert || Custom Theming with {bslib} in Shiny and R Markdown using bs_theme() || RStudio
00:00 Introduction 01:15 Jumping right in with the theme argument in Shiny 01:31 Shiny’s classic navbarPage using bs_theme() 01:46 Specifying your Bootstrap version 02:31 Using the theme argument in R Markdown 03:17 Custom theming in R Markdown using bs_theme() 04:10 bslib templates provided by RStudio 05:33 Review of common arguments for the theme parameter 08:47 Tips for working with dark themes 10:34 Introduction to the thematic package, which styles plots 12:04 How thematic handles fonts 13:09 Using fonts with bslib in R Markdown 14:36 Moving a theme from an R Markdown document into a Shiny app 16:51 Setting warnings for contrast ratios 18:42 A quick tour of Bootstrap 4 and Bootstrap 5 Sass variables 20:35 A quick overview of writing custom HTML in Shiny 22:15 How bslib automatically handles color contrast ratios
bs_theme() allows you to creates a Bootstrap theme object, where you can choose a (major) Bootstrap version, choose a Bootswatch theme (optional), customize main colors and fonts via explicitly named arguments (e.g., bg, fg, primary, etc), and customize other, lower-level, Bootstrap Sass variable defaults via ….
You can read more about the bslib package here: https://rstudio.github.io/bslib/ And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Carson Sievert (@cpsievert) Design and editing: Jesse Mostipak (@kierisi)

Nick Strayer || Part IV: Styling a Shiny Wordle App with CSS || RStudio
00:00 Introduction 00:44 Switching from verbatimTextOutput to uiOutput 01:42 Switching from renderText to HTML DOM elements 03:17 In-line styling with divs 07:30 Converting individual letters from block elements to adjacent grids with CSS grid 08:56 Adding CSS at the head of the UI variable in Shiny with tags$head (and wrapping with HTML!) 10:36 CSS targeting of the background color 12:24 Link: Complete Guide to CSS Grid 14:05 Moving text position within each individual div using CSS classes 16:48 Creating a gap between grid elements 17:13 Rounding border edges for letter grids 19:00 Formatting letter grid background color to indicate result “correctness” 21:30 Increasing font size 23:37 Updating the legend to use color, not text indicators 26:40 Adjusting padding to improve app aesthetic 28:08 Formatting the app UI with justified centering 31:56 Adjusting the text input and Go button 34:07 Why Flexbox is the right tool for this task 35:09 Exploring Flexbox Dev Tools in Chrome 39:14 Adjusting the colors of letter grids using Inspect Element 40:40 Making text bold with font-weight 41:04 Hint on how to approach formatting the keyboard
In final installment of this four-part series, RStudio’s Nick Strayer walks through using CSS to stylize our Shiny Wordle app.
Code + word list: https://github.com/wch/shiny-wordle Check out the full Shiny app here: https://winston.shinyapps.io/wordle/ You can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Nick Strayer (@NicholasStrayer) Animation, design, and editing: Jesse Mostipak (@kierisi) Music: Lakal by Blue Dot Sessions
Wordle: https://www.powerlanguage.co.uk/wordle/

Barret Schloerke || {reactlog} Rundown || RStudio
00:00 Introduction to Reactlog 00:44 Viewing Reactlog using an Old Faithful Shiny app 02:07 The Reactlog interface 04:31 Walking through a reactive graph with Reactlog 05:14 Downstream dependency invalidation in Shiny 06:43 How Shiny “grabs” data 09:41 How the Reactlog timeline works 10:46 Switching between idle states in Reactlog 11:58 Reactlog interactivity - clicking a single item 13:21 Reactlog with the Pythagoras Theorem app 15:45 Adding a UI and server value to add Reactlog to your Shiny app 18:05 Walking through the reactive graph using the Pythagorean Theorem app 21:07 Append-only behavior of Reactlog 21:18 Marking a time point in Reactlog 23:17 Using Reactlog to debug reactivity 26:55 Resetting our app and testing logic changes 28:01 Reactlog with a large Shiny app, CRANwhales 34:10 Freezing reactive values 36:19 Calculating click count in a Shiny app 37:10 Click the button, render the plot is bad - see why
Shiny is an R package from RStudio that makes it incredibly easy to build interactive web applications with R. Behind the scenes, Shiny builds a reactive graph that can quickly become intertwined and difficult to debug. reactlog provides a visual insight into that black box of Shiny reactivity.
After logging the reactive interactions of a Shiny application, reactlog constructs a directed dependency graph of the Shiny’s reactive state at any time point in the record. The reactlog dependency graph provides users with the ability to visually see if reactive elements are:
- Not utilized (never retrieved)
- Over utilized (called independently many times)
- Interacting with unexpected elements
- Invalidating all expected dependencies
- Freezing (and thawing), preventing triggering of future reactivity
There are many subtle features hidden throughout reactlog. Here is a short list quickly describing what is possible within reactlog:
- Display the reactivity dependency graph of your Shiny applications
- Navigate throughout your reactive history to replay element interactions
- Highlight reactive family trees
- Filter on reactive family trees
- Search for reactive elements
You can read more about reactlog here: https://rstudio.github.io/reactlog/articles/reactlog.html And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Barret Schloerke (@schloerke) Design & editing: Jesse Mostipak (@kierisi)

Winston Chang || Part III: Adding a Keyboard to a Wordle Shiny App || RStudio
00:00 Introduction 00:25 Setting up a keyboard 00:54 Using an HTML p tag to print out letter indicators 01:56 Back to our keyboard! 03:44 Setting up a search and replace 06:32 Removing letters using regular expressions 08:43 Making guesses a reactiveVal() 11:00 Avoiding an infinite loop with reactiveVal()
In Part III of this four-part series, Winston walks through how to build a keyboard in a Shiny Wordle app.
Code + word list: https://github.com/wch/shiny-wordle Check out the full Shiny app here: https://winston.shinyapps.io/wordle/ You can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Developer (@winston_chang) Animation, design, and editing: Jesse Mostipak (@kierisi)
Wordle: https://www.powerlanguage.co.uk/wordle/

Winston Chang || Part II: Handling Duplicate Letters in a Shiny Wordle App || RStudio
00:00 Introduction 00:52 Setting up the problem with duplicate letters 02:08 Coding the first pass for exact matches in the correct position 06:29 Re-evaluating how to approach the problem 12:28 Removing only one instance of a letter 13:56 Testing our code 14:54 Setting up the second pass 19:08 Scoping with a double arrow 19:52 Debugging with a browser() statement 21:28 Checking our code
In Part II of this four-part series, Winston walks through how to handle duplicate letters when building your Shiny Wordle app.
Code + word list: https://github.com/wch/shiny-wordle Check out the full Shiny app here: https://winston.shinyapps.io/wordle/ You can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Developer (@winston_chang) Animation, design, and editing: Jesse Mostipak (@kierisi)
Wordle: https://www.powerlanguage.co.uk/wordle/

Winston Chang || Part I: Build a Basic Wordle App with Shiny || RStudio
00:00 Introduction 00:12 What is Wordle? 00:36 The Wordle app we’ll build by the end of this four-part series 01:08 How to approach the problem 01:38 Word list (link to file below) 01:52 UI function with fluidPage() 02:24 Print out what player guesses using verbatimTextOutput() 03:36 Run app in Viewer Panel 04:04 Adding an action button with actionButton() 04:29 Using bindEvent() with actionButton() 06:02 Limiting guesses to words with five characters 07:40 Using req() and cancelOutput() 08:54 Incorporating the word list 10:13 Matching player guess to word list 11:06 Matching player guess to target word 13:50 Writing a function to match guess to target word with feedback 18:15 Checking word length between guess and target 23:02 Why we’re using intermediary functions 28:51 Printing formatted letter information
In Part I of this four-part series, Winston walks through how to build a basic Wordle app using Shiny!
Code + word list: https://github.com/wch/shiny-wordle Check out the full Shiny app here: https://winston.shinyapps.io/wordle/ You can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Developer (@winston_chang) Animation, design, and editing: Jesse Mostipak (@kierisi)
Wordle: https://www.powerlanguage.co.uk/wordle/

Rich Iannone || Making Beautiful Tables with {gt} || RStudio
00:00 Introduction 00:37 Adding a title with tab_header() (using Markdown!) 01:47 Adding a subtitle 02:48 Aligning table headers with opt_align_table_header() 03:48 Using {dplyr} with {gt} 06:03 Create a table stub with rowname_col() 07:35 Customizing column labels with col_label() 09:45 Formatting table numbers with fmt_number() 12:10 Adjusting column width with cols_width() 15:39 Adding source notes with tab_source_note() 16:55 Adding footnotes with tab_footnote() 18:55 Customizing footnote marks with opt_footnote_marks() 19:10 Demo of how easy managing multiple footnotes is with {gt} 23:41 Customizing cell styles with tab_style() 27:07 Adding label text to the stubhead with tab_stubhead() 28:15 Changing table font with opt_table_font() 29:25 Automatically scaling cell color based on value using data_color()
With the gt package, anyone can make wonderful-looking tables using the R programming language. The gt philosophy: we can construct a wide variety of useful tables with a cohesive set of table parts. These include the table header, the stub, the column labels and spanner column labels, the table body, and the table footer.
It all begins with table data (be it a tibble or a data frame). You then decide how to compose your gt table with the elements and formatting you need for the task at hand. Finally, the table is rendered by printing it at the console, including it in an R Markdown document, or exporting to a file using gtsave(). Currently, gt supports the HTML, LaTeX, and RTF output formats.
The gt package is designed to be both straightforward yet powerful. The emphasis is on simple functions for the everyday display table needs.
You can read more about gt here: https://gt.rstudio.com/articles/intro-creating-gt-tables.html And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Rich Iannone (@riannone) Design & editing: Jesse Mostipak (@kierisi)

An inclusive solution for teaching and learning R during the COVID pandemic
The COVID pandemic has shaken our teaching and learning approaches in many different ways all over the world.
Nonetheless, it has also provided opportunities for bringing creativity into the classroom.
In this talk, I will discuss how I have used RStudio Cloud in my teaching during the pandemic and how I capitalized on the opportunities that RStudio Cloud offers to deal with the crucial issues of software installation.
Introducing RStudio Cloud in the units has allowed me to work effectively in an online environment to engage, motivate and empower students through their learning process while removing the troubles and hurdles of software installation which is generally particularly challenging in first-year cohorts without prior coding experience.
I used RStudio Cloud in a data science introductory unit at Monash University and as a tool to present the usage of R and RStudio for reproducible reporting in another unit on Reproducible and Collaborative Practises.
In the latter, I introduced RStudio Cloud during the first few weeks to get the students up to speed before transitioning to using R and RStudio Cloud in their own local machines while using the command line interface, Git, and GitHub as a version control tool for reproducible reporting.
I will also discuss how I organized and managed the unit’s RStudio Cloud account so that my research associates were also an integral part of the unit delivery to ensure the success of the units.
Read Dr. Menéndez’s guest post on the RStudio Blog: https://www.rstudio.com/blog/rstudio-cloud-an-inclusive-solution-for-learning-r/
Read more in the follow-up blog post: https://www.rstudio.com/blog/teaching-data-science-in-the-cloud/
To Our Community: Thank You | RStudio Open Source (2021)
This year, among many challenges, we have been so grateful for our community who have continued to show up in so many different ways. As the year comes to a close, we wanted to say thank you. We know folks have adjusted where they spend their time and energy, and we just want to say thank you for continuing to be here and learn together, wherever you are right now.
Thank you to our maintainers. Our package maintainers not only contribute code, but also steward projects, welcome new contributors, and answer many questions. Thank you for continuing to set a positive tone and fostering a positive community for our contributors and users!
Thank you to our contributors. Package contributors contribute code, ideas, conversation, documentation, and tests. You are the ones trying things out, figuring out what’s wrong, and sharing ideas and fixes. Thank you for pushing our code to grow and evolve and to help ever more people!
Thank you to our educators. Educators work in classrooms, with friends and colleagues, and respond to email lists from someone around the world. Thank you for sharing your enthusiasm for data science with others and expanding the group of people who make sense of data with code!
Thank you to everyone who’s used R to solve a problem, create aRt, write a blog post, share insights or any of the thousands of ways we can create with R. Thank you to all of you who have contributed in some way, no matter how big or small. Without you, there would be no point to writing open source code. Thank you for all the work you do in the world, using data to improve our lives and our knowledge of the world in such incredibly diverse ways.
Music: Basketliner by Bitters, published on Blue Dot Sessions - https://app.sessions.blue/browse/track/81258
Editing & motion design: Jesse Mostipak
Leveraging the Cloud for Analytics Instruction at Scale: Challenges and Opportunities
Data science and programming languages like R and Python are some of the most in demand skills in the world.
Students interested in analytics and professors facilitating curriculums deserve to use industry-leading tools to acquire these skills.
However, it’s challenging to enable this experience in an educational setting, especially at scale.
The traditional tools to facilitate learning analytics simply aren’t great. Students and professors often spend way too much time troubleshooting systems and software, things that are a complete waste of time and detract from the learning experience. Additionally, there are seemingly endless IT hurdles and requirements.
That’s part of the reason we created RStudio Cloud, a brilliantly simple but powerful solution for teaching and learning analytics, especially at scale. RStudio Cloud solves many of the technical and financial challenges associated with teaching analytics. It’s also a joy to use for professors, students, and IT administrators.
In this presentation, Dr. Brian Anderson will discuss the challenges and opportunities associated with leveraging the cloud to deliver analytics instructions at the undergraduate and graduate levels at scale.
Our hope is that you walk away inspired to think about ways you can leverage RStudio and the Cloud to enhance your students’ experiences with learning analytics.
Read more in the follow-up blog post: https://www.rstudio.com/blog/teaching-data-science-in-the-cloud/
RStudio Team Deep Dive | In A Hosted Environment
You probably know that RStudio makes a free, open-source development environment for data scientists. It’s made with love and used by millions of people around the world.
What you might not know is that we also make a professional platform, called RStudio Team.
In this Live Session, Tom will walk you through our Rstudio Team Trial, where you can learn how to best test drive….
- Scaling your data science work
- Seamlessly managing open-source data science environments
- Automate repetitive tasks
- Rapidly share key insights and data science products securely to your entire organization.
- And, optionally integrate some of your favorite open-source packages into the trial experience
Leading organizations like NASA, Janssen Pharmaceuticals, The World Health Organization, financial institutions, government agencies and insurance organizations around the globe use RStudio’s professional products to tackle world-changing problems and we’re inviting you to learn how. You’ll learn how RStudio Team gives professional data science teams superpowers, with all of the bells and whistles that enterprises need.
If you don’t have your own trial instance of Rstudio Team to follow along (not required), feel free to request yours here: https://www.rstudio.com/products/team/evaluation3/
Additional resources here: https://docs.google.com/document/d/1HGt7LSohhyxpCvETvVEFHugrdaSnTcZaXbI0jV5g9ok/edit?usp=sharing
Building R packages with devtools and usethis | RStudio
Package building doesn’t have to be scary! The tidyverse team has made it easy to get started with RStudio and the devtools/usethis packages. This hour long presentation will walk you through the basics of R package building, and hopefully leave you prepared to go out and build your own package!
Slides: https://colorado.rstudio.com/rsc/pkg-building/ Source Code: https://github.com/jthomasmock/pkg-building
devtools: https://devtools.r-lib.org/ usethis: https://usethis.r-lib.org/ R Packages book: https://r-pkgs.org/index.html
RStudio Team Demo | Build & Share Data Products Like The World’s Leading Companies
You probably know that RStudio makes a free, open-source development environment for data scientists. It’s made with love and used by millions of people around the world.
What you might not know is that we also make a professional platform, called RStudio Team.
Learn How RStudio Team Can…
- Help you scale your data science work
- Seamlessly manage open-source data science environments
- Automate repetitive tasks
- And, rapidly share key insights and data science products securely to your entire organization.
Timecodes 0:00 - Intro 4:18 - Hard truth of data science 10:22 - Serious Data Science 16:46 - Model management with R and Python 18:48 - Live Demo / RStudio Workbench 23:09 - RStudio support for Jupyter Notebooks 24:40 - Live Demo / RStudio Connect 28:01 - RStudio support for VS Code 30:05 - R and Python within RStudio 32:33 - Scale and share data science results 36:55 - Sharing previous versions of presentations 38:16 - Data Science team knowledge sharing 40:36 - Scheduling snd emailing data science content 43:55 - Live demo / RStudio Package Manager 48:09 - Data Science stories 49:37 - RStudio Team 52:59 - What makes RStudio different? 55:12 - Q/A - Learn More
Leading organizations like NASA, Janssen Pharmaceuticals, The World Health Organization, financial institutions, government agencies and insurance organizations around the globe use RStudio’s professional products to tackle world-changing problems and we’re inviting you to learn how. You’ll learn how RStudio Team gives professional data science teams superpowers, with all of the bells and whistles that enterprises need.
You can try RStudio Team free here: https://www.rstudio.com/products/team/evaluation2/
If you’d like to access presentation slides, sign up for future events, provide feedback and/or ask additional questions we’ve bundled everything together for you here: https://docs.google.com/document/d/1HGt7LSohhyxpCvETvVEFHugrdaSnTcZaXbI0jV5g9ok/edit?usp=sharing
R Markdown Advanced Tips to Become a Better Data Scientist & RStudio Connect | With Tom Mock
R Markdown is an incredible tool for being a more effective data scientist. It lets you share insights in ways that delight end users.
In this presentation, Tom Mock will teach you some advanced tips that will let you get the most out of R Markdown. Additionally, RStudio Connect will be highlighted, specifically how it works wonderfully with tools like R Markdown.
Please provide feedback: https://docs.google.com/forms/d/e/1FAIpQLSdOwz3yJluPR2fEqE0hBt92NtKZzzNACR8KJhHUt9rhFj3HqA/viewform?usp=sf_link
More resources if you’re interested: https://docs.google.com/document/d/1VKGs1G9GcQcv4pCYFbK68_LDh72ODiZsIxXLN0z-zD4/edit
04:15 Literate Programming 09:00 - Rstudio Visual Editor Demo 15:44 - R and python in same document via {reticulate} 18:10 - Q&A: Options for collaborative editing (version control, shared drive etc.) 19:30 - Q&A: Multi-pane support in Rstudio 20:46 Data Product (reports, presentations, dashboards, websites etc.) 24:15 - Distill article 26:27 - Xaringan presentation (add three dashes — for new slide) 28:58 - Flexdashboard (with shiny) 30:30 - Crosstalk (talk between different html widgets instead of {shiny} server) 35:03 - Q&A: Jobs panel – parallelise render jobs in background 36:50 - Q&A: various data product packages, formats 39:35 Control Document (modularise data science tasks, control code flow) 39:58 - Knit with Parameters (YAML params: option) 41:20 - Reference named chunks from .R files (knitr::read_chunk()) 43:00 - Child Documents (reuse content, conditional inclusion, {blastula} email) 47:07 Templating (don’t repeat yourself) 47:38 - rmarkdown::render() with params, looping through different param combinations 49:30 - Loop templates within a single document 50:40 - 04-templating/ live code demo 54:37 - {whisker} vs {glue} – {{logic-less}} vs {logic templating} 55:30 - {whisker} for generating markdown files that you can continue editing 57:49 RMarkdown + Rstudio Connect 1:00:41 Follow-up Reading and resources 1:04:49 Q&A - {shiny} apps, {webshot2} for screenshots of html, reading in multiple .R files, best practice for producing MSoffice files, {blastula}
How to Prioritize Projects | Data Science Hangout Highlights
RStudio is joined by Moody Hadi, Manager of New Product Development and Financial Engineering at S&P Intelligence, to discuss how data scientists can become leaders within their organizations.
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Data Science Hangout | Moody Hadi at S&P Global | Unlocking Business Value with Data Science
We want to help data science leaders become better.
The Data Science Hangout is a weekly, free-to-join open conversation for current and aspiring data science leaders.
An accomplished leader in the space will join us each week and answer whatever questions the audience may have.
We were recently joined by Moody Hadi, Manager of New Product Development and Financial Engineering at S&P Intelligence
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstu … Twitter: https://twitter.com/rstudio
The Importance of Understanding Your Business Users | Data Science Hangout Highlights
RStudio is joined by Tori Oblad, Data Officer at WaFd bank, to discuss how data scientists can become leaders within their organizations.
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Dr. Julia Silge | RStudio Voices | RStudio
Julia Silge recently sat down with Michael Demsko Jr for an interview, the first in a new Voices of RStudio PBC series.
In this excerpt, Julia discusses where she sees the most value created in the data science lifecycle–and it’s not advanced machine learning models.
Read the full interview at https://blog.rstudio.com/tags/rstudio-voices/

Measuring the Impact of Data Science | Data Science Hangout Highlights
RStudio is joined by Frank Corrigan, Director of Decision Intelligence, to discuss how data scientists can become leaders within their organizations.
Watch the full recording: https://www.youtube.com/watch?v=KBs4b3Q2n8Y
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Teaching and learning with RStudio Cloud | RStudio
Learn about RStudio Cloud and most recent developments, particularly with respect to teaching with it.
Slides are posted at https://rstd.io/tl-rscloud .
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
Make Sure You Communicate Value | Data Science Hangout Highlights
RStudio is joined by Tori Oblad, Data Officer at WaFd bank, to discuss how data scientists can become leaders within their organizations.
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Data Scientists vs. Business Analysts | Data Science Hangout Highlights
RStudio is joined by Frank Corrigan, Director of Decision Intelligence, to discuss how data scientists can become leaders within their organizations.
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Data Science Hangout | Frank Corrigan, Target | Understanding the Impact of Data Science
We want to help data science leaders become better.
The Data Science Hangout is a weekly, free-to-join open conversation for current and aspiring data science leaders.
An accomplished leader in the space will join us each week and answer whatever questions the audience may have.
We were recently joined by Frank Corrigan, Director of Decision Intelligence at Target.
6:38 - Problem formation - trying to find the unknown unknowns and bringing them to the business
8:20 - Integrating your data science team into your company’s business objectives (ex. newsletter)
10:50 - What is the divide between a business analyst and a data scientist, in your eyes? How business analysts and data scientists differ
15:32 - What is the biggest mistake you’ve made in your role and what did you learn from this mistake?
19:15 - Onboarding new team members effectively
25:00 - The importance of motivating non-data scientists
26:42 - Resources for data scientists
32:30 - Challenges when using different tools across a data science team
49:28 - Analytical thinking vs critical thinking skills
57:30 - Embracing the 80/20 Rule & the importance of Focus Time
1:02:48 - Two frameworks to be more effective with stakeholders
1:06:47 - Rebranding to “decision intelligence”
1:08:35 - Quantitatively measuring impact from data science insights
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu ► Join the Data Science Hangout Live every Thursday from 12-1 ET: https://www.addevent.com/event/Qv9211919
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
RStudio Cloud | Viewing Learning Work | Instructor View
As an Admin (or Moderator) of your course space, you and your fellow instructors have access to all projects in your space. You can open student projects from any projects listing, or to see all the projects of a given student, go to their profile page by clicking on their name from the Members page.
Note that if you do open a student’s project while they also have it open, they will be temporarily disconnected from the project.
You can also view how much time your students have spent using Cloud. Simply visit the Usage area of your space, where you can see aggregate usage data for the entire class, or for an individual student and their projects.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Tuning Resources | Instructor View
By default, each project is allocated 1 GB of RAM and 1 CPU, and can execute in the background for up to 1 hour. If your plan allows it, you can increase the memory, CPU or background execution time allocated to a project. To do so, open Project settings, go to the Resources panel and adjust the allocation.
Note that copies of a project will inherit its resource settings. However, the effective allocation for the copy will be limited by the maxiumum allowed by the account that “owns” the new copy.
The usage hours consumed by a project in a given amount of time depend on the resources allocated to the project, according to the following formula: (RAM + CPUs allocated) / 2 x hours.
On disk, each project is allocated up to 20GB for its files, data, and packages.
The maximum size of a file that can be uploaded to a project is 500MB.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Troubleshooting | Instructor View
Relaunch Project If you are working on a project, and it fails to load or becomes completely unresponsive, you can relaunch the project. Depending on the underlying problem, relaunching the project may fix it and let you continue.
Allocate Additional Memory memory-gaugeRunning out of memory while working on a project may be the cause of a variety of errors.
The project memory gauge will give you an idea of what percentage of available memory your project is currently using. The gauge updates roughly every ten seconds, so it may not show the exact usage at the current moment. Note that reclaiming unused memory is controlled by R and the operating system - you may see uncanny fluctuations in the gauge as the system manages memory.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Setting Up a Base Project | Instructor View
You can make all projects in a space begin with a default set of files and packages. You do this by defining a Base Project for the space.
Create a new project and add any packages or files you want all projects created in the space to start with. Set the project’s access so that everyone in the space can view the project.
Go to the Space Settings page and select the project as the Base Project. Once you select a project as your Base Project, it will no longer be included in the projects listing for the space. To access it, choose the Edit command from the Space Settings page.
Changes to the Base Project are not retroactive. Changes will not be applied to any projects already created - the changes will only apply to future projects created via the New Project action.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Roles | Instructor View
Each member of a space is assigned a role to determine what they are able to do within the space. The available roles are:
Admin: can manage users, view, edit and manage all projects and view space usage data.
Moderator: can view, edit and manage all projects, and view space usage data.
Contributor: can create, edit and manage their own projects. This is the default.
Viewer: can view projects shared with everyone in the space. A viewer cannot create or save copies of projects.
Members are assigned an initial role when they are invited to or join a space, but roles can be changed by an Admin at any time. When you invite an individual member to a Invitation Required space, you set the initial role in the Add Member dialog box. When someone joins via a sharing link, their initial role is set to the current Initial Role setting in the members options panel. Admins can update a user’s role via the role selector in the members list.
Changing permissions lets you fine-tune the Contributor and Viewer roles. The permissions are:
Contributors can see the members list: enables Contributors to see who can access the space.
Contributors can make their projects visible to all members: enables Contributors to share their projects with everyone in the space.
Contributors can change project resources: enables Contributors to change RAM and CPU settings on their projects.
Viewers can see the members list: enables Viewers to see who can acess the space.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Reusing a Workspace | Instructor View
One approach to reusing a space is to remove the current cohort of students from the space, and reuse the same space with the next cohort. If you are an Admin of a space, you can remove any member from that space.
Go to the Members area of the space. For the member you would like to remove, press the Delete icon. You will be prompted to confirm that you would like to remove them from the space, and to choose whether to leave their projects behind in the space, or move them to their personal space.
You can also remove members programatically via the Cloud API using the rscloud package.
Another option is to create a new space from your current course space using the Copy Space action.
If you’d like to re-use materials from a space, e.g. to teach a new cohort of students, use the Copy Space command. All projects shared with everyone in the original space will be copied over to the new space. Members of the original space are not copied over - you will be the only initial member of the new space.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Project Types | Instructor View
A project is the fundamental unit of work on RStudio Cloud. It encapsulates your R code, packages and data files and provides isolation from other analyses. If you are familiar with projects in the desktop RStudio IDE, an RStudio Cloud project is the same thing, plus some additional metadata for access and sharing.
To create a new project from scratch, simply press the New Project button from the Projects area. Your new project will open in the RStudio IDE.
To create a new project from an existing git repository, press the down arrow on the right side of the New Project button, and choose ‘New Project from Git Repo’ from the menu that appears. Note that your git credentials need to be entered each time you create a new project and are only cached for 15 minutes by default.
To create a Jupyter Project, press the down arrow on the right side of the New Project button, and choose ‘New Jupyter Project’ from the menu that appears.
A new Jupyter project will be created and deployed. Once deployed, you will see the Jupyter hub tree view with a welcome.ipynb notebook that contains information about getting started with Jupyter.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Overview | Instructor View
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Inviting Co-instructors and Teaching Assistants | Instructor View
After creating a space, go to the Members area to manage its membership. You can add members to your space in three ways:
To add members one by one, choose the Invitation Required option, and send invitations to each person you’d like to add to the space via the Add Member button. Note that for security reasons, the invitation is good for 7 days from the time that it is sent. To allow many people to join the space, choose the Sharing Link option, copy the sharing link and then share that link with all the people you’d like to join the space, either via an email or by posting the link on a web page. Keep in mind that anyone with that link will be able to join your space. If you would like to disable a link you previously shared, choose Reset Sharing Link; this will prevent any additional people from joining the space using that link. Space membership can also be managed programatically. See API Access from R in the Advanced Topics section below for details.
Note that you can switch the access option at any time - a common approach is to initially set the access option to Sharing Link, post the sharing link, then after all the people you want to join the space initially have done so, switch access to Invitation Only. The original sharing link will no longer allow additional people to join the space, but you can add any new members individually.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Invite Learners | Instructor View
As you did to invite your co-instructors, go to the space’s Members area to invite your students to your course space. The easiest approach is to enable access via a sharing link.
- Click on the Sharing link option in the Access section
- Set the Initial Role to Contributor
- Click on the Copy Sharing Link action
You can then distribute the sharing link to all your students via a course web page or email. Once all your students have joined the space, you can either reset the sharing link (which will disable access via the previous sharing link), or set Access to “Invitation Required” to ensure that nobody joins the class later without your permission. See the Members section in Shared Spaces above for more details and alternate methods for adding students to your space.
Note that each student must have their own RStudio Cloud account. When they attempt to access your course space for the first time, they will be prompted to log in, or to sign up for an account if they don’t already have one. If your organization is using SSO, account creation will happen automatically when they log in the first time.
At this point, you and your students should be all set.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Exporting Projects | Instructor View
The contents of a project can be downloaded without opening the project.
Press the Export action to the right of the project that you wish to download.
A dialog box will appear showing the progress of your export. The process can take anywhere from a few seconds to a couple of minutes, depending on the size of the project, and how recently it was opened.
Once the export is complete, press the Download button in the dialog box to download your project.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | Creating an Assignment | Instructor View
A good way to create assignments for your students is to make a project for each assignment, and populate it with the files and packages you would like each student to have when they begin the assignment. When you are ready to reveal an assignment to your students, open the project and do the following:
- Click on the Project Settings button (the gear in the upper right)
- Select the Access panel
- Set the project access so it can be viewed by everyone in the space
- Check “Make this project an assignment”
When the student opens an assignment project (either via the projects listing, or via a direct link to the project), RStudio Cloud will automatically make a copy for them. To convey this special behavior, assignments are displayed a bit differently, both for you and for your students.
You can see the students’ copies of the assignment by clicking on the “View n derived projects” link that will appear with your original project.
Note that changes you make to the original assignment will not be applied to any student copies already created. The changes will only apply to future copies of the assignment.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
RStudio Cloud | {rscloud} Package | Instructor View
You can access RStudio Cloud’s API to manage space members programatically using the rscloud package.
You will need to create client credentials to use the package. To do so, click on your icon/name in the header to reveal the User panel, then click on Credentials. This will take you to the Credentials page of RStudio User Settings, where you can create and manage your client credentials.
{rscloud} package repo: https://github.com/rstudio/rscloud
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
Posit Cloud | Creating a Shared Space | Instructor View
A shared space is an area where a group of people can collaborate together - only the members of a shared space can access the space and its contents.
To create a shared space, go to the navigation sidebar (click the menu icon at the upper left if needed) and choose New Space, then follow the on-screen instructions.
ABOUT RSTUDIO CLOUD: RStudio Cloud is a lightweight, cloud-based solution that allows anyone to do, share, teach and learn data science online.
Analyze your data using the RStudio IDE, directly from your browser. Share projects with your team, class, workshop or the world. Teach data science with R to your students or colleagues. Learn data science in an instructor-led environment or with interactive tutorials.
There is nothing to configure and no dedicated hardware, installation or annual purchase contract required. Individual users, instructors and students only need a browser to do, share, teach and learn data science.
We will always offer a free plan for casual, individual use, and we now offer paid premium plans for professionals, instructors, researchers, and organizations.
RSTUDIO CLOUD RESOURCES: RStudio Cloud https://rstudio.cloud RStudio Cloud Pricing plans https://rstudio.cloud/plans/instructor RStudio Cloud guide https://rstudio.cloud/learn/guide {rscloud} https://github.com/rstudio/rscloud
VIDEO CREDITS: Monitor icon made by xnimrodx from flaticon.com Cloud icon made by Freepik from flaticon.com Tiny Putty Music from Blue Dot Sessions: https://app.sessions.blue/browse/track/52046
#
ABOUT RSTUDIO: RStudio’s mission is to create free and open-source software for data science, scientific research, and technical communication to enhance the production and consumption of knowledge by everyone, regardless of economic means, and to facilitate collaboration and reproducible research, both of which are critical to the integrity and efficacy of work across industries.
RStudio also produces RStudio Team, a modular platform of commercial software products that give organizations the confidence to adopt R, Python and other open-source data science software at scale, along with online services to make it easier to learn and use them over the web.
Together, RStudio’s open-source software and commercial software form a virtuous cycle: the adoption of open-source data science software at scale in organizations creates demand for RStudio’s commercial software; and the revenue from commercial software, in turn, enables deeper investment in the open-source software that benefits everyone. Check out www.rstudio.com
Follow us on Twitter: https://twitter.com/rstudio
Facebook: https://www.facebook.com/rstudiopbc/
And LinkedIn: https://www.linkedin.com/company/rstudio-pbc/
Data Science Hangout | Tori Oblad, WaFd Bank | Getting Executives to Support Data Science
We want to help data science leaders become better.
The Data Science Hangout is a weekly, free-to-join open conversation for current and aspiring data science leaders.
An accomplished leader in the space will join us each week and answer whatever questions the audience may have.
We were recently joined by Tori Oblad, Enterprise Data & Analytics Officer at WaFd Bank.
Here are a few snippets from our conversation: 1:14 - Start of session 3:00 - How to build an internal data science community 11:40 - Showing the art of the possible 14:00 - How do you get others to lead topics and foster engagement? 26:17 - Writing starter scripts for new users 35:55 - When to use R or Python versus BI 36:38 - Building toy models in Excel to explain it to people / to build relationships with business 38:33 - Avoiding vendor lock-in, being technology agnostic 43:35 - How to build confidence with IT and compliance 49:15 - Working with business users and creating business value 53:21 - Getting business and executive support 1:22:30 - What data scientists should focus on when communicating with stakeholders: value
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
How to Improve Your Communication Skills | Data Science Hangout Highlights
RStudio is joined by Elaine McVey, VP of Data Science at The Looma Project, to discuss how data scientists can become leaders within their organizations.
Watch the full recording here: https://www.youtube.com/watch?v=IkqItgPSPro&feature=youtu.be
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
How to Communicate Value | Data Science Hangout Highlights
RStudio is joined by Jonathan Regenstein, Head of Data and Quantamental Research at Truist Securities, to discuss how data scientists can become leaders within their organizations.
Watch the full recording here: https://www.youtube.com/watch?v=pNTENrov020
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
How to Speak to Executives | Data Science Hangout Highlights
RStudio is joined by Elaine McVey, VP of Data Science at The Looma Project, to discuss how data scientists can become leaders within their organizations.
Watch the full recording here: https://www.youtube.com/watch?v=IkqItgPSPro
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Data Science Hangout | Jonathan Regenstein, Truist | Relationships with IT and Non-Data Scientists
We want to help data science leaders become better.
The Data Science Hangout is a weekly, free-to-join open conversation for current and aspiring data science leaders.
An accomplished leader in the space will join us each week and answer whatever questions the audience may have.
We were recently joined by Jonathan Regenstein, Head of Data and Quantamental Research at Truist Securities.
Working with IT and building relationships was a focus in our conversation with Jonathan and he included a few tips for building relationships with non-data scientist colleagues.
Find a partner within the IT organization and talk to that person at least once a week. IT can help you communicate value proposition along the way as well.
“It sounds crazy to say this in the world of data science, but relationship building was critical to what we did, especially at a bank. Thousands of request for new technology. There’s no way to avoid going through all the security scans and check marks that we have to go through. We want to make sure we have a good partner who is going to help us do that”
0:48 - Start of session 10:52 - How should data science leaders work with IT? 46:20 - How far out Data Science Leaders should be planning projects with IT 48:20 - How do you become a champion of data science within your organization? 1:02:11 - Your responsibility as a data science leader is to work cross functionally 1:04:17 - Data Science Leaders: Your business cares about the value, not how you got there.
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn:https://www.linkedin.com/company/rstudio-pbc Twitter: https://twitter.com/rstudio
Data Science Hangout | Elaine McVey at the Looma Project | Communicating the Value of Data Science
The Data Science Hangout is a weekly, free-to-join open conversation for current and aspiring data science leaders.
An accomplished leader in the space will join us each week and answer whatever questions the audience may have.
We were recently joined by Elaine McVey, VP of Data Science at the Looma Project.
21:30 - How to approach experimentation and running tests 43:30 - How do you communicate the value of data science to executives 52:40 - Ways to improve your communication skills as a data scientist 57:15 - How to package insights to executives 1:01:03 - What data scientists get wrong when communicating insights
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.rstudio.com LinkedIn: https://www.linkedin.com/company/rstu … Twitter: https://twitter.com/rstudio
To join future data science hangouts, more info here: rstd.io/datasciencehangout
Nicolas Nguyen - ZEISS | Supply Chain Management Meetup | RStudio
0 - 50:20 Presentation 50:20 - 56:52 Q&A Presentation by Nicolas Nguyen, Digital Supply Chain and Global S&OP Leader for Carl Zeiss Meditec
Abstract: In demand & supply planning, we often need to calculate projected inventories and replenishment plans - sometimes for hundreds or thousands of SKUs, and through different levels of the distribution network.
In the sales & operations planning (S&OP) process, we might need to run some scenarios to balance demand and supply to support sales: changing inventories plans, sales plans, delivery lead times, production plans, product mix, etc.
Using Shiny, we can design simple, powerful, scalable, and reproducible apps for demand & supply planning as well as the S&OP process. In this talk, you will learn about real-life examples of web applications, which can be deployed in a few minutes to perform some popular demand & supply planning operations.
__
Thank you to Nicolas for an awesome presentation on how he is using Shiny today. With all the interest from the community in this topic, we’d love to continue the discussion and connect us all through:
Future meetups: https://www.meetup.com/RStudio-Enterprise-Community-Meetup/ R for Data Science Online Learning Community (“chat-supply_chain”): r4ds.io/join RStudio Community: community.rstudio.com
Julia Silge | Monitoring Model Performance | RStudio
0:00 Project introduction 1:50 Overview of the setup code chunk 3:05 Getting new data 4:05 Getting model from RStudio Connect using httr and jsonlite 6:20 Bringing in metrics 9:45 Using the pins package 10:50 Using boards on RStudio Connect 13:30 Benefits of using pins 14:00 Visualizations using ggplot and plotly 17:00 Knitting the flexdashboard 18:10 Project takeaways
You can read Julia’s blogpost, Model Monitoring with R Markdown, pins, and RStudio Connect, here: https://blog.rstudio.com/2021/04/08/model-monitoring-with-r-markdown/
Modelops playground GitHub repo: https://github.com/juliasilge/modelops-playground
pins package documentation: https://pins.rstudio.com/
flexdashboard documentation: https://rmarkdown.rstudio.com/flexdashboard/
tidymodels documentation: https://www.tidymodels.org/

Tom Mock | RStudio Connect in Production
https://rstudio.com/resources/webinars/rstudio-connect-in-production/
In part 2 of this 3 part series, Tom covers: Communicating results can be the most challenging part of Data Science: many insights never leave the laptops where they are discovered. In this webinar, we will show you how to use RStudio Connect to deploy your results in a production environment. You’ll learn how to automate publishing, schedule updates, and provide consumers with self-service access to your work. RStudio Connect is a revolutionary new way to host executable Data Science content.
About Tom: Thomas is involved in the local and global data science community, serving as Outreach Coordinator for the Dallas R User Group, as a mentor for the R for Data Science Online Learning Community, as co-founder of #TidyTuesday, attending various Data Science and R-related conferences/meetups, and participated in Startup Weekend Fort Worth as a data scientist/entrepreneur
Kelly O’Briant | Interactivity in Production | RStudio (2019)
https://rstudio.com/resources/webinars/interactivity-in-production/
In part 3 of this 3 part series, Kelly covers: Interactive products take your data science to a new level, but they require new coding decisions. This webinar will give you clear guidelines on when and how to add interactivity to your work. Here you’ll learn: when to use off-the-shelf interactive products like parameterized R Markdown and htmlwidgets, when to create bespoke interactivity with Shiny, how to make your Shiny apps as fast as possible, how to support interactivity in production, and much more.
About Kelly: Kelly is Solutions Engineer for RStudio and also an organizer of the Washington DC chapter of R-Ladies Global. It’s an R users group for lady-folk and friends
Garrett Grolemund | Reproducibility in Production | RStudio (2019)
https://rstudio.com/resources/webinars/reproducibility-in-production/
In part 1 of this 3 part series, Garrett covers the following:
Computational documents offer limitless opportunities for your business. With them, your consumers can rerun your report with new parameters, apply your analysis to new data, or schedule future, automatic updates to your work—all with the click of a button. This is the first in a three part webinar series that will describe this new form of reproducibility. Here, we begin by showing you how to write executable R Markdown documents for a production environment.
About Garrett: Garrett is the author of Hands-On Programming with R and co-author of R for Data Science and R Markdown: The Definitive Guide. He is a Data Scientist at RStudio and holds a Ph.D. in Statistics, but specializes in teaching. He’s taught people how to use R at over 50 government agencies, small businesses, and multi-billion dollar global companies; and he’s designed RStudio’s training materials for R, Shiny, R Markdown and more. Garrett wrote the popular lubridate package for dates and times in R and creates the RStudio cheat sheets
Webinar Summary | Avoid Dashboard Fatigue | RStudio (2020)
0:00 Introduction 0:07 The Problem 1:05 The Solution 3:20 Real Life Success Stories 5:27 Demo (with code)
Don’t have an hour to watch a webinar? We’ve made a summary video that covers the main points of our “Avoid Dashboard Fatigue” webinar from Sean Lopp and Rich Iannone.
The full webinar covered: Data science teams face a challenging task. Not only do they have to gain insight from data, they also have to persuade others to make decisions based on those insights. To close this gap, teams rely on tools like dashboards, apps, and APIs. But unfortunately data organizations can suffer from their own success - how many of those dashboards are viewed once and forgotten? Is a dashboard of dashboards really the right solution? And what about that pesky, precisely formatted Excel spreadsheet finance still wants every week?
In this webinar, we’ll show you an easy way teams can solve these problems using proactive email notifications through the blastula and gt packages, and how RStudio pro products can be used to scale out those solutions for enterprise applications. Dynamic emails are a powerful way to meet decision makers where they live - their inbox - while displaying exactly the results needed to influence decision-making. Best of all, these notifications are crafted with code, ensuring your work is still reproducible, durable, and credible.
We’ll demonstrate how this approach provides solutions for data quality monitoring, detecting and alerting on anomalies, and can even automate routine (but precisely formatted) KPI reporting.
Webinar materials: https://rstudio.com/resources/webinars/avoid-dashboard-fatigue/
About Sean: Sean has a degree in mathematics and statistics and worked as an analyst at the National Renewable Energy Lab before making the switch to customer success at RStudio. In his spare time he skis and mountain bikes and is a proud Colorado native.
About Rich: My background is in programming, data analysis, and data visualization. Much of my current work involves a combination of data acquisition, statistical programming, tools development, and visualizing the results. I love creating software that helps people accomplish things. I regularly update several R package projects (all available on GitHub). One such package is called DiagrammeR and it’s great for creating network graphs and performing analyses on the graphs. One of the big draws for open-source development is the collaboration that comes with the process. I encourage anyone interested to ask questions, make recommendations, or even help out if so inclined!

Tom Mock & Shannon Haggerty | Theming Shiny and RMarkdown with {thematic} & {bslib} | RStudio
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: this presentation covers the basics of how the thematic and bslib packages can be used to consistently style all the components of a shiny app at once.
About Tom Mock: Thomas is involved in the local and global data science community, serving as Outreach Coordinator for the Dallas R User Group, as a mentor for the R for Data Science Online Learning Community, as co-founder of #TidyTuesday, attending various Data Science and R-related conferences/meetups, and participated in Startup Weekend Fort Worth as a data scientist/entrepreneur.
About Shannon Haggerty: Shannon is on RStudio’s Customer Success team working with teams across the Life Sciences and Healthcare. In her free time, she likes to bake, hang out with her dogs, and explore new hobbies.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Pedro Silva | Styling Shiny with CSS & SASS and Speeding Up Shiny Apps | Posit
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: in the first part of this talk I will discuss how to use CSS to give your application a fresh and unique look, while keeping your codebase clean and organized with SASS. During the second half I will discuss how to leverage Shiny update functions, proxy objects and JavaScript messages to speed up your dashboards.
About Pedro Silva: Pedro has nearly a decade of experience combining frontend and backend technologies, and is an expert on augmenting R Shiny dashboards with CSS and JavaScript.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Jenny Bryan | Help me help you: creating reproducible examples | RStudio (2018)
What is a reprex? It’s a reproducible example. Making a great reprex is both an art and a science and this webinar will cover both aspects. A reprex makes a conversation about code more efficient and pleasant for all. This comes up whenever you ask someone for help, report a bug in software, or propose a new feature. The reprex package (https://reprex.Tidyverse.org ) makes it especially easy to prepare R code as a reprex, in order to share on sites such as https://community.rstudio.com , https://github.com , or https://stackoverflow.com . The habit of making little, rigorous, self-contained examples also has the great side effect of making you think more clearly about your programming problems.
Webinar materials: https://rstudio.com/resources/webinars/help-me-help-you-creating-reproducible-examples/
About Jenny: Jenny is a software engineer on the tidyverse team. She is a recovering biostatistician who takes special delight in eliminating the small agonies of data analysis. Jenny is known for smoothing the interfaces between R and spreadsheets, web APIs, and Git/GitHub. She’s been working in R/S for over 20 years and is a member of the R Foundation. She also serves in the leadership of rOpenSci and Forwards and is an adjunct professor at the University of British Columbia

Damian Rodziewicz | Scaling Shiny to Thousands of Users | RStudio
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: in this talk I will discuss how to scale Shiny dashboards to thousands of users.
About Damian Rodziewicz: Damian is one of the four co-founders of Appsilon. Before founding Appsilon he worked at Accenture, UBS, Microsoft and Domino Data Lab.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Dominik Krzemiński | Appsilon’s Guide to Working With Open Source Shiny | RStudio
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: There is no need to praise Shiny for its influence on interactive data visualisation. As with many other technology stacks, Shiny could benefit from community contributions for the further development of the package itself and the growth of independent packages that add new features. In this talk, I present some of the most popular Shiny extensions and explain what are the ways to help with developing Shiny-related tools.
About Dominik Krzemiński: Dominik is the Open Source Tech Lead at Appsilon where he enjoys contributing to open source tools, mainly in R and Python. He created shiny.i18n, shiny.semantic, and the TODOr package for R. He also participated in the Google Summer of Code, where he developed tools supporting neuroscience analyses. He’s also a fan of all kinds of board sports and capoeira.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Olga Mierzwa-Sulima | Best Practices for Developing Shiny Apps | RStudio
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: Best practices for developing Shiny apps presentation covers organizing app’s code with modules and R6 classes, setting up development environment, and testing.
About Olga Mierzwa-Sulima: Olga is experienced in production applications of analytical solutions, especially for FMCG companies. Recently she developed a price elasticity model for Unilever.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Filip Stachura & Marek Rogala | Empowering Data Scientists to Build Spectacular Shiny Apps | RStudio
From rstudio::global(2021) Shiny X-Sessions, sponsored by Appsilon: in this talk, Appsilon’s CEO and CTO show their vision of challenges facing Shiny app authors and what is crucial to achieving success. They announce 3 key initiatives that Appsilon undertakes to empower data scientists to build spectacular Shiny Apps, including the {shiny.fluent} package.
About Filip Stachura: Filip is a CEO and a Co-founder of Appsilon. He holds a double degree in Applied Mathematics and Computer Science from the University of Warsaw. He started his professional career at Microsoft in California. Passionate about data analysis, elegant visualisations and tackling hard algorithmic and analytical problems.
About Marek Rogala: Marek Rogala is the CTO at Appsilon, where he drives innovation in R and Shiny as well as Machine Learning. He previously did software engineering at Google and at Domino Data Lab, where he worked on enabling data scientists to experiment and collaborate effectively.:
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Nathan Stephens | Best Practices for Administering RStudio in Production | RStudio (2019)
Most organizations are unfamiliar with the R programming language. As a result they often struggle to onboard and manage R in production. In this webinar we introduce the RStudio Quickstart which makes it easy to try RStudio professional products on your desktop for free. We also outline best practices for using R and RStudio in production.
Webinar materials: https://rstudio.com/resources/webinars/best-practices-for-administering-rstudio-in-production/
About Nathan: Nathan has a background in analytic solutions and consulting. He has experience building data science teams, architecting analytic infrastructure, and delivering innovative data products. He is a long time user of R
Tom Mock | A Gentle Introduction to Tidy Statistics in R | RStudio (2019)
R is a fantastic language for statistical programming, but making the jump from point and click interfaces to code can be intimidating for individuals new to R. In this webinar I will gently cover how to get started quickly with the basics of research statistics in R, providing an emphasis on reading data into R, exploratory data analysis with the Tidyverse, statistical testing with ANOVAs, and finally producing a publication-ready plot in ggplot2.
Use the code presented instantly on RStudio Cloud!
RStudio Cloud: rstudio.cloud Webinar materials: https://rstudio.com/resources/webinars/a-gentle-introduction-to-tidy-statistics-in-r/
About Thomas: Thomas is involved in the local and global data science community, serving as Outreach Coordinator for the Dallas R User Group, as a mentor for the R for Data Science Online Learning Community, as co-founder of #TidyTuesday, attending various Data Science and R-related conferences/meetups, and participated in Startup Weekend Fort Worth as a data scientist/entrepreneur
Sean Lopp | Posit Investments in Pharma | Posit
From rstudio::global(2021) Pharma X-Sessions, sponsored by ProCogia: R/Pharma is an organization of R enthusiasts who work in the pharma and biotech industries. This presentation summarizes the group and presents some goals for 2021.
More about Sean Lopp: Sean has a degree in mathematics and statistics and worked as an analyst at the National Renewable Energy Lab before making the switch to customer success at RStudio. In his spare time he skis and mountain bikes and is a proud Colorado native.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Marly Gotti | Risk Assessment Tools: R Validation Hub Initiatives | Posit
From rstudio::global(2021) Pharma X-Sessions, sponsored by ProCogia: we will present some of the resources and tools the R Validation Hub has been working on to aid the biopharmaceutical industry in the process of using R in a regulatory setting. In the talk, you will learn about the {riskmetric} R package, which measures the risk of using R packages, and you will also see a demo of the Risk Assessment Shiny application, which is an advanced user interface for {riskmetric}.
About Marly Gotti: Marly Gotti is a Senior Data Scientist at Biogen and a former RStudio intern. She is also an executive committee member of the R Validation Hub, where she advocates for the use of R within a biopharmaceutical regulatory setting.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Harvey Lieberman | R/Pharma | Posit
From rstudio::global(2021) Pharma X-Sessions, sponsored by ProCogia: R/Pharma is an organization of R enthusiasts who work in the pharma and biotech industries. This presentation summarizes the group and presents some goals for 2021.
About Harvey Lieberman: Harvey Lieberman works at Novartis and has been a member of R/Pharma since 2017.
For more on R/Pharma: https://www.pharmar.org/
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Edgar Ruiz | Programación con R | RStudio (2019)
Hay ocasiones que, cuando trabajamos en un análisis en R, necesitamos dividir nuestros datos en grupos, y después tenemos que correr la misma operación sobre cada grupo. Por ejemplo, puede ser que los datos que tenemos contienen varios países, y necesitamos crear un modelo por cada país. Otro caso sería el de correr múltiples operaciones sobre los mismos datos. Estos casos requieren que sepamos cómo usar iteraciones con R. Este webinar se concentrará en cómo utilizar el paquete llamado purrr para ayudarnos a resolver este tipo de problema.
Descargar materiales: https://rstudio.com/resources/webinars/programacio-n-con-r/
About Edgar: Edgar Ruiz es un Ingeniero de Soluciones en RStudio. Es el administrador de los sitios oficiales de sparklyr y de R para bases de datos. También es autor de los paquetes de R: dbplot, tidypredict y modeldb, y co-autor de el paquete dbplyr

Mike Garcia | R in Pharma: Intro to Shiny | Posit
Slides: https://garciamikep.github.io/rstudioglobal-2021-shiny-slides/slides.html#1
From rstudio::global(2021) Pharma X-Sessions, sponsored by ProCogia: in this introduction to Shiny app development, we begin with a quick review of visualization with {ggplot2} and then cover core concepts in app structure and reactive programming. After building several Shiny apps of increasing complexity, we wrap up with a demonstration of how to include your Shiny app in a dashboard using the {flexdashboard} package.
About Mike Garcia: Mike is a Data Science Consultant with ProCogia, with a background in Biostatistics and experience in clinical trial design and public health research. If not geeking out on data with a cup of coffee and spreading his passion for R, he’s probably out enjoying the outdoors.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
To hear more about how other major pharmaceutical companies are transitioning to open source data science you can watch talks from this year’s R in Pharma conference: https://www.youtube.com/@RinPharma/playlists
At Posit, we have a dedicated Pharma team to help organizations migrate and utilize open source for drug development. To learn more about our support for life sciences, please see our dedicated Pharma page where you can book a call with our team. (https://posit.co/solutions/pharma )
Volha Tryputsen | R in Janssen Drug Discovery Statistics | Posit
From rstudio::global(2021) Pharma X-Sessions, sponsored by ProCogia: this talk discusses how R is utilized in the Janssen drug discovery statistics workflow.
About Volha: Volha is the Principal Statistician in the Translational Medicine and Early Development Statistics (TMEDS) group in the Quantitative Sciences Department of Janssen R&D.
Learn more about the rstudio::global(2021) X-Sessions: https://blog.rstudio.com/2021/01/11/x-sessions-at-rstudio-global/
Lou Bajuk & Kevin Bolger | Why Data Science in the Cloud? | RStudio (2020)
As business and organizational needs expand, a centralized ecosystem such as the cloud is needed to securely store and access data, conduct analyses, and share results.
We’ll share some examples of what it means to do data science in the cloud and discuss some problems that users may face along the way, and the solutions that RStudio products can provide. We’ll also discuss best practices for migrating to a cloud environment.
What you’ll learn:
- What are the benefits of working in a cloud environment?
- What are the different cloud environments available?
- How do I learn which is the best fit for my organization?
- What should I consider when migrating my data science infrastructure to the cloud?
Webinar materials: https://rstudio.com/resources/webinars/why-data-science-in-the-cloud/
About Lou: Lou is a passionate advocate for data science software, and has had many years of experience in a variety of leadership roles in large and small software companies, including product marketing, product management, engineering and customer success. In his spare time, his interests includes books, cycling, science advocacy, great food and theater.
About Kevin: After finishing his education in the University of Limerick, Ireland – Kevin’s passion for data science was cemented. Focusing primarily on data analytics and modelling, he went on to spend the first years of his career working at a biopharmaceutical company, where he led the data team on multiple products. Since moving to Seattle with his Washington native wife, Kevin has spent his spare time enjoying the beautiful PNW and playing ‘hurling’, an ancient gaelic field sport with the Seattle Gaels. He now leads the Data Science team at ProCogia as the Director of Data Solutions – where he works with clients from Biotech to Telecom
Hadley Wickham | testthat 3.0.0 | RStudio (2020)
In this webinar, I’ll introduce some of the major changes coming in testthat 3.0.0. The biggest new idea in testthat 3.0.0 is the idea of an edition. You must deliberately choose to use the 3rd edition, which allows us to make breaking changes without breaking old packages. testthat 3e deprecates a number of older functions that we no longer believe are a good idea, and tweaks the behaviour of expect_equal() and expect_identical() to give considerably more informative output (using the new waldo package).
testthat 3e also introduces the idea of snapshot tests which record expected value in external files, rather than in code. This makes them particularly well suited to testing user output and complex objects. I’ll show off the main advantages of snapshot testing, and why it’s better than our previous approaches of verify_output() and expect_known_output().
Finally, I’ll go over a bunch of smaller quality-of-life improvements, including tweaks to test reporting and improvements to expect_error(), expect_warning() and expect_message().
Webinar materials: https://rstudio.com/resources/webinars/testthat-3/
About Hadley: Hadley Wickham is the Chief Scientist at RStudio, a member of the R Foundation, and Adjunct Professor at Stanford University and the University of Auckland. He builds tools (both computational and cognitive) to make data science easier, faster, and more fun. You may be familiar with his packages for data science (the tidyverse: including ggplot2, dplyr, tidyr, purrr, and readr) and principled software development (roxygen2, testthat, devtools, pkgdown). Much of the material for the course is drawn from two of his existing books, Advanced R and R Packages, but the course also includes a lot of new material that will eventually become a book called “Tidy tools”

Mine Çetinkaya-Rundel | Teaching R online with RStudio Cloud | RStudio (2020)
RStudio Cloud is a lightweight and easy to set up / use solution to teaching R online, in the browser. In this webinar we will walk you through the steps of setting up your course on RStudio Cloud, highlighting the various functionalities for teachers and students. We will also discuss best practices and provide an opportunity for the audience to experience the setup first hand. Additionally, we highlight a suite of ready to use resources for teaching an introduction to data science and statistical thinking course using R.
Webinar materials: https://rstudio.com/resources/webinars/teaching-r-online-with-rstudio-cloud/
About Mine: Mine Çetinkaya-Rundel is Professional Educator and Data Scientist at RStudio as well as Senior Lecturer in the School of Mathematics at University of Edinburgh (on leave from Department of Statistical Science at Duke University). Mine’s work focuses on innovation in statistics and data science pedagogy, with an emphasis on computing, reproducible research, student-centered learning, and open-source education as well as pedagogical approaches for enhancing retention of women and under-represented minorities in STEM. Mine works on integrating computation into the undergraduate statistics curriculum, using reproducible research methodologies and analysis of real and complex datasets. She also organizes ASA DataFest and works on the OpenIntro project. She is also the creator and maintainer of datasciencebox.org and she teaches the popular Statistics with R MOOC on Coursera

A quick tour of RStudio 1.4 | RStudio
HD version here: https://youtu.be/oCR_LB3H73M
0:00 Introduction 0:20 R Markdown Visual Editor 0:46 Insert citations in R Markdown 1:09 Python support in Environment pane 2:05 Python environment selection 2:25 Rainbow parentheses 2:43 Monospace font support 2:54 Support for multiple source columns 3:10 Command palette 3:27 Customize data and configuration storage (users and servers) 3:55 RStudio Pro edition features 4:08 Authenticate RStudio Server Pro using SAML 4:25 Project sharing with Launcher 4:48 Request a GPU with SLURM 5:00 Run Visual Studio Code sessions (beta)
What’s new with RStudio 1.4:
A visual markdown editor that provides improved productivity for composing longer-form articles and analyses with R Markdown.
New Python capabilities, including display of Python objects in the Environment pane, viewing of Python data frames, and tools for configuring Python versions and conda/virtual environments.
The ability to add source columns to the IDE workspace for side-by-side text editing.
A new command palette (accessible via Ctrl+Shift+P) that provides easy keyboard access to all RStudio commands, add-ins, and options.
Support for rainbow parentheses in the source editor (enabled via Options, then Code, then Display).
New citation support that allows you to include document citations from your document bibliography, personal or group libraries, and several other sources.
Integration with a host of new RStudio Server Pro features including project sharing when using Launcher, Microsoft Visual Studio Code support (currently in beta), SAML authentication, and local launcher load-balancing.
Read more on our blog: https://blog.rstudio.com/2021/01/19/announcing-rstudio-1-4/
Greg Wilson | Teaching Online at Short Notice | RStudio (2020)
So here you are: you planned to teach your class or deliver your workshop in person, and now you have to do it online or not at all.
Nobody is giving you time or money to make the change, and a hundred other things also need your attention. Where should you start, and what can you realistically hope to achieve? This one-hour webinar will present answers from people who have found themselves in this situation before, and will recommend a handful of techniques that you can apply right away.
Webinar materials: https://rstudio.com/resources/webinars/teaching-online-at-short-notice/
About Greg: Dr. Greg Wilson has worked for 35 years in both industry and academia, and is the author or editor of several books on computing and two for children. He is best known as the co-founder of Software Carpentry, a non-profit organization that teaches basic computing skills to researchers, and is now part of the education team at RStudio
James Blaire & Barret Schloerke | Integrating R with Plumber APIs | RStudio (2020)
Full title: Expanding R Horizons: Integrating R with Plumber APIs
In this webinar we will focus on using the Plumber package as a tool for integrating R with other frameworks and technologies. Plumber is a package that converts your existing R code to a web API using unique one-line comments. Example use cases will be used to demonstrate the power of APIs in data science and to highlight new features of the Plumber package. Finally, we will look at methods for deploying Plumber APIs to make them widely accessible.
Webinar materials: https://rstudio.com/resources/webinars/expanding-r-horizons-integrating-r-with-plumber-apis/
About James: James is a Solutions Engineer at RStudio, where he focusses on helping RStudio commercial customers successfully manage RStudio products. He is passionate about connecting R to other toolchains through tools like ODBC and APIs. He has a background in statistics and data science and finds any excuse he can to write R code.
About Barret: I specialize in Large Data Visualization where I utilize the interactivity of a web browser, the fast iterations of the R programming language, and large data storage capacity of Hadoop

Roche & Novartis: Effective Visualizations for Data Driven Decisions || Posit (2020)
Effective visual communication is a core task for all data scientists including statisticians, epidemiologists, machine learning experts, bioinformaticians, etc.
By using the right graphical principles, we can better understand data, highlight core insights and influence decisions toward appropriate actions. Without it, we can fool ourselves and others and pave the way to wrong conclusions and actions. While numerous solutions exist to analyze data, these often require many manual steps to convert them into visually convincing and meaningful reports. How do we put this in practice in an accurate, transparent and reproducible way?
In this webinar we will introduce an open collaborative effort, currently undertaken by Roche and Novartis, to develop solutions for effective visual communication with a focus on reporting medical and clinical data. The aim of the collaboration is to develop a user-friendly, fit for purpose, open source package to simplify the use of good graphical principles for effective visual communication of typical analyses of interventional and observational data encountered in clinical drug development. We will introduce the initial visR package design which easily integrates into a typical tidyverse workflow. The package provides guidance and meaningful default parameters covering all aspects from the design, implementation and review of statistical graphics.
Webinar materials: https://posit.co/resources/videos/effective-visualizations-for-data-driven-decisions/
About Charlotta: Charlotta is a computational biologist by training and works as a data scientist in the Personalized Healthcare department at Roche where she uses R to untap the wealth of information coming from healthcare data collected in real-world settings to support the development of new medicines.
About Diego: Diego is a data scientist specializing in applied machine learning at Roche Personalized Healthcare since March 2019. He has developed models to perform various tasks and analyze diverse data sources. Currently, his main applications of interest are in onocology and clinico-genomics.
About Mark: Mark is a methodologist supporting the clinical development and analytics department at Novartis. He has a focus on data visualization working on a number of internal and external initiatives to improve the reporting of clinical trials and observational studies.
About Marc: Marc is a biostatistics group head at Novartis. He is interested in advancing the methods and practice of clinical development, for instance through effective use of graphics. https://graphicsprinciples.github.io/
Sean Lopp & Lou Bajuk | R & Python: A Data Science Love Story | RStudio (2020)
Many Data Science teams today leverage both R and Python in their work, but struggle to use them together. Data Science leaders and their business partners find it difficult to make key data science content easily discoverable and available for decision-making, while IT Admins and DevOps engineers grapple with how to efficiently support these teams without duplicating infrastructure. Even experienced data scientists familiar with both languages often struggle to combine them without painful context switching and manual translations.
In this webinar, you will learn how RStudio helps organizations tackle these challenges, with a focus on some of the recent additions to our products that have helped deepen the happy relationship between R and Python:
- Easily combine R and Python in a single Data Science project using a single IDE.
- Leverage a single infrastructure to launch and manage Jupyter Notebooks, JupyterLab, VSCode and the RStudio IDE, while giving your team easy access to Kubernetes and other resources.
- Share and manage access to R- and Python-based interactive applications, dashboards, and APIs, all in a single place.
Webinar materials: https://rstudio.com/resources/webinars/r-python-a-data-science-love-story/
About Lou: Lou is a passionate advocate for data science software, and has had many years of experience in a variety of leadership roles in large and small software companies, including product marketing, product management, engineering and customer success. In his spare time, his interests includes books, cycling, science advocacy, great food and theater.
About Sean: Sean has a degree in mathematics and statistics and worked as an analyst at the National Renewable Energy Lab before making the switch to customer success at RStudio. In his spare time he skis and mountain bikes and is a proud Colorado native
Sean Lopp & Rich Iannone | Avoid Dashboard Fatigue | RStudio (2020)
Data science teams face a challenging task. Not only do they have to gain insight from data, they also have to persuade others to make decisions based on those insights. To close this gap, teams rely on tools like dashboards, apps, and APIs. But unfortunately data organizations can suffer from their own success - how many of those dashboards are viewed once and forgotten? Is a dashboard of dashboards really the right solution? And what about that pesky, precisely formatted Excel spreadsheet finance still wants every week?
In this webinar, we’ll show you an easy way teams can solve these problems using proactive email notifications through the blastula and gt packages, and how RStudio pro products can be used to scale out those solutions for enterprise applications. Dynamic emails are a powerful way to meet decision makers where they live - their inbox - while displaying exactly the results needed to influence decision-making. Best of all, these notifications are crafted with code, ensuring your work is still reproducible, durable, and credible.
We’ll demonstrate how this approach provides solutions for data quality monitoring, detecting and alerting on anomalies, and can even automate routine (but precisely formatted) KPI reporting.
Webinar materials: https://rstudio.com/resources/webinars/avoid-dashboard-fatigue/
About Sean: Sean has a degree in mathematics and statistics and worked as an analyst at the National Renewable Energy Lab before making the switch to customer success at RStudio. In his spare time he skis and mountain bikes and is a proud Colorado native.
About Rich: My background is in programming, data analysis, and data visualization. Much of my current work involves a combination of data acquisition, statistical programming, tools development, and visualizing the results. I love creating software that helps people accomplish things. I regularly update several R package projects (all available on GitHub). One such package is called DiagrammeR and it’s great for creating network graphs and performing analyses on the graphs. One of the big draws for open-source development is the collaboration that comes with the process. I encourage anyone interested to ask questions, make recommendations, or even help out if so inclined!

Marie Vendettuoli | Lessons learned developing a library of validated packages | RStudio
Full title: Towards an integrated {verse}: lessons learned developing a library of validated packages
Developing R packages as a unified {verse} – a set of packages that work well together but with each focusing on individual tasks – is an efficient strategy to structure support for complex workflows. The ongoing challenge becomes managing the growth of related packages in a holistic manner. This is especially problematic in industries with a heavy emphasis on stability, for example if packages need to be validated prior to use in production. In this talk, I will discuss a paradigm for developing and maintaining validated R packages, emphasizing the following areas:
- Strategies for organizing packages to prevent excessive re-work
- Facilitating responsive, iterative development and
- Empathy for developer and user experiences
About Marie: Marie Vendettuoli is a Senior Statistical Programmer at Statistical Center for HIV/AIDS Research and Prevention (SCHARP - https://www.fredhutch.org/en/research/divisions/vaccine-infectious-disease-division/research/biostatistics-bioinformatics-and-epidemiology/statistical-center-for-hiv-aids-research-and-prevention.html ) @ FredHutch. She holds a PhD from Iowa State University in Human Computer Interaction and started developing R packages for use within regulatory frameworks while working as a Data Scientist at USDA Center for Veterinary Biologics (https://www.aphis.usda.gov/aphis/ourfocus/animalhealth/veterinary-biologics/sa_about_vb/ct_vb_about) . Before discovering R, Marie worked in a CBER (https://www.fda.gov/about-fda/fda-organization/center-biologics-evaluation-and-research-cber)-regulated laboratory. Her main interest is developing analytical infrastructure to facilitate scientific analysis for fellow data scientists working in a regulatory environment
Winston Chang | Making Shiny apps faster with caching | RStudio
Shiny’s 1.6 has a new function, bindCache(), which makes it easy to dramatically speed up reactive expressions and output rendering functions. This allows many applications to scale up to serve several times more users without an increase in server resources.
Note: Shiny 1.6.0 isn’t yet on CRAN, but will be in the next few days. In the meantime, you can install it with:
remotes::install_github(““rstudio/shiny@rc-v1.6.0 "”)
About Winston: Winston is a software engineer at RStudio. He holds a Ph.D. in psychology from Northwestern University and is the author of R Graphics Cookbook, published by O’Reilly Media

Vicki Boykis | Your public garden | RStudio
Vicki will discuss how that as people who can write code and analyze data, we have a lot of input and power over what our digital and work worlds looks like, and therefore can act as agents of change and repair.
About Vicki: Vicki Boykis is a machine learning engineer at Automattic, the company behind Wordpress.com. She works mostly in Python, R, Spark, and SQL, and really enjoys building end-to-end data products. Outside of work she publishes the Normcore Tech newsletter (https://vicki.substack.com ) and blogs at https://veekaybee.github.io/ . In her “spare time”, she blogs, reads, and writes terrible joke tweets about data
Shelmith Kariuki | rKenyaCensus Package | RStudio
The rKenyaCensus package contains the results of the 2019 Kenya Population Census. The census exercise was carried out in August 2019, and the results were released in February 2020. Kenya leveraged on technology to capture data during cartographic mapping, enumeration and data transmission, making the 2019 Census the first paperless census to be conducted in Kenya. The data was published in four different pdf files (Volume 1 - Volume 4) which can be found in the Kenya National Bureau of statistics website. The data in its current form was open and accessible, but not usable and so there was need to convert it into a machine readable format. This data can be used by the government, non-governmental organizations and any other entities for data driven policy making and development. During the talk, I will explain the reasons behind development of the package, take you through the steps I took during the process and finally showcase analysis of certain aspects of the data.
About Shelmith: Shelmith Kariuki is a Senior Data Analyst based in Nairobi, Kenya. She is an RStudio Certified Tidyverse trainer (https://education.rstudio.com/trainers/) , currently working as a Data Analytics consultant with UN DESA. She previously worked as a Research Manager at Geopoll, and as a Data Analyst at Busara Center for Behavioral Economics. She also worked as an assistant lecturer in various Kenyan universities, teaching units in Statistics and Actuarial Science. She has extensive experience in data analysis using R. She co-organizes a community of R users in Nairobi (https://www.linkedin.com/feed/hashtag/nairobir/ ) and in Africa (https://twitter.com/AfricaRUsers) . One of the missions of her community work is to make sure that there is an increased number of R adopters, in Africa. She is very passionate about training and using data analytics to drive development projects in Africa
Nicole Kramer | A New Paradigm for Multifigure Coordinate-Based Plotting in R | RStudio
R is unparalleled in its ability to transform raw data into a wide array of beautiful graphics, all within the same environment. However, when it comes to complex, multi-paneled plots, users rely on 3rd party graphic design software to arrange plots. Here I present the new world of programmatic, coordinate-based multi-figure plotting in R. Employing grid Graphics and drawing from the paradigms of base plotting and ggplot2, I am developing a package that will revolutionize the way plots are laid out in R. Not only will individual plots be aesthetically customizable and tailored for speed, users will also be offered exquisite control over all aspects of page layout, plot placement, and arrangements. Come join me in changing how we plot in R!
About Nicole: Nicole Kramer is a third year Bioinformatics and Computational Biology graduate student at the University of North Carolina at Chapel Hill. She works in the lab of Dr. Doug Phanstiel , where her and her colleagues use experimental and computational techniques to study human genomics. Prior to grad school, Nicole received her B.S. in Biological Engineering from MIT in 2018. When not doing science, you can find Nicole petting dogs, admiring giraffes, or knitting tiny animals!
Megan Beckett | Aesthetically automated figure production | RStudio
Automation, reproducibility, data driven. These are not normally concepts one would associate with the traditional publishing industry, where designers normally manually produce every artefact in proprietary software. And, when you have 1000s of figures to produce and update for a single textbook, this becomes an insurmountable task, meaning our textbooks quickly become outdated, especially in our rapidly advancing world.
With R and the tidyverse in our back pocket, we rose to the challenge to revolutionize this workflow. I will explain how we collaborated with a publishing group to develop a system to aesthetically automate the production of figures for a textbook including translations into several languages.
I think you’ll find this talk interesting as it shows how we applied tools that are familiar to us, but in an unconventional way to fundamentally transform a conventional process.
About Megan: Megan Beckett is a Data Scientist at Exegetic Analytics, where she consults, develops and leads several analytical projects across a wide range of fields and industries. “Scientifically creative; creatively scientific.” This aptly describes her philosophy and approach in her work and life. Megan helped co-found and organises the Cape Town R-Ladies chapter and is a co-organiser of the satRday events in South Africa. She loves to paint, with her most recent work exploring the biodiversity of southern Africa , and running is her passion, whether on the road or the trail
Matt Thomas & Mike Page | How the Tidyverse helped the British Red Cross respond to COVID | RStudio
Full title: Cognitive speed: How the Tidyverse helped the British Red Cross respond quickly to COVID-19
We will discuss the importance of cognitive speed, defined here as the rate in which an idea can be translated into code, and why the Tidyverse excels in this domain. We will demonstrate this idea in relation to a suite of tools we were required to rapidly develop at the British Red Cross in order to respond effectively to the COVID-19 pandemic. To do this, we will exhibit how elements of the unifying design principles outlined in the ‘tidyverse design guide - Tidyverse team’ relate to the notion of cognitive speed, giving specific examples for various design considerations. We believe this talk will encourage reflection on better design practices for future R developers, using the design principles of the tidyverse as the guiding beacon.
About Matt: Dr. Matt Thomas is Head of Strategic Insight and Foresight at the British Red Cross. Matt’s team aims to help the Red Cross become more anticipatory and proactive by producing insights and tools including the Vulnerability Index (https://britishredcrosssociety.github.io/covid-19-vulnerability/ ) and Resilience Index (https://britishredcross.shinyapps.io/resilience-index/) . He holds a PhD in Evolutionary Anthropology and, prior to joining the British Red Cross, was researching topics including reindeer herders in the Arctic, hunter-gatherers in the Philippines, and witches in China. Outside of work, Matt writes a column for an anthropology magazine (https://www.sapiens.org/column/machinations/ ) as well as fiction.
About Mike: Mike Page is a data scientist on the Strategic Insight and Foresight team at the British Red Cross. Here, he helps to develop a suite of open source tools and dashboards including the Vulnerability Index (https://britishredcrosssociety.github.io/covid-19-vulnerability/ ) and Resilience Index (https://britishredcross.shinyapps.io/resilience-index/) . Mike is also the author of several R packages including mortyr and newsrivr. In his spare time you can find him rock climbing around the Alps
Ahmadou Dicko | Humanitarian Data Science with R | RStudio
Humanitarian actors are increasingly using data to drive their decisions. Since the Haiti 2010 earthquake, the volume of data collected and used by humanitarians has been growing exponentially and organizations are now relying on data specialists to turn all this data into life-saving data products.
These data products are created by teams using proprietary point and click software. The process from the raw data to the final data product involves a lot of clicking, copying and pasting and is usually not reproducible.
Another approach to humanitarian data science is possible using R. In this talk, I will show how to seamlessly develop reproducible, reusable humanitarian data products using the tidyverse, rmarkdown and some domain-focused R packages.
About Ahmadou: Ahmadou Dicko is a statistics and data analysis officer at the United Nations High Commissioner for Refugees (UNHCR) where he uses statistics and data science to help safeguard the rights and well-being of refugees in West and Central Africa. He has an extensive experience in the use of statistics and data science in development and humanitarian projects. Ahmadou was the lead of the OCHA Center for Humanitarian Data team for West and Central Africa and has worked with several humanitarian and development organizations such as IFRC, FAO, IAEA, OCHA. Ahmadou is a RStudio trainer (https://education.rstudio.com/trainers/ ) and he is passionate about the R community. He is currently co-organizing the Dakar R User Group (https://www.meetup.com/DakaR-R-User-Group/ ) and co-leading the AfricaR initiative (https://africa-r.org/ )
Tracy Teal | Teaching R using inclusive pedagogy: Carpentries workshops lessons learned | RStudio
Talk from rstudio::conf(2019)
The Carpentries is an open, global community teaching researchers the skills to turn data into knowledge. Since 2012 we have taught 700+ R workshops & trained 1600+ volunteer instructors. Our workshops use evidence-based teaching, focus on foundational and relevant skills and create an inclusive environment. Teaching the Tidyverse allows learners to start working with data quickly, and keeps them motivated to begin and sustain their learning. Our assessment show that these approaches have been successful in attracting diverse learners, building confidence & increasing coding usage. Through our train-the-trainer model and open, collaborative lessons, this approach scales globally to reach more learners and further democratize data.
About Tracy Teal: Executive Director of The Carpentries (https://carpentries.org ) and co-founder of Data Carpentry (http://www.datacarpentry.org ), a non-profit organization that develops and runs workshops training researchers in effective data analysis and visualization to enable data-driven discovery. Manages projects, operations and finances. Leads lesson development and volunteer coordination and is responsible for strategic and business planning
Sean Lopp | Announcing Posit Package Manager | RStudio (2019)
Posit Package Manager is the newest professional product that helps teams, departments, and entire enterprises organize and centralize package management. If you’ve ever struggled with IT to get access to a new (any?) R package, reproduce an old result, or share your code with others, Posit Package Manager can help! We’ll introduce the new product, discuss how R repositories can be used to solve problems and take a sneak peek at what is coming in 2019.
VIEW MATERIALS https://github.com/slopp/rspm-rstudioconf
About the Author Sean Lopp Sean has a degree in mathematics and statistics and worked as an analyst at the National Renewable Energy Lab before making the switch to customer success at RStudio. In his spare time he skis and mountain bikes and is a proud Colorado native.
*Posit Package Manager, formerly known as RStudio Package Manager
Jake Thompson | Branding and Packaging Reports with R Markdown | RStudio (2020)
The creation of research reports and manuscripts is a critical aspect of the work conducted by organizations and individual researchers. Most often, this process involves copying and pasting output from many different analyses into a separate document. Especially in organizations that produce annual reports for repeated analyses, this process can also involve applying incremental updates to annual reports. It is important to ensure that all relevant tables, figures, and numbers within the text are updated appropriately. Done manually, these processes are often error prone and inefficient. R Markdown is ideally suited to support these tasks. With R Markdown, users are able to conduct analyses directly in the document or read in output from a separate analyses pipeline. Tables, figures, and in-line results can then be dynamically populated and automatically numbered to ensure that everything is correctly updated when new data is provided. Additionally, the appearance of documents rendered with R Markdown can be customized to meet specific branding and formatting requirements of organizations and journals. In this presentation, we will present one implementation of customized R Markdown reports used for Accessible Teaching, Learning, and Assessment Systems (ATLAS) at the University of Kansas. A publicly available R package, ratlas, provides both Microsoft Word and LaTeX templates for different types of projects at ATLAS with their own unique formatting requirements. We will discuss how to create brand-specific templates, as well as how to incorporate the templates into an R package that can be used to unify report creation across an organization. We will also describe other components of branding reports beyond R Markdown templates, including customized ggplot2 themes, which can also be wrapped into the R package. Finally, we will share lessons learned from incorporating the R package workflow into an existing reporting pipeline. https://rstudio.com/resources/rstudioconf-2020/branding-and-packaging-reports-with-r-markdown/
Joe Cheng | Styling Shiny apps with Sass and Bootstrap 4 | Posit (2020)
Customizing the style–fonts, colors, margins, spacing–of Shiny apps has always been possible, but never as easy as we’d like it to be. Canned themes like those in the shinythemes package can easily make apps look slightly less generic, but that’s small consolation if your goal is to match the visual style of your university, corporation, or client.
In theory, one can “just” use CSS to customize the appearance of your Shiny app, the same as any other web application. But in practice, the use of large CSS frameworks like Bootstrap means significant CSS expertise is required to comprehensively change the look of an app.
Relief is on the way. As part of a round of upgrades to Shiny’s UI, we’ve made fundamental changes to the way R users can interact with CSS, using new R packages we’ve created around Sass and Bootstrap 4. In this talk, we’ll show some of the features of these packages and tell you how you can take advantage of them in your apps.
Resources: https://speakerdeck.com/jcheng5/styling-shiny

Mine Çetinkaya-Rundel | Making the Shiny Contest | RStudio (2020)
In January 2019 RStudio launched the first-ever Shiny contest to recognize outstanding Shiny applications and to share them with the community. We received 136 submissions for the contest and reviewing them was incredibly inspiring and humbling. In this talk, we shine a spotlight on the backstage: the inspiration behind the contest, the process of evaluation, what we learned about Shiny developers and how we can better support them, and what we learned about running contests and how we hope to improve the Shiny Contest experience. We also highlight some of the winning apps as well as the newly revamped Shiny Gallery, which features many noteworthy contest submissions. Finally, we introduce the new process for submitting your apps to the Shiny Gallery and, of course, to Shiny Contest 2020! https://rstudio.com/resources/rstudioconf-2020/making-the-shiny-contest/

Javier Luraschi | Updates on Spark, MLflow, and the broader ML ecosystem | RStudio (2020)
Originally posted at https://rstudio.com/resources/rstudioconf-2020/updates-on-spark-mlflow-and-the-broader-ml-ecosystem/
Yihui Xie | One R Markdown Document, Fourteen Demos | RStudio (2020)
R Markdown is a document format based on the R language and Markdown to intermingle computing with narratives in the same document. With this simple format, you can actually do a lot of things. For example, you can generate reports dynamically (no need to cut-and-paste any results because all results can be dynamically generated from R), write papers and books, create websites, and make presentations. In this talk, I’ll use a single R Markdown document to give demos of the R packages rmarkdown,
- bookdown for authoring books (https://bookdown.org ),
- blogdown for creating websites (https://github.com/rstudio/blogdown) ,
- rticles for writing journal papers (https://github.com/rstudio/rticles) ,
- xaringan for making slides (https://github.com/yihui/xaringan) ,
- flexdashboard for generating dashboards (https://github.com/rstudio/flexdashboard) ,
- learnr for tutorials (https://github.com/rstudio/learnr) ,
- rolldown for storytelling (https://github.com/yihui/rolldown) ,
And the integration between Shiny and R Markdown. To make the best use of your time during the presentation, I recommend you to take a look at the rmarkdown website in advance: https://rmarkdown.rstudio.com
Miriah Meyer | Effective Visualizations | RStudio (2020)
Originally posted to https://rstudio.com/resources/rstudioconf-2020/effective-visualizations/
Riva Quiroga | The development of “datos” package for the R4DS Spanish translation| RStudio (2020)
Originally posted at https://rstudio.com/resources/rstudioconf-2020/the-development-of-datos-package-for-the-r4ds-spanish-translation/
Jeff Leek | Data science education as a public health intervention in E. Baltimore | RStudio (2020)
Originally posted at https://rstudio.com/resources/rstudioconf-2020/data-science-education-as-an-economic-and-public-health-intervention-in-east-baltimore/
Rebecca Barter | Becoming an R blogger | RStudio (2020)
Blogging is an excellent way to learn, improve your communication skills, and gain exposure in the R and data science communities. In this talk, I will discuss how and why I started blogging, and why you should too. I will guide you through choosing topics, writing your blog using RStudio and blogdown, hosting it on netlify, and sharing your blog with the world. This talk is for you if you’ve wanted to start a blog on R, data science, or to showcase your data analyses, but don’t know where to start.
Materials: github https://github.com/rlbarter/rstudio-conf-2020-blogger-slides slides (pdf) https://github.com/rlbarter/rstudio-conf-2020-blogger-slides/blob/master/Becoming%20an%20R%20blogger
Kara Woo | Boxplots: a case study in debugging and perseverance | RStudio (2019)
Come on a journey through pull request #2196. What started as a seemingly simple fix for a bug in ggplot2’s box plots developed into an entirely new placement algorithm for ggplot2 geoms. This talk will cover tips and techniques for debugging, testing, and not smashing your computer when dealing with tricky bugs.
VIEW MATERIALS https://github.com/karawoo/2019-01-17-rstudioconf
About the Author Kara Woo Kara is a research scientist in data curation at Sage Bionetworks, where she helps other researchers document and share their data. She has previously worked as an information manager at Washington State University and at the National Center for Ecological Analysis and Synthesis (NCEAS), where she combined data management with fieldwork at a remote Siberian lake. Kara is an enthusiastic R programmer, and collects data visualizations gone beautifully wrong on a blog called accidental aRt
Edgar Ruiz | Databases using R The latest | RStudio (2019)
Learn about the latest packages and techniques that can help you access and analyze data found inside databases using R. Many of the techniques we will cover are based on our personal and the community’s experiences of implementing concepts introduced last year, such as offloading most of the data wrangling to the database using dplyr, and using the RStudio IDE to preview the database’s layout and data. Also, learn more about the most recent improvements to the RStudio products that are geared to aid developers in using R with databases effectively.
VIEW MATERIALS https://github.com/edgararuiz/databases-w-r
About the Author Edgar Ruiz Edgar is the author and administrator of the https://db.rstudio.com web site, and current administrator of the [sparklyr] web site: https://spark.rstudio.com . Author of the Data Science in Spark with sparklyr cheatsheet. Co-author of the dbplyr package and creator of the dbplot package

Jonathan McPherson | New language features in RStudio | RStudio (2019)
RStudio 1.2 dramatically improves support for many languages frequently used alongside R in data science projects, including SQL, D3, Stan, and Python. In this talk, you’ll learn how to use RStudio 1.2’s new language features to work more efficiently and fluidly in multi-lingual projects.
VIEW MATERIALS https://github.com/rstudio/rstudio-conf/tree/master/2019/RStudio_1.2_Language_Features--Jonathan_McPherson
About the Author Jonathan McPherson Jonathan is a software engineer at RStudio working on the IDE. In the past, he’s written Web applications at a nuclear site in the desert, exploratory information visualization systems at UC Davis, and features for flagship Office products and modern web applications at Microsoft
Wes McKinney | Ursa Labs and Apache Arrow in 2019 | RStudio (2019)
Learn more about what’s happening at URSA labs at https://wesmckinney.com/archives.html
Amelia McNamara | Working with categorical data in R without losing your mind | RStudio (2019)
Categorical data, called “factor” data in R, presents unique challenges in data wrangling. R users often look down at tools like Excel for automatically coercing variables to incorrect datatypes, but factor data in R can produce very similar issues. The stringsAsFactors=HELLNO movement and standard tidyverse defaults have moved us away from the use of factors, but they are sometimes still necessary for analysis. This talk will outline common problems arising from categorical variable transformations in R, and show strategies to avoid them, using both base R and the tidyverse (particularly, dplyr and forcats functions).
VIEW MATERIALS http://www.amelia.mn/WranglingCats.pdf
(related paper from the DSS collection) http://bitly.com/WranglingCats https://peerj.com/collections/50-practicaldatascistats/
About the Author Amelia McNamara My work is focused on creating better tools for novices to use for data analysis. I have a theory about what the future of statistical programming should look like, and am working on next steps toward those tools. For more on that, see my dissertation. My research interests include statistics education, statistical computing, data visualization, and spatial statistics. At the moment, I am very interested in the effects of parameter choices on data analysis, particularly data visualizations. My collaborator Aran Lunzer and I have produced an interactive essay on histograms, and an initial foray into the effects of spatial aggregation. I talked more about spatial aggregation in my 2017 OpenVisConf talk, How Spatial Polygons Shape Our World
Tyler Morgan-Wall | 3D mapping, plotting, and printing with rayshader | RStudio (2019)
Long form discussion: https://www.tylermw.com/3d-printing-rayshader/
Jeroen Ooms | A preview of Rtools 4.0 | RStudio (2019)
Rtools is getting a major upgrade. In addition to the latest gcc, it now includes a full build system and package manager to build, install, and distribute external c/c++/fortran libraries needed by R packages. Thereby it bridges the long-standing gap between Windows and MacOS/Linux with respect to the availability of high quality, up-to-date system libraries. In this talk, we will show how to build and install system libraries with Rtools, and manage your Rtools build environment. It should be interesting both for Windows users as well as non-Windows package authors that are interested in reducing the pain of making things work on Windows.
VIEW MATERIALS https://resources.rstudio.com/rstudio-conf-2019/a-preview-of-rtools-4-0
About the Author Jeroen Ooms Postdoc hacker for @ropensci at UC Berkeley

Emily Robinson | Building an AB testing analytics system with R and Shiny | RStudio (2019)
Online experimentation, or A/B Testing, is the gold standard for measuring the effectiveness of changes to a website. While A/B testing is used at tens of thousands of companies, it can seem difficult to parse without resorting to expensive end-to-end commercial options. Using DataCamp’s system as an example, I’ll illustrate how R is actually a great language for building powerful analytical and visualization A/B testing tools. We’ll first dive into our open-source funneljoin package, which allows you to quickly analyze sequential actions using different types of behavioral funnels. We’ll then cover the importance of setting up health checks for every experiment. Finally, we’ll see how Shiny dashboards can help people monitor and quickly analyze multiple A/B tests each week.
VIEW MATERIALS http://bit.ly/rstudio19
About the Author Emily Robinson I work at DataCamp as a Data Scientist on the growth team. Previously, I was a Data Analyst at Etsy working with their search team to design, implement, and analyze experiments on the ranking algorithm, UI changes, and new features. In summer 2016, I completed Metis’s three-month, full-time Data Science Bootcamp, where I did several data science projects, ranging from using random forests to predict successful projects on DonorsChoose.org to building an application in R Shiny that helps data science freelancers find their best-fit jobs. Before Metis, I graduated from INSEAD with a Master’s degree in Management (specialization in Organizational Behavior). I also earned my bachelor’s degree from Rice University in Decision Sciences, an interdisciplinary major I designed that focused on understanding how people behave and make decisions
Karthik Ram | A guide to modern reproducible data science with R | RStudio (2019)
Resources: https://github.com/karthik/rstudio2019
Hilary Parker | Cultivating creativity in data work | RStudio (2019)
Traditionally, statistical training has focused primarily on mathematical derivations, proofs of statistical tests, and the general correctness of what methods to use for certain applications. However, this is only one dimension of the practice of doing analysis. Other dimensions include the technical mastery of a language and tooling system, and most importantly the construction of a convincing narrative tailored to a specific audience, with the ultimate goal of them accepting the analysis. These “softer” aspects of analysis are difficult to teach, perhaps more so when the field is framed as mathematics and often housed in mathematics departments. In this talk, I discuss an alternative framework for viewing the field, borrowing upon the past work in other fields such as design. Looking forward, we as a field can borrow from these fields to cultivate and hone the creative lens so necessary to the success of applied work.
VIEW MATERIALS https://www.slideshare.net/mobile/hilaryparker/rstudioconf2019l
About the Author Hilary Parker I’m a Senior Data Analyst at Etsy, where I help product teams with data-driven development, via experimentation, opportunity sizing and impact analysis. I got my Ph.D. from the Department of Biostatistics at the Johns Hopkins Bloomberg School of Public Health, working with Jeff Leek. I studied genomics and built tools to help researchers use genomic technologies in personalized medicine applications. I graduated from Pomona College in 2008, where I double-majored in Mathematics and Molecular Biology. True to my liberal arts upbringing, I’m a passionate teacher. Most notably, I taught an introductory Biostatistics class at the American University of Armenia (and kept a pretty cool travel blog along the way)
Angela Bassa | Data science as a team sport | RStudio (2019)
How do you data science as a team sport? Oftentimes a data scientific initiative starts with just a single, lonesome data scientist. But when that germ of a team is successful and starts expanding, should the team be embedded in other disciplines or should it be centralized into its own function? Where should it live in the organizational structure? Should you focus on recruiting senior data scientists or is there a benefit to attracting junior talent as well? And in terms of capabilities, should you hold out for unicorns or hire several specialists to get all jobs done? Data scientists need to work on almost every aspect of a business, so how should a team composition set the data science discipline up for success? Great data scientists have career options and won’t abide bad managers for very long: if you want to retain them, you’ll need to care about their work, connect it to the business, and design a diverse, resilient, high-performing team.
Materials: https://github.com/angelabassa/rstudioconf-2019
James Blair | Democratizing R with Plumber APIs | RStudio (2019)
The Plumber package provides an approachable framework for exposing R functions as HTTP API endpoints. This allows R developers to create code that can be consumed by downstream frameworks, which may be R agnostic. In this talk, we’ll take an existing Shiny application that uses an R model and turn that model into an API endpoint so it can be used in applications that don’t speak R.
VIEW MATERIALS https://bit.ly/2TXfFR5
About the Author James Blair James holds a master’s degree in data science from the University of the Pacific and works as a solutions engineer. He works to integrate RStudio products in enterprise environments and support the continued adoption of R in the enterprise. His past consulting work centered around helping businesses derive insight from data assets by leveraging R. Outside of R and data science, James’s interests include spending time with his wife and daughters, cooking, camping, cycling, racquetball, and exquisite food. Also, he never turns down a funnel cake
Eric Nantz | Effective use of Shiny modules in application development | RStudio (2019)
As a Shiny application grows in scale, organizing code into reusable and streamlined components becomes vital to manage future enhancements and avoid unnecessary duplication. Shiny modules are customized R functions that are easily reused multiple times within an application by avoiding namespace collisions and assist with organizing the code base. Like R functions, modules can be simple utilities or elaborate pieces with multiple inputs and outputs. While the process of creating a module is uncomplicated, application developers can quickly encounter challenges including communication among modules, defining logical compositions, and avoiding hidden state modifications. In this talk, we will introduce practical principles and techniques developers can leverage to address these issues head-on such as documenting modules, passing parameters and return values effectively between modules, and how nesting modules enables dynamic user interfaces with minimal overhead.
VIEW MATERIALS https://rpodcast.github.io/rsconf-2019
About the Author Eric Nantz I have a broad background in statistics, computer science, and system administration which gives me a unique set of skills for using state-of-the-art technology and techniques to accomplish important and innovative data analyses. In my professional role as a statistician, I support the design and analyses of clinical trials evaluating treatments for auto-immune disorders. I also perform statistical analyses of specialized biomarkers utilizing cutting-edge statistical software such as R and high-performance computing infrastructures. I am also the creator, producer, and host of the R-Podcast. The R-Podcast is dedicated to helping those who are new to statistical computing develop their skills and confidence in using the free and open-source statistical computing package called R to get their data analyses done
Hao Zhu | Empowering a data team with RStudio addins | RStudio (2019)
RStudio addins provide a mechanism to extend RStudio in various ways. Addins can interact with the RStudio IDE through RStudio API. It can also provide users a graphical interface with the power of Shiny. In practice, we found it very useful for enhancing or streamlining interaction with data and computing infrastructure. In this talk, we will demonstrate how our team develops and uses RStudio addins to empower our work. You will see some internal tools created to help us manage database connections, and an addin which helps us access external cloud computing resources. We will also show an example of using the addins in rcrossref and citr to download and manage citation and literature databases during rmarkdown document development.
VIEW MATERIALS https://github.com/hebrewseniorlife/addin_demo
About the Author Hao Zhu Hao is a data analyst and software developer working at the Hinda and Arthur Marcus Institute for Aging Research. He completed his training at Boston University School of Medicine in the program on Clinical Investigation. His interests include research reproducibility, data visualization and machine learning. At the Marcus Institute, he works with different teams on various topics, ranging from smartphone motion sensors to MRI images, and helps researchers understand their data by creating analytical reports and web applications. At the same time, Hao leads the development of R packages in the Biostatistics Core. He has contributed multiple R packages to the open source R community, such as kableExtra and memor. He also has a passion for teaching and has mentored several students at the Marcus Institute
Amanda Gadrow | Getting it right: Writing reliable and maintainable R code | RStudio (2019)
How can you tell that your scripts, applications, and package functions are working as expected? Are you sure that when you make changes in one part of the code, it won’t break something in another part? Have you thought deeply about how the consumers of your code (including Future You) will use it, maintain it, fix it, and improve it? Code quality is essential not only for reliable results but also for your script’s maintainability and your users’ satisfaction. Quality can be measured in part with targeted testing, and fortunately, there are several effective and easy-to-use code testing tools available in R. This talk will discuss some of the most useful testing packages, covering both concepts and examples.
VIEW MATERIALS https://github.com/rstudio/rstudio-conf/tree/master/2019/Testing_R_Code--Amanda_Gadrow
About the Author Amanda Gadrow Amanda is a software engineer with many years’ experience writing automated test frameworks for enterprise software. She started learning R when she joined RStudio in 2016, and has been basking in its glory ever since. Amanda leads the QA and Support teams, and spends a significant amount of time analyzing customer data to improve the products and optimize support. She is a co-organizer of R-Ladies Columbus, and an avid musician on the side
Thomas Lin Pedersen | gganimate live cookbook | RStudio (2019)
Animation of data visualisation is becoming increasingly popular both as an attention grabber on social media and as a way to tell small data stories. gganimate is a package that extends ggplot2 for making animations and provides a grammar of animation on top of the grammar of graphics. This talk will quickly introduce gganimate, and then dive into a series of different animation and show how they were made and how they could be changed or expanded.
Slides: https://data-imaginist.com/slides/rstudioconf2019 4 Resources: https://resources.rstudio.com/rstudio-conf-2019/gganimate-live-cookbook 4 Discussion https://community.rstudio.com/t/gganimate-live-cookbook-thomas-lin-pedersen-rstudio-conf-2019l-video/24852

Rich Iannone | Introducing the gt package | RStudio (2019)
With the gt package, anyone can make great-looking display tables. Though the package is still early in development, you can do some really great things with it right now! I’ll walk through a few examples that touch upon the more common table-making use cases. These will include features like adding table parts, integrating footnotes, styling/transforming table cells, using tables in R Markdown documents, and even including gt tables in email messages.
VIEW MATERIALS https://github.com/rich-iannone/presentations/tree/master/2019_01-19-rstudio_conf_gt
About the Author Rich Iannone My background is in programming, data analysis, and data visualization. Much of my current work involves a combination of data acquisition, statistical programming, tools development, and visualizing the results. I love creating software that helps people accomplish things. I regularly update several R package projects (all available on GitHub). One such package is called DiagrammeR and it’s great for creating network graphs and performing analyses on the graphs. One of the big draws for open-source development is the collaboration that comes with the process. I encourage anyone interested to ask questions, make recommendations, or even help out if so inclined!

Jim Hester | It depends: A dialog about dependencies | RStudio (2019)
Software dependencies can often be a double-edged sword. On one hand, they let you take advantage of others’ work, giving your software marvelous new features and reducing bugs. On the other hand, they can change, causing your software to break unexpectedly and increasing your maintenance burden. These problems occur everywhere, in R scripts, R packages, Shiny applications and deployed ML pipelines. So when should you take a dependency and when should you avoid them? Well, it depends! This talk will show ways to weigh the pros and cons of a given dependency and provide tools for calculating the weights for your project. It will also provide strategies for dealing with dependency changes, and if needed, removing them. We will demonstrate these techniques with some real-life cases from packages in the tidyverse and r-lib.
VIEW MATERIALS https://speakerdeck.com/jimhester/it-depends
About the Author Jim Hester Jim is a software engineer at RStudio working with Hadley to build better tools for data science. He is the author of a number of R packages including lintr and covr, tools to provide code linting and test coverage for R
Jenny Bryan | Lazy evaluation | RStudio (2019)
The “tidy eval” framework is implemented in the rlang package and is rolling out in packages across the tidyverse and beyond. There is a lively conversation these days, as people come to terms with tidy eval and share their struggles and successes with the community. Why is this such a big deal? For starters, never before have so many people engaged with R’s lazy evaluation model and been encouraged and/or required to manipulate it. I’ll cover some background fundamentals that provide the rationale for tidy eval and that equip you to get the most from other talks.
VIEW MATERIALS https://github.com/jennybc/tidy-eval-context#readme
About the Author Jenny Bryan Jenny is a recovering biostatistician who takes special delight in eliminating the small agonies of data analysis. She’s part of Hadley’s team, working on R packages and integrating them into fluid workflows. She’s been working in R/S for over 20 years, serves in the leadership of rOpenSci and Forwards, and is an Ordinary Member of the R Foundation. Jenny is an Associate Professor of Statistics (on leave) at the University of British Columbia, where she created the course STAT 545

Jesse Sadler | Learning and using the tidyverse for historical research | RStudio (2019)
My talk will discuss how R, the tidyverse, and the community around R helped me to learn to code and create my first R package. My positive experiences with the resources for learning R and the community itself led me to create a blog detailing my experiences with R as a way to pass along the knowledge that I gained. The next step was to develop my first package. The debkeepr package integrates non-decimal monetary systems of pounds, shillings, and pence into R, making it possible to accurately analyze and visualize historical account books. It is my hope that debkeepr can help bring to light crucial and interesting social interactions that are buried in economic manuscripts, making these stories accessible to a wider audience.
VIEW MATERIALS https://github.com/jessesadler/rstudioconf-2019-slides
About the Author Jesse Sadler I am an early modern historian interested in the social and familial basis of politics, religion, and trade. I received a Ph.D. in European History from UCLA in 2015 and have taught courses on cultural and intellectual history of early modern Europe and the Atlantic. My research investigates the familial basis of the early modern capitalism through archival research on two mercantile families from Antwerp at the end of the sixteenth and beginning of the seventeenth century. I am currently working on a manuscript that argues for the significance of sibling relationships and inheritance in the development of early modern trade. My manuscript places concepts such as patriarchy, emotion, exile, and friendship at the heart of the efficacy of long-distance trade networks and the growth of capitalism
Miles McBain | Our colour of magic The open sourcery of fantastic R packages | RStudio (2019)
What does it mean to say software is, to quote one Twitter user, ‘so f***ing magical!’? In the context of our popular community hobby of rating and sharing R packages, the term ‘magic’ seems reserved for our most powerful expressions of visceral approval. Why is this? And what does it say about how we value software? Can this magical quality be quantified? We will consider these questions in examination of magical specimens, and in the process reveal the surprising depths at which notions of magic are embedded in the R zeitgiest.
VIEW MATERIALS https://github.com/MilesMcBain/rstudioconf_talk
About the Author Miles McBain As an Applied Statistician Miles combines a theoretical statistical knowledge and computing expertise to help organizations understand their core business and their customers. Miles is a hacker at heart, which he channels into regular contributions to the open source and open science communities. In addition to commercial projects Miles is always interested in small data/statistics consulting jobs for start-ups and non-for-profits that enable him to expand his applied experience in areas such as as A/B testing, experimental design, and statistical power analysis. He does this mainly for the thrill of learning new domains and the opportunity to meet fascinating people
Max Kuhn | parsnip A tidy model interface | RStudio (2019)
parsnip is a new tidymodels package that generalizes model interfaces across packages. The idea is to have a single function interface for types of specific models (e.g. logistic regression) that lets the user choose the computational engine for training. For example, logistic regression could be fit with several R packages, Spark, Stan, and Tensorflow. parsnip also standardizes the return objects and sets up some new features for some upcoming packages.
VIEW MATERIALS https://github.com/rstudio/rstudio-conf/tree/master/2019/Parsnip--Max_Kuhn
About the Author Max Kuhn Dr. Max Kuhn is a Software Engineer at RStudio. He is the author or maintainer of several R packages for predictive modeling including caret, Cubist, C50 and others. He routinely teaches classes in predictive modeling at rstudio::conf, Predictive Analytics World, and UseR! and his publications include work on neuroscience biomarkers, drug discovery, molecular diagnostics and response surface methodology. He and Kjell Johnson wrote the award-winning book Applied Predictive Modeling in 2013

Mark Sellors | R in production | RStudio (2019)
With the increase in people using R for data science comes an associated increase in the number of people and organisations wanting to put models or other analytic code into “production”. We often hear it said that R isn’t suitable for production workloads, but is that true? In this talk, Mark will look at some of the misinformation around the idea of what “putting something into production” actually means, as well as provide tips on overcoming the obstacles put in your path.
VIEW MATERIALS https://rinprod.com/
About the Author Mark Sellors Mark is the Head of Data Engineering at Mango Solutions as well as the author of the ‘Field Guide to the R Ecosystem’. He has more than a decade’s experience working with analytical computing environments, DevOps and Unix/Linux. He uses his experience to help Mango’s customers transform their analytic capabilities to ensure they can make the most of their data. Mark and his team are at the forefront of the data engineering field, deploying high performance analytical environments using a wide range of tools, such as R, Python, Spark, and cloud computing. He is experienced in the complete product life-cycle from initial ideas and proofs of concept through to development, test, release and production
Garrett Grolemund | R Markdown The bigger picture | RStudio (2019)
Statistics has made science resemble math, so much so that we’ve begun to conflate p-values with mathematical proofs. We need to return to evaluating a scientific discovery by its reproducibility, which will require a change in how we report scientific results. This change will be a windfall to commercial data scientists because reproducible means repeatable, automatable, parameterizable, and schedulable.
VIEW MATERIALS https://github.com/garrettgman/rmarkdown-the-bigger-picture
About the Author Garrett Grolemund Garrett is a data scientist and master instructor for RStudio. He excels at teaching, statistics, and teaching statistics. He wrote the popular lubridate package and is the author of Hands On Programming with R and the upcoming book, Data Science with R, from O’Reilly Media. He holds a PhD in Statistics and specializes in Data Visualization
Karl Broman | R qtl2 Rewrite of a very old R package | RStudio (2019)
For nearly 20 years, I’ve been developing, maintaining, and supporting an R package, R/qtl, for mapping quantitative trait loci (genetic loci that contribute to variation in quantitative traits, such as blood pressure) in experimental crosses (such as in mice). It’s a rather large package, with 39k lines of R code, 24k lines of C code, and nearly 300 user-accessible functions. In the past several years, I’ve been working on rewriting the package, to better handle high-dimensional data and more complex experimental crosses. This has been a good opportunity to take advantage of many new tools, including Rcpp, Roxygen2, and testthat. I’ll describe my efforts to avoid repeating the mistakes I made the first time around.
VIEW MATERIALS https://bit.ly/rstudio2019
About the Author Karl Broman Karl Broman is Professor in the Department of Biostatistics & Medical Informatics at the University of Wisconsin–Madison; research in statistical genetics; developer of R/qtl (for R). Karl received a BS in mathematics in 1991, from the University of Wisconsin–Milwaukee, and a PhD in statistics in 1997, from the University of California, Berkeley; his PhD advisor was Terry Speed. He was a postdoctoral fellow with James Weber at the Marshfield Clinic Research Foundation, 1997–1999. He was a faculty member in the Department of Biostatistics at Johns Hopkins University, 1999–2007. In 2007, he moved to the University of Wisconsin–Madison, where he is now Professor. Karl is a Senior Editor for Genetics, Academic Editor for PeerJ, and a member of the BMC Biology Editorial Board. Karl is an applied statistician focusing on problems in genetics and genomics – particularly the analysis of meiotic recombination and the genetic dissection of complex traits in experimental organisms. The latter is often called “QTL mapping.” A QTL is a quantitative trait locus – a genetic locus that influences a quantitative trait. Recently he has been focusing on the development of interactive data visualizations for high-dimensional genetic data; see his R/qtlcharts package and his D3 examples
Barret Schloerke | Reactlog 2.0 Debugging the state of Shiny | RStudio (2019)
The revamped reactlog provides an updated visual display to traverse through the reactive behavior within your shiny application. Using live shiny applications, we will use reactlog’s directed dependency graph to find missing reactive dependencies in “working” applications and address suboptimal reactive coding patterns. Correcting these coding patterns will reduce the amount of calculations done by shiny and keep reactive objects from being created unnecessarily.
VIEW MATERIALS http://github.com/schloerke/presentation-2019-01-18-reactlog
About the Author Barret Schloerke I specialize in Large Data Visualization where I utilize the interactivity of a web browser, the fast iterations of the R programming language, and large data storage capacity of Hadoop

Javier Luraschi | Scaling R with Spark | RStudio (2019)
This talk introduces new features in sparklyr that enable real-time data processing, brand new modeling extensions and significant performance improvements. The sparklyr package provides an interface to Apache Spark to enable data analysis and modeling in large datsets through familiar packages like dplyr and broom.
VIEW MATERIALS https://github.com/rstudio/rstudio-conf/tree/master/2019/Scaling%20R%20with%20Spark%20-%20Javier%20Luraschi
About the Author Javier Luraschi Javier is a Software Engineer with experience in technologies ranging from desktop, web, mobile and backend; to augmented reality and deep learning applications. He previously worked for Microsoft Research and SAP and holds a double degree in Mathematics and Software Engineering
Alex Hayes | Solving the model representation problem with broom | RStudio (2019)
The R objects used to represent model fits are notoriously inconsistent, making data analysis inconvenient and frustrating. The broom package resolves this issue by defining a consistent way to represent model fits. By summarizing essential information about fits in tidy tibbles, broom makes it easy to programmatically work with model objects. Combining broom with list-columns results in an especially powerful way to work with many model fits at once. This talk will feature several case studies demonstrating how broom resolves common problems in data analysis
VIEW MATERIALS https://buff.ly/2FGKFkj
About the Author Alex Hayes Alex is interested in how statistics can help people make better decisions. He’s active in the R and data science communities, particularly interested in improving interfaces to modeling sofware. In his free time, he tries to get outside to climb and bike
Edzer Pebesma | Spatial data science in the Tidyverse | RStudio (2019)
Package sf (simple feature) and ggplot2::geom_sf have caused a fast uptake of tidy spatial data analysis by data scientists. Important spatial data science challenges are not handled by them, including raster and vector data cubes (e.g. socio-economic time series, satellite imagery, weather forecast or climate predictions data), and out-of-memory datasets. Powerful methods to analyse such datasets have been developed in packages stars (spatiotemporal tidy arrays) and tidync (tidy analysis of NetCDF files). This talk discusses how the simple feature and tidy data frameworks are extended to handle these challenging data types, and shows how R can be used for out-of-memory spatial and spatiotemporal datasets using tidy concepts.
VIEW MATERIALS https://edzer.github.io/rstudio_conf/2019/index.html
About the Author Edzer Pebesma I lead the spatio-temporal modelling laboratory at the institute for geoinformatics. I hold a PhD in geosciences, and am interested in spatial statistics, environmental modelling, geoinformatics and GI Science, semantic technology for spatial analysis, optimizing environmental monitoring, but also in e-Science and reproducible research. I am an ordinary member of the R foundation. I am one of the authors of Applied Spatial Data Analysis with R (second edition), am Co-Editor-in-Chief for the Journal of Statistical Software, and associate editor for Spatial Statistics. I believe that research is useful in particular when it helps solving real-world problems
Irene Steves | Teaching data science with puzzles | RStudio (2019)
Of the many coding puzzles on the web, few focus on the programming skills needed for handling untidy data. During my summer internship at RStudio, I worked with Jenny Bryan to develop a series of data science puzzles known as the “Tidies of March.” These puzzles isolate data wrangling tasks into bite-sized pieces to nurture core data science skills such as importing, reshaping, and summarizing data. We also provide access to puzzles and puzzle data directly in R through an accompanying Tidies of March package. I will show how this package models best practices for both data wrangling and project management.
VIEW MATERIALS https://github.com/isteves/ds-puzzles
About the Author Irene Steves This summer I was an intern at RStudio, where I worked with Jenny Bryan to develop a series of coding challenges to cultivate and reward the mastery of R and the tidyverse. I was previously a Data Science Fellow at the National Center for Ecological Analysis and Synthesis (NCEAS), where I reviewed data submissions to a national repository for completion, clarity, and data management best practices. As a fellow, I also collaborated on a number of open science projects to improve access to Ecological Metadata Language (EML) and datasets in the DataONE network (see metajam, dataspice)

Nic Crane | The future’s Shiny: Pioneering genomic medicine in R | Posit (2019)
Shiny’s expanding capabilities are rapidly transforming how it is used in an enterprise. This talk details the creation of a large-scale application, supporting hundreds of concurrent users, making use of the future and promises packages. The 100,000 genomes project is an ambitious exercise that follows on from the Human Genome Project - aiming to put the UK at the forefront of genomic medicine, with the NHS as the first health service in the world to offer precision medicine to patients with rare diseases and cancer. Data is at the heart of this project; not only the outputs of the genomic sequencing, but vast amounts of metadata used to track progress against the 100,000 genome target and the status and path of each case through the sample tracking pipeline. In order to make this data readily available to stakeholders, Shiny was used to create an application containing multiple interactive dashboards. A scaled-up version of the app is being rolled out in early 2019 to a much larger audience to support the National Genomics Informatics Service, with the challenge of creating a complex app capable of supporting so many users without grinding to a halt. In this talk, I will explain why Shiny was the obvious technology choice for this task, and discuss the design decisions which enabled this project’s success.
VIEW MATERIALS https://github.com/thisisnic/rstudio-conf-2019
About the Author Nic Crane Nic Crane is a Data Scientist at Elucidata, and has formerly worked for Mango Solutions and IBM. She is passionate about learning and teaching all things data science
Carl Howe | The next million R users | RStudio (2019)
Many students believe that R is obscure, complex, and difficult to write. However, data from a new large-scale survey of R users conducted by RStudio shows that new R users are taking dramatically different learning paths from those who learned R as recently as 2 years ago, and these new learning paths are changing its perception. In this talk, we’ll present this new survey data, describe how new tools and techniques for teaching R can satisfy the demands of today’s R learners, and outline a vision for adding millions of new R users to our community.
VIEW MATERIALS https://github.com/rstudio/learning-r-survey/blob/master/slides/Next-Million-R-Users.pdf
David Robinson | The unreasonable effectiveness of public work | RStudio (2019)
In this talk, I’ll lay out the reasons that blogging, open source contribution, and other forms of public work are a critical part of a data science career. For beginners, a blog is a great accompaniment to data science coursework and tutorials, since it gives you experience applying practical data science skills to real problems. For data scientists at any stage of their careers, open source development offers practice in collaboration, documentation, and interface design that complement other kinds of software development. And for data scientists more advanced in their careers, writing a book is a great way to crystallize your expertise and ensure others can build on it. All of these practices build skills in communication and collaboration that form an essential component of data science work. Each also lets you build a public portfolio of your skills, get feedback from your peers, and network with the larger data science community.
VIEW MATERIALS https://bit.ly/drob-rstudio-2019
About the Author David Robinson David is the Chief Data Scientist at DataCamp, an education company for teaching data science through interactive online courses. His interests include statistics, data analysis, education, and programming in R. David is co-author with Julia Silge of the tidytext package and the O’Reilly book Text Mining with R. He also the author of the broom, gganimate, and fuzzyjoin packages, and of the e-book Introduction to Empirical Bayes. David previously worked as a data scientist at Stack Overflow, and received a PhD in Quantitative and Computational Biology from Princeton University

Earo Wang | Melt the clock Tidy time series analysis | RStudio (2019)
Time series can be frustrating to work with, particularly when processing raw data into model-ready data. This work presents two new packages that address a gap in existing methodology for time series analysis (raised in rstudio::conf 2018). The tsibble package supports organizing and manipulating modern time series, leveraging tidy data principles along with contextual semantics: index and key. The tsibble data structure seamlessly flows into forecasting routines. The fable package is a tidy renovation of the forecast package. It promotes transparent forecasting practices and concise model representations, to empower analysts tackling a broad domain of forecasting problems. This collection of packages form the tidyverts, which facilitates a fluent and fluid workflow for analyzing time series.
VIEW MATERIALS https://slides.earo.me/rstudioconf19
About the Author Earo Wang I’m currently doing my Ph.D. on statistical visualisation of temporal-context data at Monash University, supervised by Professor Di Cook and Professor Rob J Hyndman. I enjoy developing open-source tools with R, and is the (co)author of some widely-used R packages including anomalous, hts, sugrrants, rwalkr and tsibble. My research areas invovle data visualisation, time series analysis, and computational statistics
Yihui Xie | pagedown Creating beautiful PDFs with R Markdown and CSS | RStudio (2019)
The traditional way to beautiful PDFs is often through LaTeX or Word, but have you ever thought of printing a web page to PDF? Web technologies (HTML/CSS/JavaScript) are becoming more and more amazing. It is entirely possible to create high-quality PDFs through Google Chrome or Chromium now. Web pages are usually single-page documents, but they can be paginated thanks to the JavaScript library Paged.js, so that you can have elements like headers, footers, and page margins for the printing purpose. In this talk, we introduce a new R package, pagedown (https://github.com/rstudio/pagedown) , to create PDF documents based on R Markdown and Paged.js. Applications of pagedown includes, but not limited to, books, articles, posters, resumes, letters, and business cards. With the power of CSS and JavaScript, you can typeset your documents with amazing elegance (e.g., a single line of CSS, “tr:nth-child(even) { background: #eee; }”, will give you a striped table, and “border-radius: 50%;” gives you a circular element) and power (e.g., HTML Widgets).
VIEW MATERIALS https://bit.ly/pagedown
Claus Wilke | Visualizing uncertainty with hypothetical outcomes plots | RStudio (2019)
Uncertainty is a key component of statistical inference. However, uncertainty is not easy to convey effectively in data visualizations. For example, viewers have a tendency to interpret visualizations of the most likely outcome as the only possible one. Viewers may also misjudge the likelihood of different possible outcomes or the extent to which moderately rare outcomes may deviate from the expectation. One way in which we can help the viewer grasp the amount of uncertainty present in a dataset is by showing a variety of different possible modeling outcomes at once. For example, in a linear regression, we could plot a number of different regression lines with slopes and intercepts drawn from the range of likely values, as determined by the variation in the data. Such visualizations are called Hypothetical Outcomes Plots (HOPs). HOPs can be made in static form, showing the various hypothetical outcomes all at once, or preferably in an animated form, where the display cycles between the different hypothetical outcomes. With recent progress in ggplot2-based animation, via gganimate, as well as packages such as tidybayes that make it easy to generate hypothetical outcomes, we can easily produce animated HOPs in a few lines of R code. This presentation will cover the key concepts, packages, and techniques to generate such visualizations.
VIEW MATERIALS: https://docs.google.com/presentation/d/1zMuBSADaxdFnosOPWJNA10DaxGEheW6gDxqEPYAuado/edit?usp=sharing
Sigrid Keydana | Why TensorFlow eager execution matters | RStudio (2019)
In current deep learning with Keras and TensorFlow, when you’ve mastered the basics and are ready to dive into more involved applications (such as generative networks, sequence-to-sequence or attention mechanisms), you may find that surprisingly, the learning curve doesn’t get much flatter. This is largely due to restrictions imposed by TensorFlow’s traditional static graph paradigm. With TensorFlow Eager Execution, available since summer and announced to be the default mode in the upcoming major release, model architectures become more flexible, readable, composable, and last not least, debuggable. In this session, we’ll see how with Eager, we can code sophisticated architectures like Generative Adversarial Networks (GANs) and Variational Autoencoders (VAEs) in a straightforward way.
VIEW MATERIALS https://github.com/skeydan/rstudio_conf_2019_eager_execution
Lionel Henry | Working with names and expressions in your tidy eval code | RStudio (2019)
n practice there are two main flavors of tidy eval functions: functions that select columns, such as dplyr::select(), and functions that operate on columns, such as dplyr::mutate(). While sharing a common tidy eval foundation, these functions have distinct properties, good practices, and available tooling. In this talk, you’ll learn your way around selecting and doing tidy eval style.
Materials: https://speakerdeck.com/lionelhenry/selecting-and-doing-with-tidy-eval

Joe Cheng | Shiny in production: Principles, practices, and tools | RStudio (2019)
Shiny is a web framework for R, a language not traditionally known for web frameworks, to say the least. As such, Shiny has always faced questions about whether it can or should be used “in production”. In this talk we’ll explore what “production” even means, review some of the historical obstacles and objections to using Shiny for production purposes, and discuss practices and tools that can help your Shiny apps flourish.
About the Author: Joe Cheng is the Chief Technology Officer at RStudio. Joe was the original creator of Shiny, and leads the team responsible for Shiny and Shiny Server. GitHub: https://github.com/jcheng5
Materials: https://speakerdeck.com/jcheng5/shiny-in-production

Jeff Allen | RStudio Connect Past, present, and future | RStudio (2019)
RStudio Connect is a publishing platform that helps to operationalize the data science work you’re doing. We’ll review the current state of RStudio including its ability to host Shiny applications and Plumber APIs, schedule and render R Markdown documents, and manage access. Then we’ll unveil some exciting new features that we’ve been working on, and give you a sneak peek at what’s coming up next.
Materials: http://rstd.io/rsc170


