home
about
blog
contact
code portfolio language conlangs puzzles music composition analysis

Each project in my portfolio is labeled by programming language and how close to completed it is (I have a lot of unfinished side projects).

You can click on the icons to view larger images.

Android app with tuner, metronome, and piano (more info)
fractal flame generator I wrote for CodeDay Houston in winter of 2015 with a friend; won one of the four awards given out at the end of the event
online dashboard for Infuse Energy consolidating all internal company tools
records GIF screencasts of a window with keystrokes overlaid (successor of mkcast with 3,000+ stars on GitHub)
International Phonetic Alphabet entry tool; has a GTK implementation as well as a web client you can try in your browser (repo)
lightweight vim plugin that adds support for inserting snippets / templates into files
feature-rich chat server with multiple clients, fine-grained permissions, pinned and starred messages, etc.
terminal-based Hacker News client with full keyboard control
adjudicator for the Diplomacy board game, capable of generating SVG maps and supporting several variants
database for storing commentary on chess openings with variant support (currently only atomic)
userscript that embeds all Stack Exchange chatrooms into one page through popup widgets
very simple terminal stopwatch and countdown timer
i3 config file preprocessor to reduce repetition
tool for generating visual reference sheets for keyboard shortcuts
simple typing test that measures words per minute
fuzzy finder for the pass password manager
automatic X-SAMPA to IPA translation in vim
extremely simple (5-line) shell script to transform webDiplomacy games into animated GIFs
vim port of the glorious hot dog stand colorscheme from Windows 3.1
Telegram bot with a highly extensive set of commands
the program that generated my display picture (and the various themed versions)
userscript that adds vim-like keyboard shortcuts to Stack Exchange chat
app, userscript, and userstyle that provided a better user experience to my high school website (webpage)
esoteric programming language with a focus on obfuscation, containing 8 usable variables
somewhat minimalist esoteric programming language with 25 instructions
esoteric programming language where the source code is entirely capital letters
unreadable esoteric programming language that makes you allocate your own memory
Rust client to the Telegram API
script that generates a webpage containing a summary of all possible modes and key signatures (via Lilypond)
comprehensive nethack reference sheet, in a very compact form (click here to view)
paranoid fork of neovim geared towards editing private files by disabling swap, encrypting files, etc.
interactive unit-aware RPN calculator
a quiz to help improve mental hex/binary arithmetic and base conversion skills
vim plugin that adds generic text objects that match any delimiter