Critical-Making-Syllabus

Spring 2024 Edition @ UCF

This project is maintained by AMSUCF

Making Exercise Seven: Grammar

As we look towards the role of computational tools in making things visible and in_visible, we are going to gradually expand our procedural literacy. So far, we’ve focused on adding dynamic elements (looping, choice, and interactions) to our making: this week, we will concentrate on the variable using Tracery, a grammar for procedural text generation created by Kate Compton.

Before you can begin this assignment, it is important to understand the basics of JSON and Tracery. I suggest starting on this nicely scaffolded practice website, which walks you through the basics of JSON and Tracery and was also created by Kate Compton. Note that this goes into much more depth than we need this week, but we will have opportunities to use Tracery again. This site provides seven rows of short examples of different grammars and rules. The left column includes an explanation in plain English about the grammar or rule, the middle column on each row has a small sandbox area for you to modify and experiment with different code, and to the right of each sandbox is posted a preview of what that coded part would produce. The first coding example is text generation, with simple lists of replacement text options for one symbol:

Focus on symbols and sentence structure for now. A few of you will have encountered Tracery before: if you have, I encourage you to try the suggestion for adding on to the basic assignment, but it is not required! Note that this exercise asks you to respond specifically to the themes in the closing of our readings, and thus should require a very different type of grammar than you’ve made before if you used Tracery in the context of the Theory course.

For this exercise, you will make and unleash a Tracery generator with an original grammar that put your research and making in conversation with the provocations of Your Computer is On Fire. Your grammar should engage, either metaphorically or literally, with how your own research is shaped by the current “fires.” Consider the examples of generative texts that demonstrate this type of engagement, from Mark Sample’s Infinite Catalog… to Clare Hooper’s 2020 NaNoGenMo piece Data of Death. Your piece should:

As with our other exercises, make sure to include both the .html file and your process reflection with screenshots from the process, drawing on the connections to our readings and considering the relationship your work has to a world of algorithmic content.

For advanced users, Tracery can be used for both visual and textual play, as demonstrated in the Masked Making generator, which uses both a textual grammar to create the imagined names of masked makers and their stories as well as a visual component to craft the masks themselves:

Masked Making

This is great practice for thinking about procedural generation and the construction of digital art, as well as the constructed nature of many web texts that invade our feeds and platforms.

Resources for Experimenting

There are several options for those with more experience to consider for your future play in Tracery. Here’s a few general resources on Tracery grammars and adding fun elements, such as emojis:

One great option is to think about incorporating images - or even making memes or comics, as in our previous experiments:

Another fun option is to continue our exploration of remix by trying out Tracery with either Twine or Bitsy: you can find a Tracery integration in the Bitsy Hacks, and an example walkthrough here. For Twine and Tracery, take a look at our example in P-4 of Twining., which includes an example with Tracery already integrated into the Twine structure. We’ll be doing more intententional remixing in future exercises, so keep this in mind for the coming weeks even if you don’t try it now!