US Storms Since 1996

Drawing from the Storm Events database from the National Weather service, I set out to visualize a simple aspect of the data: how many storms in certain categories (involving flooding or high winds) happened in each county every month? For this, I utilized D3 and TopoJSON, as well as Webpack and Babel for development.

Read More

Procedural Nebulae

This article was originally written for the Serenity Forge blog in the summer of 2015. It details how the backgrounds of Luna’s Wandering Stars are rendered, and a bit about the development process.

The Quest Begins

One of the goals I had for the visuals of Luna’s Wandering Stars was a beautiful background. Starting out, the game prototype had backgrounds created by yours truly, one for each of the worlds in the game. They weren’t bad, but I saw room for improvement.

I yearned for a more dynamic background, something more varied than a static image. Space is vast, and there are many astounding structures that litter its expanse. To limit all you saw to a few stock images, no matter how beautiful, seemed to me a waste of an opportunity. One of the allures of space for myself, and many others I’m sure, is the possibility of discovery, and of seeing new sights. So I decided that a procedurally generated background would be the way to go. Even if the background was limited to a single category of imagery, at least it would be varied.

Read More

ERP Viewer

Diving into the world of Neuroscience and Autism at the Yale Child Studies Center, I created this web app to display Event Related Potentials, or ERPs. ERPs are a method of analyzing Electroencephalogram (EEG) data by averaging many examples of someone’s brain reacting to the same stimulus. EEG, in case you’re unfamiliar, is electric potentials recorded from the scalp, and one of the cheapest and easiest ways of seeing what a brain is up to.

Read More

Matrix Viewer

The Web Matrix viewer was made to display pre-calculated graphs of sparse matrices. Sparse matrices are simply big data tables that mostly consist of zeros. Based on work by Tim Davis and Yifan Hu at the University of Florida, I built a program to calculate a somewhat stable shape for a graph representation of sparse matrices. What you see here is the output, visualized in three dimensions.

Read More

Pixel Galaxy

Another game I helped create at Serenity Forge, Pixel Galaxy is a fast-paced arcade space shooter - of sorts. Controlling a solitary square, you must survive with your unique power: gathering enemies and making them your friends. By avoiding bullets and ramming enemies to “collect” them, you can build up your own ship and wield the very weapons that threatened you moments earlier.

Read More

Luna's Wandering Stars

A planetary physics puzzle game, Luna was my first big project after college, and my first commercial game. I set out to make a small little mobile game. Having just finished a class on computational physics my senior year, I was feeling inspired by the possibilities of physics-based gameplay. There were already a number of very fun and successful games for the mobile market based on physics, but none based on orbital mechanics. So, I began programming Luna.

Read More

Vintage: MiniRace

MiniRace was perhaps the only “completed” game I made in high school. An ancient relic from around 2005. Made in Adobe Flash, it is a multiplayer top-down racing game. Players compete on a single keyboard to got around the track a set number of times. Power-ups make the whole thing a bit more interesting, inspired by the great Mario Kart.

Read More

Vintage: SSBB

In the excitement following the initial reveal of Super Smash Bros. Brawl, I created a crude flash version of the game to showcase possible new characters. It is by no means as polished or fun as the real thing, but it does feature three characters with unique movesets. One actually was announced for the game, albeit with a very different moveset. The other two were fan favorites on the Nintendo NSider forums, where I spent a good amount of time.

Read More