I’ve written a few small open source projects using Python, Haskell, OCaml, JavaScript, and POSIX compatible shellscript. A lot of my programming work is in private repositories belonging to large companies. I work on public personal projects occasionally and some of my projects I wrote during my early education in programming are also public.

Scroll down to see a list of notable public projects.


Some of my earlier projects have graphics and include Tetris for Two and the animated periodic table. Try them out in your browser!

Learning new programming languages

I like to open source some of the projects I use to learn new programming languages, including Rust: pipemath, rust_api, and rust-ls.

I enjoy learning about parsers. I wrote a parser and interpreter for part of the Lox learning language in OCaml: clox.

Earlier Rust projects include PhotoFest, and the first commits of rust-ls. I learned Haskell many years ago by writing several of my earliest GitHub projects: earlyhaskell,

Utilities and Productivity

Some of my projects are meant to improve my productivity on Linux/MacOS, such as confs, which I can use to quickly setup my development environment on a new Linux/MacOS machine, and my shellscripts (including gp, makeanywhere and parallely), which include a script that I use to speed up running tests and code checks. i3empty is used to quickly open a new workspace on my keyboard-based window manager: i3.

I also have some scripts I used to write documents for school using Pandoc and LaTex: pandoc.