Code Projects

This list includes basically every serious project I've ever started. Many of them only got that far, a few are complete (as they'll ever be), and some are in active development.


In Active Development

KeepTabs

A Chrome extension that enables you to quickly navigate between tabs with highly-customizable keyboard shortcuts. Initially born of TartanHacks 2017, we've fixed up the hacky code and added a lot of features to make this into a pretty useful app that I now can't use my browser without. There are a few more things we need to finish to make it customizable to any user, and then we're going to release it on the Chrome Web Store. If you want to try it out in the meantime, just clone the GitHub repo and load it as an unpacked extension.

Colortasker

A Chrome extension that adds color shading to your Google calendar weekly or custom view (try a 7-day custom view instead of weekly; it's life-changing) to help you instantly visualize how busy you are on each day, making time and task management fast and intuitive. It's specifically designed with my own calendar-based task scheduling system in mind, which involves creating all-day events with time estimates in their titles to schedule and keep track of tasks. Right now it works completely off the UI, essentially scraping your event data off of the page. This leaves some problems and limitations (not to mention the possibility of breaking at any time if Google Calendar changes the UI), so I plan to get it working off the Calendar API at some point.


Completed (or Close Enough)

418 Project: Parallel Game Tree Evaluation

For our final project in 15-418 (Parallel Computer Architecture and Programming; that's why we use the numbers at CMU), Nancy Xiao and I implemented, measured, and compared the performance of sequential and parallel algorithms for game tree evaluation using minimax, alpha-beta pruning, and principal variation splitting on a 12-core machine. Fun fact: this was the last assignment I submitted to complete my undergraduate education at CMU. I slept for 13 hours that night.

Bible Reference LaTeX Preprocessor

A Python script for inserting short Bible passages into a LaTeX document using a web API for the ESV.

Lettercrush

My first large JavaScript project written during the summer after my freshman year at CMU. It's a complete rewrite of my high school senior project, a Java application with an interactive GUI that allowed the user to enter Letterpress games and moves and calculated the best moves to make. When I last worked on it there were a number of UI bugs, but the AI logic itself is decently well-tested and it, like its predecessor, plays a mean game of Letterpress.

NLP Term Project

Our term project in 11-411 Natural Language Processing at CMU was to build a system to ask and answer intelligent questions based on Wikipedia articles. Somehow, my team won 3rd place (of 17) in the question asking component. The short video below explains what we implemented in our system, and the (very messy) code is hosted on GitHub.

Unlikeable

A Chrome extension that removes reaction-related UI elements from desktop Facebook. Initially hacked to get rid of excessive notifications from likes on photo albums, I added support for reaction counters and buttons as well and I've really come to enjoy the freedom of interacting online without their (I believe mostly negative) psychological effects.


Started...

Tailor

I think I was learning how to do OOP in Python at the time and had also recently taken NLP, so I came up with a project to practice both by generating song lyrics. I also went in very hard on TDD at the time... but I didn't get many actual features done. Nonetheless, it's runnable and I had some fun generating songs based off its namesake songwriter's work.