
I saw a fun video on YouTube recently in which some runners attempted to do two parkruns in one day. I don’t mean run the same parkrun course twice, I mean they ran one parkrun at one course and then drove to a different course and ran that one too.

I saw a fun video on YouTube recently in which some runners attempted to do two parkruns in one day. I don’t mean run the same parkrun course twice, I mean they ran one parkrun at one course and then drove to a different course and ran that one too.
It’s 2026 and so it’s time for another edition of “the papers I selected for a module that I teach”. Previous selections are here (2025, 2024, 2023, 2022). The list serves as a snapshot of interesting papers published in the previous 12 months or so. I hope it’s useful to others who are looking for lists […]

In my previous post, I shared my annual running stats which were generated in R using summary data from Garmin Connect. The code I use to generate these summaries was beginning to get a bit unwieldy, so I have now rebased it into a package.

In this post I’ll use R to recap my running data from 2025. Previous round-ups are here (2021, 2022, 2023, not sure why I didn’t post one for 2024…). I had a goal of running a total distance of 3650 km in 2025.

I’m a music fan who is anti-streaming and instead I stubbornly maintain a large music collection. At this time of year, streamers receive a round-up of their year’s listening in a “wrapped” report.

Running a marathon is a big deal. It takes a lot of time to train to run a good time, and it takes a while to recover. So, if you’re chasing a marathon PB (personal best) time, you need to choose which Marathon to target wisely. How can we use data to help our decision?

I’ve dabbled a bit with napari – the python-based image viewer – but never needed to use it seriously. I had a real use case so I thought I’d write up the process of how I got going with napari, in case it helps others.

Here we go again! I ran the Mainova Frankfurt Marathon 2025 and wanted to look at the race results. How can we do this using R? I couldn’t see an easy way to download the data, so I used R to scrape them.

An idea for a masters-level class or journal club alternative: “Where are they now?” but for big splash papers published in the 2000s. Take a few papers published around 20 years ago, then follow what happened subsequently.

It’s plot recreation time! In this post, we’ll look at how we can recreate a plot in R. I thought it might be useful to provide the solution but also to detail the process I went through to get there.

If you are into running, chances are that you will be chasing your PB (personal best) times. This post is about using R to search for your PBs, and to monitor them over time. Usually runners target four distances for PBs: 5 km, 10 km, half marathon and full marathon.