The (Delayed) 2019 Training Review

Don’t we all miss 2019 (blame Covid for the long delay in this post). The days of going to work and seeing your work colleagues face to face - and for some of you, attending one of our on-site training courses! 2019 was a great year for us. Not only have we broken new boundaries, we have recruited new full-time staff which have furthermore contributed to the glowing success of the company.

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.

Counting Arguments in the Tidyverse

Before we start anything, I’d like to mention that most of the hard work came from nsaunders and his great blog post Idle thoughts lead to R internals: how to count function arguments. Let’s get started. The aim of this blog is to capture the number of arguments present in each function with packages of the {tidyverse}. First we need to load the necessary packages library("tidyverse") library("tidytext") Now we need to grab the relevant {tidyverse} packages

We're RStudio Trainers!

We’re RStudio Trainers! Big news. RStudio recently started certifying trainers in three areas: the tidyverse, Shiny and teaching. To be certified to teach a topic you have to pass the exam for that topic and the teaching exam. Even bigger news. Four of your lovely Jumping Rivers trainers are now certified to teach at least one topic! Check out the RStudio certified trainers page to see me (Theo Roe), Rhian Davies, Colin Gillespie and Roman Popat in action!

Timing hash functions with the bench package

This blog post has two goals Investigate the {bench} package for timing R functions Consequently explore the different algorithms in the {digest} package using {bench} What is {digest}? The {digest} package provides a hash function to summarise R objects. Standard hashes are available, such as md5, crc32, sha-1, and sha-256. The key function in the package is digest() that applies a cryptographical hash function to arbitrary R objects. By default, the objects are internally serialized using md5.

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.

R from the turn of the century

Last week I spent some time reminiscing about my PhD and looking through some old R code. This trip down memory lane led to some of my old R scripts that amazingly still run. My R scripts were fairly simple and just created a few graphs. However now that I’ve been programming in R for a while, with hindsight (and also things have changed), my original R code could be improved.

Animating the Premier League using {gganimate}

Ever wonder what an evolving gif of each premier league team’s goal difference vs points would look like made in R? Look no further! Most of this is going to be setting up the data (as always) instead of actually plotting the data. To get the data into shape, we’re going to be using the {tidyverse} and {lubridate}, which you can install the usual way via install.packages(). To animate the data we’ll be using the {gganimate} package.

R Courses in Hamburg

Big news, from the 13th till the 27th June Jumping Rivers will be running 6 courses on R in Hamburg!!. It should be noted that each course runs for one day, apart from the Predictive Analytics course, which runs for 2 days. The courses are as follows: Introduction to R - 13th For this course, you need no prior programming knowledge of any type! You will learn how to efficiently manipulate, plot, import and export data using R.

eRum Competition Winners

The Main Competition The Secondary Competition What next? The results of the eRum competition are in! Before we announce the winners we would like to thank everyone who entered. It has been a pleasure to look at all of the ideas on show. The Main Competition The winner of the main competition is Lukasz Janiszewski. Lukasz provided a fantastic visualisation of the locations of each R user/ladies group and all R conferences.