Chris Holmes

Senior Data Scientist

Openreach (British Telecom)

About me

I am a senior data scientist specialising in Network Analytics at Openreach Ltd - connecting nearly all homes and businesses in the UK to the national broadband and telephone network.

My professional interests lie in creative problem solving through reproducible and auditable programming, with a major focus on deciphering large and complex data structures to reveal the insight hidden within.

I am an avid user of the R programming language and find it to be an incredibly powerful tool for all aspects of data analytics, from wrangling and visualisation, to statisitcal analysis, predicitve modelling and machine learning. To date, I have developed several personal projects and R packages that examine creative ways of displaying and interpreting information such that it may be understood as simply as possible.

The primary purpose of this blog is to create a single point of reference for my own coding projects, thoughts and ideas. It also serves as a good opportunity to learn a little about static websites and the R blogdown package!

Please feel free to get in touch through the contact link in the top bar or by leaving a comment on any individual post page. I will do my best to respond as quickly as possible.


  • All things R
  • Data visualisation
  • Statistics / Machine Learning
  • SQL / Hadoop


  • PhD in Physics, 2012

    University of Exeter

  • MPhys Physics, 2007

    University of Exeter

Recent Posts

Star Trek text exploration

Rudimentary analysis of the text contained in Star Trek TV series scripts

Creating wordclouds in R

An overview of how I wasted my time making wordclouds in R!

Spiral sound waves

Creating artisitc visualisations of sound waves on a spiral


A do-it-yourself k-means algorithm that clusters in two dimensions. Individual iterations can be extracted for visualisation and explanation.

Radiohead colour palettes

Creating unsupervised(ish) colour palettes in R from Radiohead album cover artwork - code and explanation of my thought process

Character glyphs in R

My journey towards gaining control over character glyphs and their outline coordinates in R

Google location data visualisation

Visualising our location data whilst on Honeymoon in the “upside down” (New Zealand). Making use of ggmap and the tidyverse.

A programmatic way of producing nematic liquid crystal alignment diagrams in R

Creation of nematic LC schematic alignment diagrams using my lcdiagrammer package

The rolling shutter and the propeller

Coding a simulation of the rolling shutter camera effect on an aeroplane propeller in R

R miscellany

Bits and bobs of R code - useful snippets for reference


Please get in touch via this form or by leaving a comment at the bottom of any indivdual post page. I will do my best to respond promptly!