Coding Projects


a still of an animated eye


I found myself wondering, What if instead of square pixels, we used the overlapping circles of the Flower of Life pattern? So I tried it. And it’s mesmerizing.


Neologizer analyzes the structure of words in a given text and uses what it learns to make up new words. You may find a practical use for such neologizing (filler text, brand naming, etc.), but mostly it’s just fun.

Cipher Lesson

This is a simple, introductory programming lesson I designed for use with my daughter, who was about eight at the time. Each line is commented with a number corresponding to the steps outlined in the opening comment.

Key Painter

This is a fun little app I put together for Khan Academy that lets you paint with your mouse while selecting colors with your keyboard. Colors can be blended and adjusted in real time.

Phonological Features as Overlapping Elements

This is my contribution to Khan Academy’s linguistics section. Several methods of phonological analysis are illustrated in parallel, including my own system, which I developed while working on my master’s thesis.


My Dwitter feed hosts a variety of trippy canvas-based JavaScript animations, all 140 characters or less! (Don’t look here for good coding style though. It’s all about keeping under that character limit.)



This Practically Organic Language Learning Instrument is a command-line language acquisition simulator. The more input it receives, the better conversation it makes.