About a year ago, we rolled out a major overhaul to Secure Data Kit’s reporting system
. You can read the link for all the cool stuff we did but it included things like making data exportable, integrations with Tableau and Power BI, and providing a place where our clients could upload their own R scripts. If you’re not familiar with R, it’s a robust and vibrant statistical programming language popular in the healthcare community. It’s easy to spin up really awesome data visualizations, it’s open source, and it’s fast!
To make the R implementation as scalable as possible, we put it on its own server and wrapped it in an API. This allowed Secure Data Kit to execute R scripts without affecting core SDK performance.
Then it hit us — if we find value executing R via API, maybe others would too? After all, it’s popular and powerful but the most common way to run R scripts is on your desktop via something called R Studio. What if you wanted to embed it in your website? Or share results? ShinyApps provided about 50% of that functionality but lacked having total control over the environment. So we created Embedded R, an R API that allows others to use our infrastructure to execute an R script and pass the data back. Sometimes that data is simple — maybe a table or a CSV. Other times it’s complex like a PDF or word document.
One of our clients, a Very Large Healthcare Organization, just rolled out an implementation using the embedded R API. This is the perfect use case for it because they had some specific requirements:
- They wanted total control over the User Experience and they wanted it to be web based to make it accessible and centralized anywhere
- Ministries of health or implementing partners use Secure Data Kit (or some other data collection platform) to collect data about a particular disease -- this might be geographic or disease data (or both!)
- They wanted to cross reference that data against data in a MySQL database
- Lastly, they wanted to execute an R script that would analyze these joined datasets and return a really cool word doc w/ the results
Since we have total control over the environment we can do a lot of cool things with the resulting report. We can automatically run it every week, we can share the results via email to a subset of users, or we can embed it into a website.
Making our own software that we use internally available to clients has been super helpful to us. Interested in learning more? Reach out to us!