Apps and coding
I created my own Swiss chess tournament manager with ReasonReact. It's free and open source for anyone to use, but especially designed for the needs of libraries and small clubs.
While I was developing Coronate I needed to solve the problem of how to correctly pair chess players. Researching this problem led me to discover the world of graph theory and “maximum weighted matching.” To make these concepts easier for other people to learn, I put together this interactive webpage.
These are a few iOS shortcut scripts that I've made.
This is an iOS dictionary "app" built with Pythonista. It saves the words you look up and your notes on them.
This page explains what technology I use to maintain this website, as well as how I solved a few problems along the way. It may be of interest to similarly-minded web developers.
In 2017, I redesigned a website for the local nonprofit Literacy Alliance using WordPress and SquareSpace.
(Currently defunct.) This is a custom WordPress theme I created from scratch. I don't update it anymore since I stopped using WordPress for this site.