Kwin Kramer and Nelson Minar

Class Project for
Cooperation Between Humans, Computers and Things (MAS837)
Spring 1997

Leaves: Manipulable Distributed Displays

In the spirit of the Tangible Interfaces Group's work with ambient media, we intend to construct a physically manipulable ambient display. The Epistemology and Learning Group's Programmable Beads serve as a point of departure; we envision a cascade of individual elements that can be arranged and rearranged to display dynamic information in a variety of ways.

The Programmable Beads are small objects intended for threading on strings (like their conventional counterparts). Each Bead is a little computer capable of simple input and output as well as quite complex computation. Beads communicate with their nearest neighbors by inductive coupling and communicate with people by turning on and off LEDs. A strand of Beads hung vertically brings to mind a crude bar-graph; this simple image was the initial impetus for our project.

The Beads are interesting as a system because they provide an unusual computational topology. As each Bead is a processor unto itself, a string of beads is a one-dimensional network of equivalent processors bound by reliable (albeit slow) information paths. A modest string of 20 Beads is, from this perspective, a not-so-modest collection of 20 computers. Our Beads are topologically different than a Local Area Network of equivalent; each bead can talk only to its nearest neighbor. The nearest-neighbor model forces us to revisit even basic issues of programming methodology and system design. At the same time it suggests new, hopefully simpler ways to understand communication between computational artifacts. We are intrigued by this opportunity to rethink (or to think up) strategies for communication and behavior-production.

We intend to revise the Programmable Bead hardware for the application for MAS837. A photo and simplified schematic of the current Beads appear below:

bead picture

The new Beads will hang vertically, one from another, like links in a chain. Our sketches for this new implementation suggest vegetation, perhaps spanish moss, so we are calling our new artifacts Leaves. The Leaves will display dynamic information of several varieties. The simplest (and perhaps least interesting) application we've been discussing is a loose category of numeric data such as network traffic, noise level, CPU load, ambient temperature, and in particular, stock prices. This type of information stream has interesting properties:

leaves picture

We feel strongly that the Leaf-displays must be physically configurable; we are working on ways to physically program the data display. Users configure the display by clipping and unclipping individual components to the display. Some components will simply be display elements - a user can configure the display to have more information by adding more display. Other components will have special meaning - choosing which particular stock to display in a strand, controling which valencies of data are displayed in what representation.

Finally, we need not limit the Leaves system by displaying only information piped in from outside. The Leaves can generate displays on their own as well. One can program a cascade of leaves to follow cellular-automata-like patterns, or to pass pieces of code around with light trails following in the programmatic wake. Time permitting, we hope to explore alternative uses of the Leaves to see what sorts of applications are natural to this hardware.