CS122: Computational Design Tools
Spring 2026 • Pomona College
Mon/Weds 11:00am-12:15pm • Hive Studio 02 (Room 127)
Overview
What makes a good tool? How can we design good software tools, and how can we evaluate them to prove their “goodness”? What are the advantages and disadvantages of computational design tools, like Photoshop, compared to analog design tools, like a pen?
In this course, students will discuss, critique, and create their own computational tools that support art, creativity, and design. Students will work both individually on weekly making assignments and in a team to create an open-ended software “creativity support tool” through peer critique and testing sessions. This course teaches the foundations of UI/UX design and human-computer interaction (HCI) principles, as well as more advanced topics on making, critical design, and HCI research.
Prerequisites: As this course involves programming an interactive software system, CSCI 062 PO or CSCI 070 HM is required. Students will also complete projects that involve digital fabrication design, but no prior knowledge in those domains is assumed.
This course is divided into three rough modules:
-
Making (Weeks 1-6)
Before you make your own tools, you should become proficient at using existing tools—both analog and digital. Topics include the background on the “maker” movement, design activism, analog and digital fabrication techniques, and creative coding. Students will work with foamcore/cardboard, Processing, laser cutters, and 3D printers.
-
Tools (Weeks 7-11)
Informed by your reflections on your earlier tool use, you’ll now begin building your own. You’ll apply the full human centered design process for designing and developing interactive systems: brainstorming, needfinding, low fidelity prototyping, software system design, iteration, and evaluation–the “how” to make tools. You’lll also be introduced to research in human-computer interaction around making, tools, and fabrication, as well as influential theories of creativity and sociotechnical principles from other fields–the “why” to make tools. The second third culminates in an in-class “Wizard-of-Oz” evaluation of your tool, where you’ll share with fellow students an everything-but-implementation version for feedback and testing.
-
Craft (Weeks 11-15)
As you work on implementing your tool in software, the class will look at more critical dimensions of software automation. What are the limitations of computation in the art and design domain? How can we stay sensitive to rich craft traditions in our tool design? What is the purpose of “art” in computation, anyway? The course culminates in a project showcase of the completed computational design tools.
Each class section will be a mix of 2-3 of the following styles of modules, approximately 20-30 minutes each:
- Lecture
Lecture
: The instructor will lecture on various topics, such as giving an overview of a knowledge field. Usually followed by a seminar or studio. - Seminar
Seminar
: A discussion guided by two students on assigned readings. - Studio
Studio
: A guided activity, such as a making tutorial; a class critiqueCrit
of a personal making or project assignment; project work time.
In general, students should bring their laptop and something to write with to every class.
The learning outcomes of this course are that students will:
- develop a critical understanding of past and present making technologies and design tools, and their roles within current cultural and social contexts
- make expressive and interactive objects and tools that critique and advance computing culture
- establish proficiency with the fundamental concepts, methods, and practices of physical modeling, sketching, form giving, and hands-on making across a range of materials
- be able to evaluate tools and interactive systems with quantitative and qualitative methods
- understand and critique social, ethnographic, engineering, and design-oriented research practices
- improve their capacity to motivate and frame HCI research questions and contributions
- improve their presentation and feedback skills through in class studio critiques
Schedule
Schedule subject to change due to feedback and student needs.
| Week | Date | Topic | Due (11:00am) |
|---|---|---|---|
| 1A | Jan 19 | No class 🌱 (MLK Jr. Day) | |
| 1B | Jan 21 | Intro: “design” and “tools” Lecture | Course survey by Thu 11:59p |
| 2A | Jan 26 | Making & hacking culture; course norms Lecture Seminar Readings: Making or Making Do? Challenging the mythologies of making and hacking, AI Art and its impact on artists | Reading responses (RRs) on Canvas |
| 2B | Jan 28 | Tool fundamentals ZC PM1 Crit Lecture | PM1: Hacking zine |
| 3A | Feb 2 | Analog fabrication techniques ZC Studio | |
| 3B | Feb 4 | Design tools for digital fabrication ZC Lecture Seminar Readings: Interactive Fabrication, Throwing Out Conventions: Reimagining Craft-Centered CNC Tool Design through the Digital Pottery Wheel | RRs |
| 4A | Feb 9 | Digital fabrication techniques (laser cutting) ZC PM2 Crit Studio | PM2: Analog making |
| 4B | Feb 11 | HMC Makerspace visit Studio | |
| 5A | Feb 16 | Digital fabrication techniques (3D printing); Design for protest ZC Studio Seminar Readings: Design Activism, Ch 1, Design Values: Hard-Coding Liberation? from Design Justice | RRs |
| 5B | Feb 18 | Reflection & friction ZC Lecture Seminar Readings: Reflective Creators, Thrown from Normative Ground: Exploring the Potential of Disorientation as a Critical Methodological Strategy in HCI | RRs |
| 6A | Feb 23 | Creative coding ZC PM3 Crit Lecture Studio | PM3: Press fit kit |
| 6B | Feb 25 | Creativity support tools & how to evaluate them ZC Lecture Seminar Seminar Readings: Design Principles to Support Creative Thinking, What Counts as ‘Creative’ Work? Articulating Four Epistemic Positions in Creativity-Oriented HCI Research; Evaluating Creativity Support Tools in HCI Research, Beyond Productivity: Rethinking the Impact of Creativity Support Tools. Optional: The original 2005 Creativity Support Tools "manifesto" | RRs |
| 7A | Mar 2 | Final project introduction; Design methods: idea generation ZC PM4 Crit Studio | PM4: 3D print for protest |
| 7B | Mar 4 | Project group formation; Design methods: needfinding ZC Studio Lecture | Project ideas |
| 8A | Mar 9 | Design methods: Paper prototypes ZC Studio | |
| 8B | Mar 11 | Design methods: Evaluation ZC Studio | Needfinding interviews |
| 9A | Mar 16 | No class 🌱 (Spring break) | |
| 9B | Mar 18 | No class 🌱 (Spring break) | |
| 10A | Mar 23 | Justifying design decisions; Embodiment & empathy ZC Lecture Seminar Readings: How Bodies Matter: Five themes for interaction design, The Promise of Empathy: Design, Disability, and Knowing the "Other" | RRs |
| 10B | Mar 25 | Low-fi evaluation; Figma workshop ZC Lecture Studio | Task analysis & video protoype |
| 11A | Mar 30 | Visual & web design ZC Lecture Studio | Introduction draft |
| 11B | Apr 1 | Critical design ZC Studio Seminar Readings: Uncomfortable Interactions, Feminist HCI | RRs |
| 12A | Apr 6 | Research through Design ZC Seminar Seminar Readings: Being the Machine: Reconfiguring Agency and Control in Hybrid Fabrication, Philosophers Living with the Tilting Bowl; TBD, TBD | RRs |
| 12B | Apr 8 | Wizard-of-Oz evaluation ZC Studio | WoZ Figma prototype |
| 13A | Apr 13 | Materiality & Craft ZC PM5 Crit Seminar Readings: The Textility of Making, Abstracting Craft Ch 3 | PM5: A Webpage of One’s Own, RRs |
| 13B | Apr 15 | TBD Seminars ZC Seminar Seminar | RRs |
| 14A | Apr 20 | Power & Creativity Support Ecosystems ZC PM6 Crit Seminar Readings: Beyond the Artifact: Power as a Lens for CSTs, Creativity Supportive Ecosystems: A Framework for Understanding Function and Disruption in Online Art Worlds | PM6: Materials, RRs |
| 14B | Apr 22 | Project MVP in-class evaluation ZC Studio | MVP eval |
| 15A | Apr 27 | Generative AI & Creativity, TBD ZC Seminar Seminar Readings: Homogenization Effects of LLMs on Human Creative Ideation, Build Word Gyms, Not Word Factories; TBD, TBD | RRs |
| 15B | Apr 29 | Project work time ZC PM7 Crit Studio | PM7: Seeing |
| 16A | May 4 | Project final in-class evaluation ZC Studio | |
| 16B | May 6 | Final project presentations Studio | Final project write-up (Thu 11:59pm) |
Instructors
Jingyi Li • firstname.lastname@pomona.edu
Office hours: Edmunds 111 • Monday 1:30-3:00pm & Wednesday 4:00pm-5:30pm (or by appointment)
This is my third year at Pomona College, and third time teaching this class! My role in this course is to help you learn how to learn, to help facilitate learning from and teaching your peers what you already know (everyone knows something about art, even if they don’t know it), and to emotionally and academically support you through the material.
Outside of the classroom, I research (you guessed it) computational design tools in the Doodle Lab. I’ve lived in the Bay Area for the past decade (I have a BS in EECS from UC Berkeley and a PhD in CS from Stanford) and consider it my home. My pronouns are they/them, and you can call me Prof. Li (but Jingyi is also fine).
My preferred method of contact is the course Slack channel. Slack is great for asking and answering questions: your classmates may have the same questions as you, you may have the answers to your classmates’ questions, and I can upvote and expand on student responses. I will be posting course announcements through Slack as well. Feel free to DM me for individual requests; I will try my best during the weekdays to respond within 24 hours.
The TAs for this course are Miriam Brody and Tara Mukund. They are here to help you succeed! More info about potential mentor hours soon. They are also on Slack, and will host more specific sections to help with your final project. Please attend!
Grading
There are no exams in this course. There are 7 individual “personal making” assignments worth 35% of your grade (5% each) and a group final project worth 40%. Readings and participation compose the remaining 25%.
- 40% final project
- 35% personal making assignments
- 20% readings & seminar
- Reading responses (10%) - Your lowest 4 reading responses will be dropped (4 individual readings, not 4 days’ worth of readings)
- Leading a seminar discussion (10%)
- 5% participation
- Zipcrit presentation (2%)
- Attendance and participation in critiques, seminar discussions, in class activities, etc. (3%)
Assignment types
In addition to the personal making assignments and projects, other assignments for this course include:
- Zipcrit
ZC
: Each student will sign up to present a "zipcrit" at the start of class. A zipcrit is a rapid critique of a tool (or a specific feature of a tool) of the student's choice. The presenting student has a maximum of 2 minutes and 3 slides to introduce the tool to the class, as well as one question they would like to center the discussion around. The question should be about some aspect of "toolfulness" (interactivity, agency, goals, extension, etc.). The class will then collectively critique the artifact. Students are encouraged to use an expansive definition of “tool.” It can be physical, digital, envisioned. Cute things from the depths of the internet or your personal passions are encouraged. - Seminar leader
Seminar
: Students will sign up in pairs to lead a ~20 minute seminar discussion for the class on 2 readings. Students should first spend roughly 5 minutes summarizing the key takeaways from the readings. The remaining time should be used to synthesize discussion questions (questions different from the reading responses) or hands-on activities for the class. Students are encouraged to incorporate any prototyping materials from the Hive in their activities. - Reading Response (RR): Respond to, in roughly ~100 words, the question posted about the readings. Note: in this class, you should almost never fully read every word of a reading, unless you're the seminar leader. Skimming the readings, particularly to maximize the information gained to time spent ratio, is highly encouraged. A sufficient reading response shows some thought and reflection on the topic and demonstrates that students got the key takeaway from the reading (✓, or 93). A superb reading response demonstrates a novel insight about the reading and connects it in unexpected yet meaningful ways to other course or life material (✓+, or 100).
All assignments will be submitted and graded on Canvas. Most assignments are due before class (11:00am). The basic flow of the course is that Personal Making assignments will be released in class on Monday and due the following Monday before class. Personal Making submissions should also be physically brought to class to be shared and critiqued. Reading responses are always due before the seminar style class where we discuss them.
Grading policies
Group projects will have clear rubrics with further breakdowns. Other assignments (personal making, reading responses, seminar leading, zipcrit) are graded on a scale to emphasize qualitative feedback and instructor comments:
- ✓+ : Exceeds expectations (98+)
- ✓ : Meets expectations (97-90)
- ✓- : Needs work to meet expectations (89-80)
- - : Clearly below expectations
For reading responses, a ✓+ is a 100, a ✓ is a 93, and a ✓- is an 80. For assignments scoring ✓- or below, students have the option of iterating on their work and resubmitting the assignment to gain lost points back. Resubmissions are due a week after grades and comments are released; please message the instructor if you plan on resubmitting. Points lost due to late submission cannot be regained.
I expect everyone to be an active and engaged member during our class discussions. I strive to create an inclusive classroom where every student feels comfortable and safe sharing their thoughts. If I believe you are not participating and learning to the best of your ability, I will send you a message so we can have a conversation about ways to reduce your barriers to participating.
Course Policies
- Students may have 3 excused absences throughout the semester as long as they inform the instructor prior to their absence.
- Students have 7 total late days for individual assignments (reading responses and personal making) to be used however they want.
- After students have used all their late days, assignments will be docked 20% for each day past due. Please note that though late days are possible for personal making assignments, if turned in late, they cannot be critiqued in class. Reading responses must explicitly be noted as “dropped” to be dropped to avoid using late days. As group assignments are presented in class, they cannot be turned in late.
- Students with disabilities should contact the Student Disability Resource Center (SDRC) to request accommodations. I am happy to have a conversation with you to help establish the best plan.
- All policies are flexible. If you are facing an extenuating circumstance, I am happy to listen and help however possible.
Taking a large project based course can be intimidating, but I am here to help! If you need support, please come to office hours or post on Slack. I truly believe that everyone is a creative person and has the capability to excel in this course, even if you’ve never identified as being “creative” in the past.
AI Policy
Students may use ChatGPT/other forms of generative AI for coding assistance in this course as long as it is properly cited. (This course focuses on tool design moreso than tool engineering.) Properly cited means including comments on areas where LLM assistance was used with the prompt given.
Students may absolutely not use AI to generate their written reflections, reading responses, or anything else involving written communications in the course. It is preferred students do not use LLMs for design brainstorming; readings in this course argue it results in less diverse creative ideas.
If the course staff suspects your written work was AI generated, you will receive a 0 on the assignment. If you are unsure if generative AI is allowed or not for a specific case, please just ask the instructor. Please see the department’s academic honesty policy for more details.
Credits
Much of the first third of this course draws from Critical Making at UC Berkeley. Site theme based on Just the Class, a documentation theme for Jekyll. Thank you to the Spring and Fall 2024 cohorts of CS181DT students for their feedback in making the class better :)