Interviewed Rust programmers to identify their productivity barriers, and developed a variety of interventions. Lead team initiative to improve the observability of asynchronous Rust applications.
Provided design, instructional, and infrastructure support to various courses in OOP, functional programming, language design, and model-finding.
Passionate about expanding and leveraging Rust’s language features to improve the safety and ergonomics of programming.
Co-lead the working group tasked with making bit-reinterpretation casts (e.g., union
, mem::transmute
) memory safe. Lead designer and author of the WG’s inaugural RFC-2981.
Implementor of RFC-2363, which permits fine-grained control over the memory layout of complex enum
types; useful for C-interop and zero-copy parsing of network packets.
Author and contributor to numerous Rust libraries and utilities. Lead maintainer of itertools, a popular (>133M downloads) library for ergonomic transformations and summarization of streams of data.
Contributor to Pyret, a programming language designed by computer science educators, for computer science education.
Developed Pyret’s unique hypertext error messages, which leverage hyperlinks, highlights and in-line code snippets to guide novice programmers towards deeply understanding their errors.
Developed Pyret’s language-level support for manipulating tabular data, used by the data science module of the Bootstrap curriculum, a research-based computer science curriculum for grades 6–12.
Developed a cloud-hosted IDE for Pyret that encourages students to write input–output examples before they begin programming, and conducted research to assess its impact.
Developed infrastructure for assessing the quality of students’ Pyret programs and test suites at massive scale on a distributed super-computing cluster, and developed an analysis to validate the robustness of these assessments.
Published a digital remix of Brown University’s authoritative dead-tree encyclopedia, which leveraged natural language processing to extract timelines and insert hyperlinks.
Currently developing a digital asset management system in Rust and Typescript to catalogue my archive of >5,000 photographs, oral histories and written accounts of Brown University alumni.