Introductory Section
  • Introduction to Reproducible Analytical Pipelines (RAP)
  • Identifying RAP battles in your organisation
  • RAP is Open Source + ACTIVITY
  • Open Source Trivia
  • Evaluating RAP + ACTIVITY
  • RAP business benefit
  • Finding a RAP buddy + ACTIVITY
  • Finding a buddy to collaborate with
Choose your RAP battles wisely
  • Identifying good RAP problems + ACTIVITY
  • Choosing a wise RAP battle
  • Establish your minimal tidy data set + ACTIVITY
  • Establishing your minimal tidy data set
  • Our RAP battle demo + ACTIVITY
Setting up your package
  • Enshrining business knowledge in a package
  • What’s in a name? + ACTIVITY
  • Naming your package
  • Initialising Your Package Repository on Github
  • git and Github for beginners
  • Create a basic package + ACTIVITY
  • Creating your RAP package
  • Typical git workflow + ACTIVITY
  • Typical git workflow
  • Using Github to assign issues+ ACTIVITY
  • Creating issues on Github
  • Preventing the publication of sensitive information
  • Raw or tidy data? + ACTIVITY
  • Convert raw data to tidy data
  • Create data object or bespoke class + ACTIVITY
  • Create data class
  • Setting up your package plenary
Create a function with documentation
  • Standing on the shoulders of giants
  • Describe the problem and create an issue.
  • Create a Github issue for the problem
  • Write the function.
  • Write the function specified in the last assignment
  • Write the documentation.
  • Write the associated documentation for the function
  • Quality assurance through defensive programming
  • The art of creating a user friendly package
Unit testing
  • Why bother with unit testing?
  • Testing workflow
  • Test driven development
  • Testing figures
  • The unit testing workflow with the testthat package
  • Unit testing plenary
Automated Testing and Continuous Integration with Travis
  • What is automated testing?
  • Using automated checking on my package
  • Add Quality Assurance badges to your package using Travis
  • Set up Travis Continuous Integration for your package
  • Add code coverage and branch protection for extra quality assurance
Keeping cool in dependency hell
  • What is dependency hell?
  • Running packrat for the first time
  • Managing your package's packages
  • Packrat plenary
Ensuring quality inputs to your RAP
  • Error logging plenary, get the balance right
  • Messages, warnings and errors
Producing the report
  • Creating a vignette for typical business use + ACTIVITY
  • Customising style
  • Create your data product
  • Ensuring a reproducible computing environment for your data product with Docker
  • Use a Docker container to knit your data product
Mic drop
  • Was it all worth it?
  • RAP about it
  • Scaling RAP across your organisation
  • Closing remarks and acknowledgements.
  • Versioning and watermarking your report