Critical Computation Lab
Fall 2022 · MFA + BFA Design & Technology, Parsons · PGTE 5251 · PUDT 2109
MFA Design and Technology, Parsons School of Design.
Critical Computation Lab - PGTE 5251 - Section C (MFA Design + Technology)
- Course Dates and Times: Fridays 9:00 am - 11:40 am
Critical Computation Lab - PUDT 2109 - Section B (BFA Design + Technology)
* Course Dates and Times: Thursdays 9:00 am - 11:40 am
CC Lab 2022 Course Website
CC Lab 2022 Course Syllabus.
Course Description
Critical Computation Lecture + Lab (CC Lecture + CC Lab) are corequisites that work hand-in-hand to introduce computation and code as an expressive medium for artists, designers, and technologists. CC Lecture provides an introduction to computation through a series of critical inquiries and technical fundamentals, while CC Lab serves as a continuum of CC Lecture by applying theories to practice through a series of experimentations and play. Together, the three learning pillars for CC Lecture + CC Lab are code, critique, and design.
CC Lecture provides a critical approach to thinking and working with technology by introducing programming concepts within a social and historical context. Through an intersectional feminist lens, the course unpacks design biases embedded in pervasive technology while pointing towards examples of expressive, critical, and community-centric ways of working with technology. On the technical end, the course introduces programming fundamentals through p5.js, followed by examples of additional JavaScript libraries and external APIs.
Lab expands the topics covered in CC Lecture through extended tutorials, pair-programming sessions, embodied group activities, and one-on-one mentoring. The lab structure allows students to process the course materials and Assignments assigned by CC Lecture, and further develop the assignments based on their own individual interests and background.
Course Outline
For a full description of each class, see each week's folder.
| class # | Date | CC Lab |
|---|---|---|
| 1 | Sep 2 | Welcome to p5.js |
| 2 | Sep 9 | Labor Day: Week of review and setup |
| 3 | Sep 16 | Variables, Parameters, and Randomness |
| 4 | Sep 23 | Conditionals, Processes, and Algorithms |
| 5 | Sep 30 | Modularity, Reusability, and Utilitarianism: Functions |
| 6 | Oct 7 | Illusion as Tactics: Loops |
| 7 | Oct 14 | Data Portrait: Arrays |
| 8 | Oct 21 | History of Narrative Games: Classes and Objects and Arrays of Objects |
| 9 | Oct 28 | Classes, Objects, and Inheritance |
| 10 | Nov 4 | Bots & Disembodied Voices |
| 11 | Nov 11 | Critical Disability and Design |
| 12 | Nov 18 | Artificial Sensing: Pixel Array and Image Glitching |
| 13 | Nov 25 | NO CLASS - Happy Thanksgiving! |
| 14 | Dec 2 | Consentful Tech: User Interfaces |
| 15 | Dec 9 | Semantic Web & a11y: HTML and CSS |
| 16 | Dec 16 | Portfolio Presentation & Review - Final Presentation & Group Critiques |
Learning Outcomes
- Demonstrate knowledge and application of object-oriented programming skills in p5.js.
- Embody code as an expressive medium by learning its strengths and limitations.
- Investigate the relationship between code, design, and critique through past examples and creating your own.
- Ability to discuss and create work through a critical lens and reference computational arts and culture through a non-Western-centric, multilinear perspective.
- Gain insights into the social impact of code; how it creates empowerments and disempowerment under different contexts.
- Assess and manipulate data and text critically via APIs, databases, and regular expressions.
Assessable Tasks
| Assignment # | Assignment |
|---|---|
| #1 | Lost and Found |
| #2 | Face Generator |
| #3 | Experimental Clock |
| #4 | Exquisite Corpse |
| #5 | Optical Illusion |
| #6 | Data Portrait |
| #7 | Autobiographical Game |
| #8 | Experimental Camera |
| #9 | Consentful Interface |
| Final | Final Review CC Portfolio |
Assignment Submisions
You will use this Glitch template as a starting point to build your CC portfolio. Focus on populating the web pages with thoughtful written descriptions and design documentations. Towards the end of the semester you will learn the HTML / CSS skills required to further customize the website.
Required Tools
- Glitch Account
- Google Chrome
- Sublime Text
- Terminal (Mac) / Command Prompt (PC)
- A Github account and a way to access it. Feel free to either Terminal or a desktop app — Github for Mac, Source Tree or whatever you feel comfortable with.