Dynamic Typography


Sketches made while taking MAS962, Dynamic Typography, a class taught by Prof. John Maeda at the MIT Media Lab. The sketches completed for this class had a significant impact on early thinking about ActiveText, particularly our approach to representing glyphs.

These sketches were (unfortunately) made in an early version of J++, and therefore need to be viewed with Explorer on a Windows machine.

[At the end of the class, we had a very interesting discussion about "what is a tool". Well worth checking out.]


Scott Snibbe
Golan Levin
Jason Lewis





Typometer is reminiscent of the huge scheduling boards found in old train stations. As you type, letters map to words and they briefly lie on the grid. The first character remains while the rest spin back to their original values. Hold down a key to paint with words that tickle your eye as they spin back. Clear the grid by clicking in the black margin. You can almost hear the click-click-click.



Filters is an excercise in semantic filter, i.e., instead of just filtering on the appearance of text, you can apply filters based on its existence as ASCII text. Choose from enhance, blur or noise. Just move the slider, when you let go the filter is applied. Enhance looks for synonyms. The smaller the filter value, the closer the synonym is to the original word. Blur pushes words back in etymological history. Noise free associates. IMPORTANT NOTE: filter iis hard-coded to handle the words already in the text area.


Dynatext works by reading in a stroke letterform, then using this letterform as the raw input to a spring and mass simulation. A guide object is pulled along the letterform. Attached to the guide is a mass attached by a spring. The path traced out by the spring is drawn to create the letterform. Inspiration comes from Paul Haeberli's Dynadraw, which uses this technique as the basis for calligraphic drawing. Two parameters (vertical sliders) may be used to modify the simulation. K Changing this control makes the spring constant stronger or weaker. A spring constant of zero (top of slider) makes the stroke follow the normal form of the letter. D Controls the damping of the mass - at the bottom of the slider, the value is maximal, allowing no motion. Modify these parameters by pulling the small block within the slider. You can actually pull the block outside of the normal range - try negative values to add energy to the system. One additional control is a button which allows you to make the strokes separate or connected. A dashed line indicates the separate state. When you begin to fill up the screen, old characters will scroll upwards and away.


Phonemes animate based on their phonetic quality.
stops: p, b, t, d, k, g, q
fricatives: f, v, th, s, z, sh, h
affricates: ch, j
nasals: m, n, ng
liquids: l, r
glides: y, w, wh

Try typing these:
why why why
pages full of q's, l's
kinky, chatter, north, theremin, typewriter
pound on the keyboard.


Type letters, and Barry White smoothly delivers your phonemes.
Some good choices
me, my, I, u, I love you


Franz is an excercise in Rapid Serial Visualization. Our task was to present a passage from Kafka in ten seconds, with no more than two words appearing on the screen at any instant of time. Franz's solution is to present words from the outside in. Experimental results show that the beginning and endings of words are more salient for recognition than the interior. Thus, we present the letters gradually fading up based on their cognitive importance. The applet parses a file which has values for the words, their timing and the visual effect. We leave longer words and less frequently encountered words on the screen for a longer time, also based on experimental results.


Multiplane is a chat client with a tasty interface. Whenever a word is typed into Multiplane,it broadcasts the word to a central server at the Media Lab which then broadcasts it to all other connected clients. Multiplan also listens for new words that have been sent by other clients to the server. Different "speakers" are denoted by color, and the position at which they come in on the right hand side of the screen.

Unfortunately, the server was taken down at the end of the class, so there is no working demo of this until we around to replicating it.