TruthTable
A Java truth table viewer for investigating boolean expressions. Expressions can be composed of identifiers and the standard boolean operators && || ! and the bitwise operator ^.

Files: Webstart Executable, JAR file (including source)

MemoryInterpreter
A Java viewer for seeing how bitfields are interpreted differently according to primitive type. Raw bitfields can be interpreted as bytes, shorts, ints, and floats. Users can alter individual bits or the primitives and see how things change.

Files: Webstart Executable, JAR file (including source)

Media Computation Workshop
Mark Guzdial of Georgia Tech put on an NSF-funded workshop on teaching computer science in the context of media manipulation. Educators in attendance were fully engaged in the workshop by completing homework for several media types: images, sound, and movies. My submissions were inspired by the Gallop book, automated number pronunciation systems, and the Beatles. Time was short, so documentation is sparse.

Images: hearts.py, interleaving time spatially in a static image, watching a movie from the static image
Sound: speakNumber.py, speaking 987654321012
Movie: Blur.java, blurring the Fab Four
MIDI: Keyboard.java, typing Jesus Loves Me

Breaktime
A simple Java class for scheduling breaks every so many minutes -- to give ones eyes, wrists, and mind a moment's rest.

Files: Breaktime.java