This was part of my coursework for "Physical Computing" (nov-dec 08)