Hi, I'm Josiah 👋🏼

I'm glad you're here! My name is Josiah and I believe R belongs in production.

My name is pronounced "joe-sigh-uh".
  • I'm building ricochet.rs an enterprise deployment platform for R, Julia, and Python
  • Build and maintain the R-ArcGIS Bridge at Esri
  • Help maintain extendr which lets you write R packages using Rust—think PyO3 for R.

If your organization needs to deploy R, Julia, or Python (apps, APIs, scheduled tasks, or persistent services) at scale, or you want to talk about integrating Rust with R, get in touch: josiah at ricochet.rs.

Recent Posts

GPL is holding R back
February 23, 2026
Over the course of the 4 years and then some years I’ve worked at Esri, I have been championing the support and integration of R here. I’d like to think I’ve had some success doing so. However, one thing keeps coming up—the GPL license. R & ArcGIS Pro Our package {arcgisbinding} links to ArcGIS …
r gpl
Graph Neural Nets for Spatial Data Science
November 16, 2025
I’ve been saying this for years and I’ll say it again: Spatial data is just a graph I’ve been diving deep into Graph Neural Networks (GNN) to understand how we can use them for “GeoAI” and spatial machine learning. This post is going to build the intuition for why Graph Neural Networks are perfect…
spatial r deep-learning gnn
Broadcasting: Scalars or vectors
August 18, 2025
There’s a common pattern that we encounter when writing functions for R. A single argument can often either be a scalar or a vector of the same length as another argument When it’s a scalar, it makes sense to “broadcast” it to the same length of another argument. Since R is vectorized we often wan…
r rlang
Apache Arrow, Rust, and cross-langauge data science
June 04, 2025
TL;DR Apache Arrow standardized memory layout so that memory can be used in any language without (de)serialization. Rust is a great candidate for building core algorithm / tool implementations as it has robust foreign function interface (FFI) tooling and bindings tools like extendr, PyO3, and jlrs.…
rust r python extendr arrow
https with `{plumber}` using Caddy
May 12, 2025
Say you have a plumber API and you need to serve it over https. You can do this by spinning up a Docker container in something like DigitalOcean, Render, Heroku, or AWS ECS. If you have you own server, you may want to use that instead. The most common way to do this is by using a reverse proxy. Cadd…
r prod plumber