some of my personal projects

Alchemy Book

A real-time collaborative text editor using Conflict-Free Replicated Data Types

[ Github page ]

Stressed Syllables

An Elixir/Phoenix web app that takes English text and tells you where the stressed syllables are. very useful for non-native speakers or for preparing presentations.

[ Github page ]

Undergrad & pre-undergrad projects

Fractal Photographer

The best fractal renderer on the Windows 10 store. This app is a highly fluid renderer, pleasant to navigate and provides beautiful color customization options.

[ Fractal Photographer website ]

Fractal Photographer 3D

An application that uses the Leap Motion Controller to navigate 3D fractals.

[ Project page ]

Procedural Terrain

Generate great looking complex terrain on the GPU. Project for graphics class.

[ GitHub page ]

Smart Resize

Created as part of the Nokia Future Capture hackathon in Sweden, this app won first place and was presented to journalists worldwide at Nokia World 2013, Abu Dhabi.

[ Project page ]

Perlin Noise Range

Script to find the largest value in Perlin Noise and in the gradient of Perlin Noise using automatic differentiation.

[ GitHub page ]

Influence Game and Multi Column Swiss Tournament

A personal research project from high school on neural networks, self-organizing systems and evolutionary algorithms where I examine the performance of a method of evaluating individual 'teams'.

[ Project page ]


In this project (written as part of UWaterloo's PMATH 370 course), I prove some properties of the Mandelbox and provide a real-time WebGL renderer.

[ Project page ]

Harmonics TD

A music-based tower defense game I made in high school as part of an indie game development contest, in which I won first prize. This is my oldest significant programming project.

[ Project page ]

RPG Level Design

Like many other programmers, I first got into computer science because I wanted to make games. More specifically, my entry point was a software called RPG Maker XP. I was particularly good at designing maps - it's harder than it looks! In RMXP lingo, that was called "mapping", and I did some independent contract work. This is really old stuff, 2005-2009.

[ Image gallery ]

Making apps for Windows 8 Part I and Part II : Tutorial I have written for people interested in getting started with Windows 8 apps.

A interview tips video I made for fun

My resume upon graduation for reference. Note that this is not going to be updated for the foreseable future and I am not seeking job opportunities at the moment.

A transformer model I made for the hierarchical modelling assignment of Graphics class.