Skip to content
working for rOpenSci
working for rOpenSci


  • Arctic Code Vault Contributor


@ropensci @ecohealthalliance @ropenscilabs @hypertidy @ATFutures @moveability @atfutures-labs
Block or Report

hi, i'm mark

I am a Research Software Scientist for rOpenSci, as part of which I develop open-source tools to automatically analyse and asssess software. These include

  • packgraph to examine and analyse function call graphs
  • pkgreport to serve a callable API which returns a formatted report on code structure and function, intended to serve as a template for software review
  • autotest to automatically test R packages by throwing inputs of various forms and structures at software functions.

Active Transport Futures

I am also a lead developer for Active Tranport Futures, an organisation dedicated to developing open-source software using open data to plan urban futures in which active transport plays an increasingly prominent role. See the pinned repositories below for some of that software.

What and how i code

Most of my code is bundled as R packages, with a lot of that written in C++ or C. I do everything in vim + tmux, via my dotfiles

Anything else?

I've got an intermittently updated blog, and make intermittent noises on twitter.


  1. Distances on Directed Graphs in R

    C++ 92 7

  2. R package for downloading OpenStreetMap data

    C++ 202 37

  3. Routing and analysis engine for GTFS (General Transit Feed Specification) data

    R 43 9

  4. 🚲 Extract data from public hire bicycle systems

    R 75 16

  5. all-contributions as an R package

    R 12 1

  6. R package to print maps, draw on them, and scan them back in

    R 55 4

Contribution activity

April 2021

Created 2 repositories

Created a pull request in tidyverse/magrittr that received 1 comment

rm tab character from debug_pipe.R

There was a presumably accidental tab character there. Why does it matter? I'm about to apply a pkgstats package to the entire historical CRAN arch…

+0 −1 1 comment
Reviewed 1 pull request in 1 repository
ropensci/roweb3 1 pull request

Created an issue in tidyverse/reprex that received 12 comments

reprex_render with new_session does not find input path

New reprex 2.0.0 does not work on my system. Here's a reprex running through v1: devtools::load_all ("/<local>/<path>/<to>/<reprex>", export_all = T…

Opened 9 other issues in 4 repositories
9 contributions in private repositories Apr 5 – Apr 14

Seeing something unexpected? Take a look at the GitHub profile guide.