Published on

A presentation I gave at the Pittsburgh Python Meetup on writing code poems, or writing poetry within programming languages. This is a high level overview of some of the things I'm exploring as a creative writer/poet and aspiring programmer. I intend to use Python as my core language in experimenting with writing code poems, although I will also use HTML, CSS, Javascript, and D3.

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Writing Code Poetry Poet/Programmer Angela Cornelius
  2. 2. Code Face Glazed Over Regular Expressions Of Natural Language Used ! Every Variable Contains A Person, Place Or Thing Belonging To A Class, Determining Its Potential ! Calculating The Next Move One Answer At A Time, Choosing Either | Or ! Cached Memory Lingers As Relative Tables Talk Data Clouds Gather Algorithms Take Action ! On Columns & Rows Of Collected Key Value Pairs Serving Up Details ! Objects Identify Anything Search For Whatever Find Everything Swimming In The Big Data Sea ! Panda, Penguin & Hummingbird Create Encoded Bits In The Byte Stream Flowing To The Google Ocean ! Angela Cornelius
  3. 3. Thinking Out Loud We have accomplished a lot in machine learning and AI, but at some point we remain limited until we study Machine Emotion and AF (Artificial Feeling) Intelligence is the Mind, then Emotion is the Heart, and Poetry represents the heart far more than any other form of literary narrative I’m interested in Programming Poetry in order to extend my understanding of the human-machine relationship, which by default, involves an inquiry into the human condition Writing poetic programs, code poetry, is exploring new territory, playing curiously with the medium of code as a new media Ultimately, poetry, music, painting, all have in common: Mathematics / Geometry All language is symbolic, also all imagery is symbolic, all symbols are created to express ideas, and therefore are subject to entropy Poetry across mediums, influenced form by screen/display and also by device code
  4. 4. A Poem Is A Small (Or Large) Machine Made Of Words. -William Carlos Williams ! Poetry Is A Simple Art Where Everything Resides In Execution. -Francois Le Lionnes
  5. 5. Two Approaches 1. Use the Code as Medium to Represent Form Poetry With Code 2. Write the Poem into the Code Poetry Within Code Hypertext = Nonlinear, Possibilities of Interconnected Representations Device Screens = Possibilities of Interfaces and Interaction Programming Language = Possibilities for New Forms of Communication In principality, the Web is Primarily Writing
  6. 6. Expressions of Thought Processes Branching Structure Matrix Structure Schizo Structure All directions are = and != - Bill Viola Nonlinear Array Enter/Exit at Any Point, Move in Any Direction, At Any Speed, All Directions Are = Linear Logic with Options Stories with Choices Begin What does a Poem/Program Look Like? Mudding Multi-User Dungeons Social Phenomena in Text-Based Virtual Realities, Paul Curtis, CS at Xerox PARCAlice in Wonderland, Positional or Projective Geometry Narratives Naturally Play With Notions of Time and Space
  7. 7. Poetry with Code William Burrows- (1960’s) modern cut-ups, explore the nonlinear perceptions of space and time “Certainly if writing is to have a future it must at least catch up with the past and learn to use techniques that have been used for some time past in painting, music and film” -William Burrows Digital Poetry is bits woven into the byte stream of global interconnected networks, mirroring the synapsis of the mind, reflecting the human heart upon the machine pond Happenings (1965) The Audience Spontaneously become the Participants in the Unique Creation of the Work, the Experience Valued Over the Product, Often Spread Out Over Disparate Networks, Simultaneously Occurring Across Space and Time -Alan Kaprow Fluxus Artists, The merging of art and life, Emmett Williams wrote “Ultimate Poem” as a procedure in 1956 A Book of Sand Wordle Kinetic Poetry Erik Adigard, Timelocator “The Medium is the Code” IDE as writing tool Mathew Ritchie, The New Place John Maeda, Tap, Type, Write
  8. 8. Poetry Within Code Mark Napier, Web Shredder Mouseover Essay in JavaScript Grep as a writing tool Program-assisted compositions of poetry Procedural Poetry, introduce the algorithmic method Travesty
  9. 9. Ultimate Poem Emmett Williams, 1956 1. Choose 26 words by chance operations-or however you please 2. Substitute these 26 words for the 26 letters of the alphabet, to form an alphabet-of-words 3. Choose a word or phrase (a word or phrase not included in the alphabet-of- words) to serve as the title of the poem 4. For the letters in the title word or phrase substitute the corresponding words from the alphabet-of-words. This operation generates line one of the poem Employs an array (alphabet-of-words) algorithm (simple substitution procedure) and input, output files
  10. 10. Move from a view of writing as the production of something static (a codex or file) to a more dynamic or fluid concept, that is the action of production (process). From this perspective, it is the procedure or algorithm that counts, the output being simply one 
 by-product of that activity. -Glazier “Coding Writing, Reading Code
  11. 11. Why Python? Based on Monte Python - a literary source Natural Language friendly Open Source Peps
  12. 12. Pep20: The Zen of Python Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren't special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess. There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless you're Dutch. Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, it's a bad idea. If the implementation is easy to explain, it may be a good idea. Namespaces are one honking great idea -- let's do more of those!
  13. 13. google ngram In the article “Natural Language Corpus Data,” Peter Norvig aries that counting the number of appearances of words is relevant: “Why would I say this data is beautiful, and not merely mundane? Each individual count is mundane. But the aggregation of the counts–billions of counts–is beautiful, because it says so much, not just about the English language, but abut the world that speakers inhabit. The data is beautiful because it represents much of what is worth saying.” -Design for Information, Chapter 6, Textual Structures
  14. 14. “In a Sense, Code Resembles Classical Poetry. The requirements of meter(poetry) and syntax (code)pose both limitations/challenges for the good poet/ programmer to adhere to and overcome in the process of writing a great poem/program. Also, in code, there are certain elements of style followed by good writers.” -Wilkins
  15. 15. Visual Complexity, Mapping Patterns of Information, Manuel Lima Design for Information, Isabel Meirelles New Media Art, Taschen Multimedia, From Wagner to Virtual Reality, Randall Packer & Ken Jordan Poetry and Mathmatics, Scott Buchanan literature media, friedrch kitler Art in Technological Times, 010101 SF MOMA The Mathematical Theory of Communication, Claude Shannon Digital Poetics, The Making of E-Poetries, Loss Pequeno Glazier Writing Machines, Katherine Hayles References