Purpose

This page serves as a deployment space for easy access to some of my personal programming projects and tool ports. If you're in search of my github details, go here.

Personal Programming Projects


Data Science

Titanic Survivor Analysis
This project is directly inspired by the ongoing Titanic competition at Kaggle.com. It was my first dive into both R as well as classification ML, resulting in approximately 79% accuracy for predicting which people would live and die on the Titanic, resulting in a placement in the top 10% of current participants (~17,000). Keep in mind this project, which was used for learning, apparently has the "answers" out there somewhere so the leaderboards for this competition aren't particularly meaningful. This was a great learning experience nevertheless.

Mathematics

AsciiMath Tool
This tool makes it possible to cleanly produce LaTex-like math formulas by leveraging two JavaScript libraries: AsciiMath, and MathJax. This project includes several core features I wrote on top of the base libraries, including my own responsive version of the asciiMath demo site, added support for multi-line output, a dark zen editor mode, ability to comment out lines of formula, animation simulation on a per-line basis, as well as the ability to directly share links to your rendered math formulas.

Math Formulas Explained
This project is on-going and highlights in my own words (although I may reference diagrams where helpful), in-depth analysis of math formulas, often times specific to data-science (primarily of the statistical nature). The goal here is to breakdown and truly understand common math formulas. So in the case of statistics, examples might include RMSE and Adjusted R-Squared for example.

Linguistics

Kanji Voyager
This tool has been a passion project that I had contemplated for quite some time. Lovingly handcrafted after countless hours of manual labor, with the sole purpose of helping Japanese language learners. The goal was to be able to visually identify any of the 2,136 常用漢字 (jouyou kanji), particularly in books, even when you don't know how to write nor pronounce them.

Kanji Radical Explorer
This is a simplified comprehensive representation of all classic Kanji radicals, based on KanjiAlive's open sourced data. Of special note here is the content within this table uses a custom font specifically built to natively render kanji sub-components that don't necessarily get first-class treatment as standard radicals (but are in fact variants of standard radicals).

Kana Handwriting
Showcases how handwritten kana characters should look.

Tech

Network Visualizer
This is custom-built network graphing tool based on the vis.js vis-network library which offers the ability to draw graphs using the DOT language. I wrote a ton of customization on top, including the following new functionality: fullscreen mode, fit-to-center, canvas scaling for high-quality large-scale (bigger than browser) image saving with white backing, case-insensitive multi-node searching based on substring, and support for custom DOT network loading. I have also built and pre-loaded this tool with a (nearly) complete network graph for the amazing book and tv series: The Last Kingdom.

Tool Ports


Linguistics

Kanji Reverse Lookup
This is a straight tool port of a highly useful search tool for reverse-looking up Kanji by their containing parts (radicals in the case of Wanikani, primitives in the case of Remembering the Kanji by James Heisig).

Genki Study Resources
This is a straight tool port of a study tool for the Genki book series.

Tobira Study Resources
This is a straight tool port of a study tool for the Tobira book series.

Tech

Sequence Diagram Editor
This is a straight tool port, brought over with the sole intention of preserving a working copy, as it's a very helpful diagramming tool for design work that I use all the time.

Steganography
This is a straight tool port of an old JavaScript-based image steganography tool. It not only hides data randomly across the image, but applies encryption before doing so.

Graph Toy
This is a straight tool port with minor modifications for the purposes of visualizing graph plots for GLSL shader programming.

Pdf.js Viewer
This is a straight tool port (with one feature I created for inverting colors) that I use for viewing PDF files in the browser so that I can leverage browser extensions in combination with PDF files.