See my Github profile for most of my public software projects.
Rustracer (2023): 3D rendering in Rust
Borrow Newt (2023): Model of Rust borrow checking rules
TCP/IP (2022): TCP over IP over UDP
Stew 3000 (2021): An 8-bit breadboard computer
Teaching Compiler (2021): A project for teaching the basics of compilers
Pyret Moss (2020): Plagiarism-detection with document fingerprinting, arrr
Regular Expressions (2020): NFA-based regular expressions engine
Low Poly Images (2019-20): Approximating images with triangular meshes
The Rose (2018-19): A live, interactive flower animation
Harmoniser (2018-19): Splitting a live vocal track into pitches controlled by a MIDI device
Harmonic Interpreter (2018): Interpreting jazz chords live through a MIDI device
Live MIDI Visualizer (2018): Visualizing live MIDI input with shapes/colors
Character Recognition (2018): Building a neural net to identify MNIST digits
StabOverflow (2018): Helping students ask questions with a Q&A platform
Markov Chain applied to melody composition (2017): Making melodies based on live MIDI training data
Here’s a collection of computer art / visualizations I’ve created over the years. Some are related to problems/algorithms, others are just neat graphics.
Sometimes I post music on my SoundCloud account.
These essays are about music/jazz, and I wrote them for a course I took in 2019 entitled Hearing as Jazz Musicians Hear.
This paper about snowflakes generalizes the well-known Koch snowflake.
Also, check out this interactive demo of these flakes.
This research paper explores bebop and its social, racial, and economic factors.