CDGD-410-01 Form and Code
Course Description
This course is a practical introduction to computer programming for artists, designers, and anyone who wants to develop ideas using code. It provides an easy way into computational thinking and how to use computers in creative new ways to generate 2D and 3D form, animation and interaction. It introduces computation as a process, as a tool and as a medium. The course emphasizes generative form to progressively introduce more complex computational structures, including repetition, transformation, parametrization, visualization and simulation.
No prior coding experience required.
First half of course
During the first block of the class, students will experiment using Processing with weekly assignments. The focus is not on having polished projects. This half of the class also includes weekly readings from artists and designers working with digital tools(primarily code-based).
Second half of course
Students will complete a larger project and a website to house the project. The project should have a strong, conceptual base and utilize Processing throughout all project components. Projects vary semester to semester.
Input
Software and tools
»Are.na(Fall 2018)
»Processing
»Sublime
»Atom
»Cyberduck
Resources
»OpenProcessing
»The Coding Train
»Geomerative
»Generative Design Code Package
Readings
»Form + Code in Design, Art, and Architecture
»Learning Processing: A Beginner's Guide to Programming Images, Animation and Interaction
»Generative Design
»Hito Steyerl — Proxy Politics: Signal and Noise
»Cory Arcangel — The Source
»Dragan Espenschied — The storage is you
»Lev Manovich — Avant-garde as Software
»Alexander R. Galloway — Jodi's Infrastructure
»Taeyoon Choi — Poetic Computation Reader
»Olia Lialina — Not Art and Tech
»Open Source Publishing
»Metahaven — Captives of the Cloud
Output
»Are.na
Are.na was used to house class resources, examples of programmed artwork/design, in-class examples, research, assignments, readings and finished assignments submitted by students.
Assignments
Cloud-based Sovereignties
Student project websites
»3.11 — Shiena Kimura
»New World Network — Zach Sanchez
»Inearth — Rebecca Lamm
»Kauschloss — Jonah Linhares
»Church of Preservation — Joseph Pandolfi
»Ecoland — Alina Haseeb
»Han Corp — Wonseok Lee
Project context
The cloud allows for current state powers to have control beyond their borders. Borders no longer simply mark masses of land, but are fluidly changing based on digital connections. Metahaven describes this idea as a super-jurisdiction.
Simultaneously, cloud-based companies such as Facebook, Amazon,
Apple, Google, and others have influence over populations larger than any country. In the future one can imagine a cloud platform being equivalent to or a replacement of a state power. Or is that the case presently?
State actors and companies both utilize many of the basic graphic and computer programming principles such as repetition, hierarchy, color, etc to produce visual content that is meant to influence the general public. Form and Code discusses repetition, transformation, parametrization, visualization and simulation as computational approaches, which again are utilized by state actors and corporations.
Components
Part 1: Propose a cloud-based sovereignty. Sovereignty is loosely defined here as some authority or power. You can create a micro-state, company, cloud-based service, etc. Imagine laws or guidelines for your sovereignty and a visual identity based on those laws or guidelines.
Part 2: With your sovereignty conceptualized, you will create physical and digital artifacts that are designed based on the visual language you have come up with using the tools we have learned during the semester.