Project 3
From Expressive Computing
Contents |
Project 3: Computational Text
This project involves getting your hands dirty with the substance of digital text: bits, bytes, characters, words, sentences. Choose one of the options below.
Option A: An algorithmic poetics
This option has two steps.
- Devise a new poetic form.
- Create a computer program that generates texts that conform to new poetic form that you invented.
Your poetic form could be something as simple as "Each line must begin with the letter 'A'" or something as sophisticated as Mac Low's diastics (see Asymmetry205). When undertaking step (1), remember which "units of text" are easy to work with in step (2). See Week 8 for a list of existing poetic forms.
Your presentation and documentation for this project should include the following:
- The name of your poetic form, and a thorough description of how it works
- The source code for the program you used to generate poems that follow your form
- A number of "poems" that your program generated (at least three) (extra credit if you read your output out loud in class!)
Consider the following when evaluating your work:
- How well does the output of your computer program conform to your invented poetic form? Could a human do it better?
- How does your choice of source text (your "raw material") affect the character and quality of the poems that your program generates?
Relevant work
- Jackson Mac Low's Diastic reading (example: Asymmetry205)
- Loss Pequeno Glazier, Grep Works
- Interview Palin
- Alan Sondheim, Julu
- Nick Montfort, ppg256
- Google Poetry Robot
- Travesty
- Daniel Howe and Aya Karpinska, No Time Machine
- Beard of Bees (esp. Gnoetry)
- Flarf
- Leonard Richardson, Eater of Meaning (see also Spurious Sonnets)
- David Melnick, PCOET
- Adam Parrish, Entropic Text Editor
Option B: Visualizing text
Using Processing and/or Python, create a program to visualize of text. Your visualization should show some quantifiable property of the text that can be computationally extracted from it. For example:
- letter count
- word count
- sentence length
- occurrence of particular words
- etc.
Your presentation and documentation of the project should include the following:
- a detailed description of your visualization process (how do the visuals correspond to the units of text?)
- the source code for your visualization process (in Processing and/or Python)
- the visual (or interactive) results of your process, for a number of source texts
Some questions to ask yourself when evaluating your work:
- What insight (if any) does your visualization bring to the text?
- If your visualization is interactive, how does the interactivity contribute to the user's understanding of the visualization?
Relevant work
- Sai Sriskandarajah, The Waste Land
- Chris Harrison, Web Tri-grams
- Stefanie Posavec, On the Map
- Kyle McDonald, Fontback
- Nina Katchadourian, Talking Popcorn
- Similar Diversity