Speeding up your Continuous Integration Builds

Continuous integration is an amazing tool when developing R packages. We push a change to the server, and a process is spawned that checks we haven’t done something silly. It protects us from ourselves! However this process can become slow, as typically the CI process starts with a blank virtual machine (VM). If you are using R, then the current most popular CI pipeline is Travis CI, but there’s also Jenkins, GitHub Actions, GitLab CI, Circle CI and a few others.

Faster R package installation

Faster package installation Every few weeks or so, a tweet pops up asking about how to speed up package installation in R Depending on the luck of twitter, the author may get a few suggestions. The bigger picture is that package installation time is starting to become more of an issue for a number of reasons. For example, packages are getting larger and more complex (tidyverse and friends), so installation just takes longer.

R as a tool for Systems Administration

When talking about languages to use in Production in data science, R is usually not part of the conversation and if it is, it’s referenced as a secondary language. One of the main reasons this occurs is because R it’s commonly associated with being more suitable for statistical analysis and languages like Python and JavaScript, more suitable for doing other tasks such as creating web applications or implementing machine learning models.

Customising your Rprofile

What is an Rprofile Every time R starts, it runs through a couple of R scripts. One of these scripts is the .Rprofile. This allows users to customise their particular set-up. However, some care has to be taken, as if this script is broken, this can cause R to break. If this happens, just delete the script! Full details of how the .Rprofile works can be found in my book with Robin on Efficient R programming.

What R version do you really need for a package?

At Jumping Rivers we run a lot of R courses. Some of our most popular courses revolve around the tidyverse, in particular, our Introduction to the tidyverse and our more advanced mastering course. We even trained over 200 data scientists NHS - see our case study for more details. As you can imagine, when giving an on-site course, a reasonable question is what version of R is required for the course.

Speeding up package installation

Can’t be bothered reading, tell me now A simple one line tweak can significantly speed up package installation and updates. The wonder of CRAN One of the best features of R is CRAN. When a package is submitted to CRAN, not only is it checked under three versions of R R-past, R-release and R-devel but also three different operating systems Windows, Linux and Mac (with multiple flavours of each) CRAN also checks that the updated package doesn’t break existing packages.