⇧ Home

Projects

Projects where I was the primary author are indicated, but the most successful projects have gone well beyond what I could have done alone.

OpenDP

Improved the testing, documentation, and usability of OpenDP, a software library that can help protect the privacy of individuals in aggregate statistics. Reviewed PRs from the library architect and contributed to the Python and R APIs. Restructured the documentation to address the needs of diverse audiences, and added tooling to ensure the documentation's internal consistency and completeness.

On github: my commits. python, rust.

DP Wizard

Primary author and designer of DP Wizard, a tool that makes it easier to get started with differential privacy. You can run DP Wizard locally and upload your own CSV, or use the cloud deployment and only provide column names to protect your private data. In either case, you'll be prompted to describe your privacy budget and the analysis you need. With that information, DP Wizard provides a Jupyter notebook which demonstrates how to use the OpenDP Library, a plain Python script, and text and CSV reports.

On github: my commits. python, shiny, opendp.

dp-wizard-templates

Primary author DP Wizard Templates, a package which lets you use syntactically valid Python code as a template. Templates can be filled and composed to generate entire notebooks.

On github: my commits. python, notebooks.

polars-to-ibis

Primary author of polars-to-ibis, a python package which allows queries to be constructed in Polars and then executed on arbitrary backends using Ibis.

On github: my commits. python, polars, ibis.

DP Deployments Registry Data

Primary author of validation tools for the Differential Privacy Deployments Registry.

On github: my commits. python, jsonschema.

HuBMAP Portal

I guided the work of two junior developers and a designer to align with the high-level goals set by our PI, and I worked with outside teams to define the APIs that support our frontend.

On github: my commits. python, flask, react, docker, elasticsearch.

HuBMAP Ingest Validation Tools

Primary author of data submission guidelines, and tools to check that submissions adhere to those guidelines. Listened to data curators, pipeline authors, and lab scientists, and delivered scripts and a schema language that is used to validate submissions and generate documentation.

On github: my commits. python, tableschema.

tableschema-to-template

Primary author of tableschema-to-template, which generates Excel data entry templates from Tableschema definitions. A small reusable module factored out of the larger ingest-validation-tools.

On github: my commits. python, tableschema.

Vitessce

“Visual Integration Tool for Exploration of Spatial Single-Cell Experiments”. Initial author of a Javascript library for declaratively specified, linked, interactive visualizations, repurposing the deck.gl geospatial library for microscopy and single-cell analysis.

On github: my commits. javascript, deck.gl.

heatmap-scatter-dash

Primary author of a simple heatmap + scatterplot application using Plotly Dash.

On github: my commits. python, docker, dash.

django-docker-engine

Primary author of Docker engine wrapper + proxy server for containerized visualizations in Django. Generic visualization launch architecture, for which heatmap-scatter-dash was a demonstration client.

On github: my commits. python, django, docker.

American Archive of Public Broadcasting

One of two web developers on a collaboration between the Library of Congress and WGBH Boston.

On github: my commits. ruby, rails, solr, blacklight.

CMLess

Primary author of Rails gem to manage a site’s static content as markdown on github. Proposed and got buy-in for the idea that rather than maintaining a separate CMS, static pages on the American Archive of Public Broadcasting could be based on markdown in the repo, with frequent redeployments.

On github: my commits. ruby, gem.

FP-DataEntry

Primary author of server + browser bookmarklet for copy cataloging in natural history collections. The Filtered Push project had proposed a distributed network for data-sharing across natural history collections. When that failed to engage with users, proposed and implemented a small tool to support interactive screen scraping and data alignment.

On github: my commits. java.

concertina_helper

(Personal project) Python script and supporting API to find fingerings on bisonoric concertinas

On github: my commits. python, A*, concertina.

walkle

(Personal project) Like wordle, but for walks.

On github: my commits. javascript, vue.

spiro-font

(Personal project) Font construction in the browser

On github: my commits. javascript, vue.

dagsheet

(Personal project) A toy graphical functional programming environment

On github: my commits. javascript.

yajt

(Personal project) Video processing and sound generation in the browser

On github: my commits. javascript.