Site icon R-bloggers

X-Session Presentations: Enterprise Shiny Apps from Concept to Production

[This article was first published on r – Appsilon | End­ to­ End Data Science Solutions, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

RStudio Community X-Session

RStudio X-sessions are industry-organized, R-themed events with a professional focus. They are great places to explore content, learn new skills, or touch up existing ones. X-session presentations are open to the R community, and we encourage you to check out more from RStudio’s webinars here.

Join us Aug 10, 2021, as Appsilon, in collaboration with RStudio, presents “Enterprise Shiny Apps from Concept to Production.”

 Register here for the Aug 10, 2021 RStudio Community X-Session

This event will have a broad focus on Shiny app development ranging from improving enterprise-level Shiny app performance and scaling, UI/UX design, and best coding practices. The selected topics and presentations in the webinar provide Shiny devs of all experience levels with something of value. So whether you’re a Shiny beginner or an advanced developer, you can level up your skills. Join the webinar and catch a glimpse into how Appsilon, the global Shiny experts, handles Shiny app development. 

X-Session Presentations
[Aug. 10, 2021]

Take your Shiny developing skills to higher levels with Appsilon’s Shiny experts. If you’re looking to improve your enterprise dashboards and applications, don’t miss out on the presentations at the “Enterprise Shiny Apps from Concept to Production” X-session.

Shepherding Your Shiny App from Proof of Concept to Production

Marcin Dubel, Software Engineer, Grand Prize Winner 2021 Shiny Contest

Abstract
One of the advantages of Shiny applications is that a proof of concept can be created quickly and easily. It is a great way for subject matter experts to present their ideas to stakeholders before moving on to production. However, to take the next step to a production application requires help from experienced software developers. Actions should be focused on two areas: to provide a great experience for users and to make it maintainable for future work. Focusing on these will assure that the app will be scalable, performant, bug-free, extendable, and enjoyable. Close collaboration between engineers and experts paves the way to many successful projects in data science and is Appsilon’s tried-and-true path to production-ready solutions.

The very first step should always be to build a comfortable and (importantly) reproducible workflow, thus setting up the development environment and organizing the folder structure [renv + docker]. Once completed, engineers should limit the codebase by cleaning the code ( i.e., removing redundant comments, extracting the constants and inline styles [ymls + styler]). Now the fun begins. Extract the business logic into separate functions, modules, and classes [packages/R6 + plumber]. Restrict reactivity to a minimum. Check the logic [data.validator + drake]. Add tests [testthat + cypress/shinytest]. Organize your /www and move actions to the browser [shiny + css/js]. Finally, style the app [sass/bslib + shiny.fluent]. And, voila! A world-class Shiny app.

Play Marcin’s 2021 Shiny Contest Grand Prize Winning Game: Shark Attack!

Improve Your Code – Best Practices for Durable Code

Anna Skrzydło, Project Leader

Abstract:
Shiny applications often start as small projects and grow as they get noticed. This is when the problems usually begin, as it quickly turns out that implementing one small change takes two days, and adding a new requirement leads to rebuilding the whole application. Assuming, of course, that further development is done by the same team, any new developer joining the team first needs a one-month onboarding…

If that sounds familiar, join the session, to learn more about:

      1. modules (Shiny modules, wahani/modules, R6 classes)
      2. tests (unit tests, but also other types of tests)
      3. strategies (code structure, automation)

to make your code easier to develop and maintain. 

Each of the three topics will be divided into two parts so that everyone can find something useful:

      • Quick start – dedicated for those for whom the topic is completely new. It aims at giving you the basic concept so that you can begin using it immediately.
      • Further steps – dedicated for those who are already familiar with the concept and use it frequently. It aims at giving you advanced steps to get even more out of your coding practices.

Scaling/Infrastructure – Why is My Shiny App Slow?

Pedro Silva, R/Shiny Developer at Appsilon, Grand Prize Winner 2020 Shiny Contest

Abstract:
For a Data Scientist, Shiny can be an amazing tool when it comes to creating fast and powerful prototypes and dashboards. But what to do when your application becomes TOO popular and more and more people want to use it? 

As the number of users grows, keeping up with the demand of a Shiny application can be tricky, and there is only so much you can do to improve performance at the code level. 

In this presentation, I will be giving an overview of our approach to improving Shiny dashboard performance on an infrastructure level, as well as tips to scaling Shiny dashboards to hundreds of concurrent users while keeping your budget under control.

Play Pedro’s 2020 Shiny Contest Grand Prize Winning Game: Shiny Decisions

UI/UX in Shiny Apps and Live Coding Session (shiny.fluent and shiny.react)

Kamil Żyła, Full Stack Engineer at Appsilon

Abstract:
In this talk, we will present the functionality and ideas behind a new open-source package we have developed called shiny.fluent.

UI plays a huge role in the success of Shiny projects. shiny.fluent enables you to build Shiny apps in a novel way using Microsoft’s Fluent UI as the UI foundation. It gives your app a beautiful, professional look and a rich set of components while retaining the speed of development that Shiny is famous for.

Fluent UI is based on the Javascript library React, so it’s challenging to make it work with Shiny. We have put the parts responsible for making this possible into a separate package called shiny.react. This package enables you to port other React-based components and UI libraries so that they work in Shiny. 

During the talk, we will demonstrate how to use shiny.fluent to build your own Shiny apps and explain how we solved the main challenges in integrating React and Shiny.

Come to Learn, Stay to Chat

A panel-style Q&A will follow the last of the X-Session presentations. We encourage you to ask any questions you may have – but if you forget a question you can always reach out to us through our website.

RStudio’s community X-Sessions are structured with 60-minute open Spatial Chats at the beginning and closing of the event. Take this time to explore and connect with fellow Shiny developers in this unique virtual experience. It can be a challenge to navigate webinars for networking, but Spatial Chat makes it easy to catch up with colleagues from around the globe.

We can’t wait to see you there!

Let’s Build Something Beautiful Together

Appsilon provides innovative data analyticsmachine learning, and managed services solutions for Fortune 500 companies, NGOs, and non-profit organizations. We deliver the world’s most advanced R Shiny applications, with a unique ability to rapidly develop and scale enterprise Shiny dashboards. Our proprietary machine learning frameworks allow us to deliver Computer VisionNLP, and fraud detection prototypes in as little as one week.

Discover our growing list of open-source R Shiny packages at shiny.tools. If you find our open-source packages useful, please consider dropping a star on your favorites at our Github. It helps let us know we’re on the right track. And if you have any comments or suggestions, swing by our feedback threads like the discussion at our new shiny.fluent package or submit a pull request. We value the R community’s input.

Article X-Session Presentations: Enterprise Shiny Apps from Concept to Production comes from Appsilon | End­ to­ End Data Science Solutions.

To leave a comment for the author, please follow the link and comment on their blog: r – Appsilon | End­ to­ End Data Science Solutions.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.