Code

I’m a long-time user of the R programming language and delight in writing it to run very, very fast (I promise this isn’t a contradiction in terms). Consequently, I also write a lot of C++. All of my code lives on GitHub; open source highlights include:

  • urltools, the standard R package for URL decoding, encoding, value extraction and manipulation. urltools arose out of my frustration with the speed and reliability of base R’s URL functions, and is based almost entirely on C++ with an R wrapper, allowing it to both conveniently slot into R programmers’ workflows and clock in at between 60 and 700 times faster than pre-existing Python and R functionality.

  • rgeolocate, an integration with the MaxMind C API and various online sources of IP geolocation data, rgeolocate was created in collaboration with Drew Schmidt and features contributions from David Robinson. It provides fast and platform-independent IP geolocation from within the R programming language, allowing you to retrieve everything from an IP’s country of origin to its timezone.

  • reconstructr, which provides speedy session reconstruction algorithms in a tidy format.

I also have substantial experience working in Java and Python, and am beginning to explore the Rust ecosystem.