
Buying a Posit license is just the beginning. Data science teams need efficient deployment of Posit products to work without hassle.
Infrastructure as Code. Scalable Posit Deployment.
Here is the story of how the Appsilon team helped an international Tech company
with Infrastructure-as-Code deployment of Posit products and R Shiny development
Appsilon Value Added
Introduced Posit’s Package Manager
R Shiny Guidelines site for Shiny app development
Adjusting pkgdown on client’s internal GitHub infrastructure
R Shiny app development support
Technologies: Terraform, Ansible
Reusable deployment infrastructure of Posit Products
Client Objectives
Appsilon was tasked with building a scalable and reliable Posit infrastructure, including Package Manager, Connect, and Workbench. This aimed to streamline deployment and leverage internal products, allowing the customer to effortlessly deploy Posit products without the need for external assistance.
“Our goal was to help the client representative, who is a Posit evangelist. The client wanted to be able to offer Posit products to other teams within the company. This was not possible with out-of-the-box Posit solutions. Appsilon’s work was crucial to help customers succeed with Posit. We delivered Posit products as infrastructure as code.”
– Michal Parkola, Engineering Manager
What Appsilon Identified
While working with the client, we identified the need for R Shiny consulting and development.
Type of Work Delivered
Infrastructure
R Shiny Development
R Shiny Development
R Shiny Consulting
Scope of the Project Delivered
Reusable deployment infrastructure of Posit Workbench, Connect, and Package Manager (infrastructure as code)
R Shiny app development support including but not limited to dedicated theme for R Shiny applications, R Markdown reports and pkgdown websites, template for R Shiny projects, and performance improvements of existing dashboards
R Shiny Guidelines – a website with recommendations on how to develop Shiny applications; how to make fast apps and use existing infrastructure
Adjusting pkgdown to work on client’s internal GitHub infrastructure
Tracking active Posit Connect users; an automated job that counts active users on all Posit Connect instances that fall under the flex license used by the client
Adjusting pkgdown to work on client’s internal GitHub infrastructure
Annual Product Review
Showcasing how Posit products support their goal of building transparent, accessible, and performant data science products
Our scripts enable quick and effortless Posit product(s) installation in just minutes
Reusable templates make it easy to create R Shiny solutions for widespread internal adoption
We train and support data scientists in developing and deploying R Shiny applications
The amount of Posit product users increased
We simplify cross-team use of Posit products
Partnership Key Objectives
Posit Connect
2. Define deployment approaches based on the team(s)’ main use cases (e.g., number of users, dashboard size, etc.)
3. Define the number of Connect (RSC) instances (e.g., dev, prod, ETL, etc.)
4. Set performance and evaluation metrics for RSC instances and dashboards
5. Define the general requirements (software and hardware) for deploying RSC on EKS
6. Prepare database connections
7. Define the requirements drivers and dependencies
Posit Package Manager
Ensure CRAN repositories for RSC and RSW default to correct internal CRAN mirrors (including those with internal packages)
Posit Workbench
- Create a deployment strategy and architecture for setting Posit Workbench
- Define the requirements to deploy Workbench and the required resources (EKS or equivalent)
- Define container requirements for maximum reproducibility and portability
Posit Connect
Create comprehensive documentation to ensure the reproducibility of the installation and deployment process
Authentication
Efficient, scalable authentication using IDMS Group and admin control using Access Manager
UI customization
Define a customized template for R Shiny apps
Review from the Client
“We needed to have a way of building stable data products, but we didn’t have a team that specialized in infrastructure as code or Cloud deployments. We also wanted to be more efficient and reduce the amount of time between an idea and the deployment of a data product. Standing up the platform in itself is a challenge that no one on my team had the skills to do, so we decided to hire Appsilon to help us”
“The best thing about working with Appsilon is that they seem to have a very well-established set of processes when it comes to managing a product. This dovetails into the fact that they are really great at documenting, which is something that we specifically wanted from them for this engagement. We essentially asked them to document the project well enough so that we won’t need their services anymore in the future — and they’ve done exactly that. Overall, I’m very happy with the amazing work they’ve done so far.”