Assignment Descriptions and Due Dates

A1: 5%
A2-A7: 10% each
A8: 5%

Assignments may be submitted as a zip file via moodle before class on the day due. All Processing files will need to be saved and zipped up. We will review this in class.

A1: Develop 3 "quantifiable" and 3 immeasurable learning outcomes for this quarter: The learning outcomes on the COURSE INFO page are identified by the division as emphasizing quantifiable results of the SCIMA200 course. For this assignment, identify your own learning outcomes, both measurable and not so easily measurable (in terms of your own practice, creativity, inspiration, values). Due before class on Sept 9.

A2: Connect 3 points in space: For curator Christiane Paul's CodeDoc exhibition, she asked artists to "connect and move 3 points in space. In this exhibit, the code was foregrounded as the artwork rather than the result of the code, and artists interpreted the prompt in vastly different ways: politically, aesthetically and conceptually. For this assignment, use the Processing programming language, your knowledge of Processing concepts covered to date and Cartesian grid to interpret Paul's prompt in your own way. Consider employing some kind of interactivity from keyboard or mouse. All code must be commented. Due before class on Sept 23.

A3: Make a clock or a timeline: Using counter code and for loops that you have written in Processing, and considering the rise of standardized clock time at the turn of the 20th-century +/or the various timelines we have looked at, make a clock (or a timeline) that follows it's own, possibly innovative, rules for temporality.
Inspiration: Sasha Archibald and SCIMA 200 timeline. Note: also look at second(), minute(), hour(), millis(), day(), month(), and year(). Be sure to comment your code relentlessly!! Due before class on Oct 14.

A4: Processing monster: Lukas Vojir started making processing monsters in order to learn how to use processing and promote code sharing. Vojir's rules for making a processing monster are simple: Strictly black and white and mouse reactive. Vojir has a gallery of monsters: For this assignment we will add to his simple rules by having our monster either express the joy that comes from figured something logical out, or the frustration when a program doesn't work. Please utilize all the main aspects of programming you have learned so far, including mouse reactivity, variables, conditionals and loops, and arrays! and display 3 emotions (as text) that come from working with code. Please give your monster a name. You will share your monsters with a classmate next week so be sure your code is commented!
Due before class on Oct 21.

A5: Explain code without using code!!: In class on October 21, you will be given a programming concept or a set of concepts to review and then explain. For this assignment you must use some kind of artistic medium other than a programming language. You may do a painting, a poem, a song, a series of photographs or a video to explain your topic. You might do a performance or use your fellow students in some kind of improvisational pop up theater. You will be asked to artistically explain one of the following:
- Group 1 :: variables (including variable types and variable scope)
- Group 2 :: if/ else conditionals (including relational expressions and boolean statements)
- Group 3 :: for loops (including increment)
- Group 4 :: arrays
- Group 5 :: basic code elements (including setup(), draw(), syntax) statements (incl. mathematical operators -- yes, definitely modulo) & functions.
Everyone should be prepared to present their original works in class. Please document it in some digital way so that the documentation can be uploaded to moodle.

A6: Write a recipe: Following in the tradition of Dada artists like Tristan Tzara, Fluxus artists like Yoko Ono or John Cage, conceptual artists like Sol Lewitt, as well as the pioneers of software and programming like Ada Lovelace and Alan Turing who conceived of software as being like a recipe, write a recipe or instruction based artwork in natural language. You might write out an actual recipe for cookies, or a set of instructions for an abstract painting. You should list a set of ingredients, set up instructions and then the actual implementation instructions much like a Processing program or a baking recipe (raw ingredients, setup would include oven temp, etc.) Keep in mind that you will be passing this recipe on to a fellow classmate who will turn the recipe into Processing code.... Your recipe could be a recipe for food, or it can be more abstract like a recipe for a poem or a painting. The assignment will be graded based on your creative consideration of the concept of a recipe, as well as its formulaic presentation in relationship to the code environment and algorithmic structure. Due before class on Nov 11.

A7: Implement a recipe in code:
In Processing. Consider the elements of the recipe you received from a fellow student. Can they be translated into variables, and methods, inside of classes that you create? Simplifying where necessary, implement the recipe using the Processing coding environment.
Please include the original recipe in code at the top of your main file.

Use Casey Reas' {Software Structures} for inspiration as to the ways you can categorize the work. What are the logical processes at play? What are the creative processes? Are they mutually exclusive? Where is there evidence of repetition, and what parts of the process can be considered creative?
Due before class on Nov 25.

A8: Review/ assess learning outcomes: Review the learning outcomes you developed in the beginning of class. How does your work in this class reflect or not reflect those (desired/ expected) outcomes? How can you measure or asses your quantifiable and immeasurable learning outcomes? Due before class on Dec 9.