Project 1

From Expressive Computing


Project 1: Programming without Computers

A program is just a set of instructions: a list of things to do. Computers are designed to execute programs (at least, certain types of programs), but they're not alone in that capability. This project is about identifying, inventing and/or hacking "programs" that operate not on bits and bytes but on people, places, and objects.

With your team, choose either option A or option B below. (If you have an idea that doesn't obviously fall into either of these categories, please see me!)

Option A: Everyday Processes

Identify an existing everyday process out in the (physical) world. Formalize this process as well as you can (i.e., write down the steps of the process in detail). Then, modify this process in some way: change variables, or modify conditionals, add (or remove) a loop, make it recursive. Now, perform the resulting procedure. Document the results. (Use photographs, video, and narrative retellings as appropriate.)

The goal is to take a familiar (boring) process and turn it into something new: uncomfortable, humorous, or maybe just plain strange.

Your process should be designed such that it can be performed as a group, or such that the same process can be performed (and documented) by each member of the group.

Here are some questions to ask yourself when you're evaluating your project: What does your modified "program" tell you about the original program? Was your new program an improvement, or was it irrevocably broken? Somewhere in between, maybe? How can you tell?

Some "everyday processes" that you might consider for your project:

  • Recipes
  • Moving through the city (the urban landscape)
  • Sports, board games, card games
  • Reading a book (why go from page one to page two?)
  • Personal hygiene (how do you decide when to shave? If ever?)
  • Behavior in social situations (what are the rules that govern, e.g., standing in an elevator? Why does everyone turn around to face the entrance?)
  • Interior design
  • Fashion (how do you decide what to wear on a given day?)

Option B: Algorithmic Art

Examine: Tzara, Burroughs (see Week 2's reading), Jean Arp, John Cage, Gerhard Richter. These artists authored processes by which they brought their works (whether visual, literal, or audible) into being, instead of relying on "artistic inspiration" alone.

Your task: Gather a set of physical objects (construction paper, drops of paint, words snipped out from newspaper headlines, photographs, food items, rocks, people, whatever) and write a "program" for arranging them. Then, execute that program. Execute the program at least twice.

Document your process and your results. (Photography, video, and narrative are all appropriate forms of documentation.) If your process results in a tangible physical object, do your best to bring it to class for your presentation. Your documentation should also include a written copy of your "program." (Be as explicit as possible.)

Some questions to ask yourself when evaluating your project: Compare your first attempt at executing the program to your second attempt (and any subsequent attempts). What changed? Why? Does the result of your process reflect "authorial intent"? Did anything unexpected happen when translating the program into physical action? Could you correct for this unexpectedness? Would you even want to?

Some additional inspiration

Some inspiration, whether your group goes with option A or option B.

Student work

Coming soon!