Good Software Engineering Practice for R Packages

Welcome to the homepage of the workshop “Good Software Engineering Practice for R Packages”. In this course participants will learn hands-on skills and tools to engineer reliable R packages used in biostatistics. The workshop will be conducted in two afternoons and will be a mix of presentations and exercises. Participants need to be comfortable with writing functions in R and use their own laptops as a prerequisite.

Event Details

The event will be held on Monday 16th and Tuesday 17th October 2023 as an in-person workshop at McGill University, Montreal, Canada. Please register here by September 15th 2023.

This event is organized by the McGill Initiative in Computational Medicine and openstatsware. We are grateful to have received logistic support by McGill University, in particular Adrien Osakwe and Larisa Morales Soto. The presenters in this workshop will be Doug Kelkhoff, Philippe Boileau and Daniel Sabanes Bove.

Communication

We offer a gitter chat channel to communicate before, during, and after the course.

Workshop Program

Day 1: 16th October

13:00 - 13:30 Introduction and outline
13:30 - 14:30 R Package Syntax
14:30 - 15:00 Break
15:00 - 16:00 Software Engineering Workflow
16:00 - 16:55 Package Quality

Day 2: 17th October

13:00 - 14:00 Collaboration via GitHub
14:00 - 14:45 Publication of R Packages
14:45 - 15:15 Break
15:15 - 16:15 Shiny Development
16:15 - 16:30 Summary

Prerequisites & Technical Setup

Prior to the course, participants should

  • set up a (free) GitHub.com account. There are other git Platforms like Gitlab or Bitbucket but we made the choice to go with GitHub.com for the course since it is by far the most relevant git platform in the R community.
  • download and extract simulatr.zip
  • either make sure they have a working R software development setup on their own laptop (up-to-date git/Rtools/R/RStudio) or get access to https://posit.cloud. The latter offers a free tier account with 25 hours of computing time per months and can be accessed using ones GitHub.com account.

For the course, participants are required to use their own laptop to be able to participate in the exercises.

Optional reading list

Past Events