Programming
Various programming escapades, in diverse media and significance.
My principle CS interests are functional programming and programing language design - however, it seems that the world thinks I’m a web developer and thus most of my time is spent working on web development projects. I have significant experience with Haskell and C, but also can competently work in Ruby, PHP, JavaScript, and Python, among other languages…
Projects
- Himpress, a slide-show generation tool I wrote for a series of talks on Haskell.
- s3sync
- gititin, a system for submitting computer science assignments using git - developed for Lakeside, but never used, given the difficulty of teaching novice programmers how to use git.
- A ncurses cellular automaton viewer, written around 3/2011.
- An unreleased android application for exploring twelve-tone serialism.
- Security audits of Lakeside School’s internal applications, which exposed a number of critical vulnerabilities.
Collaborative Works
- PadPaddle, with other developers from Intersect. Written for a 48-hour hackathon featuring node.js, PadPaddle was voted the 3rd most innovative application out of the 178 entries. I wrote the servers that handle gameplay, designed our overall architecture, and handled system administration.
- An Arduino implementation of an Ondes Martenot, with Lennart Jansson. The source code can be found here.
- I’ve been tangentially involved with the Teh Coffee project, helping with refactoring and bug-fixes.
- Raise the roof, with Tess Rinearson.
Miscellanea
- trivial-templates, a string templating library use for the previous version of this website.
- The exploration of several natural generalizations of the Sierpinski gasket. Source code, and a sample image.
- An attempt at building a pen plotter, documented at Intersect (1,2,3), which ran aground on the twin rocks of hardware failure and school work.