A select portfolio

For a complete list of skills, please see my about page.


  • Internal Content Management System
  • Skills: Dart, Java (Google Web Toolkit), HTML/CSS

Disclaimer: Lack of pictures and sometimes vague descriptions due to proprietary restrictions.


  • Image Product Showcase
  • Skills: Qt/C++
  • A standalone application for showcasing new program capabilities to high-profile audiences including executives, existing customers, and potential future customers.
  • Image Product Generation Tool
  • Skills: Qt/C++
  • Facilitates the running of complex image generation scripts with multiple co-dependent parameters.
  • Dynamic Web Form
  • Skills: Python CGI, HTML/CSS
  • Dynamic web form for generating custom XML.
  • GIMP Plugins
  • Skills: GIMP, Python
  • Custom plugins for GIMP to support user studies.
visual basic
  • Custom versions of deployed software
  • Skills: VB.NET/VB6
  • Modified versions of legacy VB6 and current VB.NET software to support multiple user studies.

Data Visualization

  • Complex System Data Visualization
  • Skills: JavaFX/Java, Javascript (D3), SVG
  • Interactive data visualizations for monitoring state of health of a complex system.

UI Prototyping

  • Interactive UI Mockups
  • Skills: Axure RP
  • High-fidelity, interactive mockups demonstrating proposed features in the next major release of several systems.
stanford logo

Data Visualization

media browser
  • Exploratory Media Browsing
  • Skills: Adobe Flex/Actionscript
  • Class: CS448b Data Visualization (Fall 2010)
  • An interactive data visualization for exploratory browsing of Flickr photos.
  • Interact with the live demo
  • Read the paper
olympic map
  • Olympic Medals Map
  • Skills: HTML/CSS, Javascript (Protovis, jQuery), Python
  • Class: CS448b Data Visualization (Fall 2010)
  • An interactive data visualization of Olympic medal wins by country and year.
  • Interact with the live demo
tokyo radiation viz
  • Environmental Radiation Levels in Tokyo
  • Skills: Tableau Software
  • Class: CS303 Designing Computer Science Experiments (Spring 2011)
  • A data visualization examining radiation fears in Tokyo after the Fukushima Daiichi disaster.
  • View the full visualization


  • Time as an Indicator of Site Relevance
  • Skills: Python, R, HTML/CSS
  • Class: CS303 Designing Computer Science Experiments (Spring 2011)
  • An experiment evaluating the time spent on websites as an indicator of search result relevance.
  • Project Blog

Apps and Games

  • TravelHard
  • Skills: Android SDK, HTML/CSS, Javascript
  • Class: CS247 Human-Computer Interaction Design Studio (Winter 2011)
  • An Android app for adding sound clips to photos and automatically publishing them online, formatted by metadata information, such as time and location.
  • QrowdSource
  • Skills: HTML/CSS, Javascript, PHP
  • Class: CS147 Introduction to Human-Computer Interaction Design (Fall 2010)
  • A mobile web-app for making predictions on current events and comparing one's performance to others.
drum city
  • Drum City 3000
  • Skills: C++, OpenGL, SDL
  • Class: CS476A Music, Computing, and Design I (Fall 2010)
  • Drum sequencer + Sim City!
  • A grid based drum sequencer that can have effects applied to it like the disasters in Sim City.
  • Project page


bottle opener mug
  • Bottle Opener Mug
  • Skills: TIG welding, Machining, Brazing, SolidWorks CAD
  • Class: ME203 Design and Manufacturing (Fall 2011)
  • Exactly what it sounds like. One of my favorite projects!
  • View The Process
nyu logo

Work Projects

  • Virtual Machine Manager
  • Skills: Python, shell scripting, RHEL (Red Hat)
  • Job Title: Special Projects Technical Assistant (Spring 2010)
  • Department-wide virtual machine manager that automatically assigned users to available machines.


duck hunt
  • Duck Hunt
  • Skills: x86 Assembly
  • Class: CS201 Computer Systems Organization (Spring 2008)
  • A recreation of the classic NES Duck Hunt game, coded in x86 Assembly using EGA 320x200 graphics mode with 16 colors.
  • View Game Details


  • Rovio Mobile Webcam
  • Skills: Lush (Lisp Universal Shell), Computer Vision
  • Class: CS480 Special Topics: Robotics (Spring 2009)
  • Programmed a Rovio robot to detect a tennis ball and paper goalposts to play soccer with other Rovios.
  • Pololu 3pi
  • Skills: C
  • Class: CS480 Special Topics: Robotics (Spring 2009)
  • Programmed a 3pi robot to follow lines and race other 3pis on an arbitrarily drawn course.
  • Arduino
  • Skills: C
  • Class: CS480 Special Topics: Robotics (Spring 2009)
  • Combined an Arduino, breadboard, servo, and light-detecting sensors to automatically turn to face the brightest light source.