One of our objectives in DIG 220 is to “create original multimodal work that takes advantage of the unique aesthetic and literary affordances of digital environments.” To that end you will create a procedurally-generated text. (Update: a list of finished student Tracery projects is available.)
Strictly speaking, this project does not involve programming. It does, however, require procedural thinking. Every Tracery grammar takes the form of a JSON file. This is a highly structured text format that both humans and computers can “read”—though parse might be a better word. Your grammar.js file tells Tracery what your templates are (templates in the plural because you can embed templates within templates recursively) and provides the vocabulary for Tracery to use as it fills in the templates.
It’s easy for text generation to be comical or satirical, like Nora Reed’s thinkpiecebot or Compton’s Night Vale Generator, both of which use Tracery. Other text generation parodies powered by tools similar to Tracery include the Postmodern Essay Generator and Eric Drass’s machine imagined art.
But it’s also possible to make text generators that are serious or provide social critique, such as my own Don’t Drink the Water (which uses Tracery) or @NSA_PRISMbot (which uses a technique similar to Tracery).
- Decide what kind of text you want to generate. Will it be a parody? Social commentary? A genre, like horror, romance, or science fiction? Fake non-fiction? What’s the mood of the work? Humorous? Sarcastic? Somber or melancholy?
- Download the template files (also try the simplified template files), unzip them, and start editing grammar.js in a text editor. The grammar.js file contains the grammar and vocabulary—the rules—for Tracery. You can instantly see the results by opening the index.html file in your browser. Also edit index.html to reflect your project name and to update the project description. I’ve provided more details about the editing process in my Tracery Tips post. I’ve also posted some tips of customizing the look of your project.
- Go through the Tracery tutorials below as you work on your project. When you first start it might help to use a visual editor. Beware that these editors are liable to crash as your grammar grows in complexity.
- You will also write an Artist Statement that puts your Tracery project in dialogue with questions regarding authorship and creativity.
For your Tracery project to count as Satisfactory, it must meet the following criteria.
- Your Tracery project must have at least 1,000,000 possible combinations.
- 9 out of 10 combinations must parse correctly. That is, at least 9 out of 10 combinations should make grammatical sense, though not necessarily logical sense.
- The Tracery project is accompanied by a 500-1000 word Artist Statement, posted to our class blog under the category “Tracery Project.”
- The Artist Statement must integrate at least two secondary sources in a substantive way. “Substantive” doesn’t mean merely quoting at length or cherry-picking a key phrase. “Substantive” means actively engaging with the source by (1) summarizing its overall argument; (2) showing how that argument ignores important issues, doesn’t go far enough, or could be applied to new contexts; and (3) applying concepts from the secondary source to your procedurally-generated text. See below for possible secondary sources to consider.
- The Artist Statement follows scholarly standards for citation, using either MLA, APA, or Chicago style.
- The Artist Statement contains no more than 3 grammatical, spelling, or other “mechanical” errors.
- The Artist Statement contains no more than 2 minor factual inaccuracies and no major factual inaccuracies.
- Your fully functioning Tracery project is shared online via your own Davidson Domain (using the File Manager in your domains dashboard to upload all the files to a folder in your public_html directory). This video tutorial walks you through the upload process.
- The Tracery project and Artist Statement are publicly shared by Sunday, September 17 at 11:59pm.
For your Tracery project to count as Sophisticated, it must meet the following criteria (in addition to meeting all the above criteria for Satisfactory):
- Your Tracery project must have at least 1,000,000,000 possible combinations.
- You must change the style.css file in meaningful ways. That is, in ways that noticeably contribute to (rather than detract from) the visual style of the project. Font sizes, color changes, even changing the font could conceivably be meaningful changes to make.
- The Artist Statement must integrate at least one more secondary source in a substantive way.
- The Artist Statement uses more effective rhetoric and style to advance its argument.
There are a host of Tracery tutorials out there, but the best are the following:
- Tracery template files (complex)
- Tracey template files (simple)
- Beau Gunderson’s Tracery writer
- Kate Compton’s Tracery visual editor
- A code/text editor like Brackets or Atom
- FTP access to your Davidson Domain
Possible Secondary Sources
- Roland Barthes, “The Death of the Author” from Image-Music-Text
- William S. Burroughs, “The Cut-Up Method of Brion Gysin” from The New Media Reader (2003)
- Chris Funkhouser, “First Generation Poetry Generators” from Mainframe Experimentalism: Early Computing and the Foundations of the Digital Arts (2012)
- Charles Hartman, Virtual Muse: Experiments in Computer Poetry (1996)
- Margaret Masterman, “The Use of Computers to Make Semantic Models of Language” from Astronauts of Inner-Space (1966)
Mark Marino, “Critical Code Studies” from Electronic Book Review (2006)
- Janet Murray, chapter 3 from Hamlet on the Holodeck (1997)
Noah Wardrip-Fruin, “Five Elements of Digital Literature” from Reading Moving Letters: Digital Literature in Research and Teaching (2010), pp. 29–57