Programming Projects


Below you'll find a curated selection of some of my personal programming projects. This list was compiled for prospective employers during 2019 and is not kept up to date.

Most of the projects are also written up here on my blog. You can find me also on Github.

For a summary of my CS and math research, click here.


Turing Machine Simulator

link to live project

Web app built with JavaScript, React

Simulates the operation of a Turing Machine. Displays state simulation that users can step through. Provides numerous examples users can toggle between, with explanations. Allows users to write their own machines using a custom domain-specific language. Deployed in an educational setting for teaching introduction to computability theory.


DLX Multiset Multicover package

link to project blog post

Python package implementing efficient combinatorial algorithms

Fast library for solving combinatorial problems using an implementation of Donald Knuth’s DLX algorithm. Includes module for classic Sudoku and “Chess Sudoku” variants, including optional adjacency constraints.

Was used to obtain the first calculation of the number of unique solutions to the “Miracle Sudoku” variant.


Weather Journal

link to project blog post

Native Android application written in Java

Native mobile application allowing users to keep a journal of local weather conditions. Interfaces with file system to export journal notes. Interfaces with Android location services for GPS location. Interfaces with third-party web API to fetch weather. Interfaces with SQLite database to store journal records on-device.


Pomoduino time-management clock

link to project blog post

A pomodoro clock for Arduino-compatible microcontrollers

This Pomodoro timer keeps track of your work sessions on an inexpensive liquid-crystal display with cute, custom tomato glyphs. Notifies users with a chime to take a short break after each work session, and a long break after each cycle of four Pomodoros.


ethmcc.github.io

link to live project

Portfolio website built with Python, Node.js, Pelican

This website! A responsive personal portfolio and academic CV website for presenting content related to programming and mathematics.

Built atop the Pelican static website framework. Additional integrations include Pygments code-syntax highlighting, LaTeX integration with MathJax, and a custom client-based search feature.

Hosts a portfolio of projects and technical writings related to programming, theoretical computer science, and mathematical logic.