Chatbots for Art’s Sake

NYU IMA, Spring 2022 // Instructor: Carrie Sijia Wang

Quick Links:

Week 6: 03/01 & 03/03

Week 7: 03/08 & 03/10

Week 8: 03/22 & 3/24

Week 9: 03/29 & 03/31

Week 10: 04/05 & 04/07

Week 11: 04/12 & 04/14

Week 12: 04/19 & 04/21

Week 13: 04/26 & 04/28

Week 14: 05/03 & 05/05

About


Class Information

Time: Tuesdays & Thursdays 12:20 – 1:50pm

Location: 370 Jay St., Conference Room

Instructor: Carrie Wang / sw3923@nyu.edu / Office Hour Signup

GA: Jung Huh / hj2075@nyu.edu / Office Hour Signup

Class Miro Board (Feel free to use it in class as your sketch board.)

Zoom Link (Only use when you have COVID related concerns such as having to quarantine.)

Support:

Coding Lab

Design Lab

Documentation Lab (Fill out this form if you need help with documenting a finished project)

ITP Residents Office Hours
Scroll down to “Research Residents.”


Description

This class aims to repurpose existing chatbot technologies and use them for the sake of art. The class is twofold, students will engage in labs and workshops to learn and practice different techniques— such as p5.js, p5.speech, RiveScript, RiTa, and Alexa Skills—to create functional chatbots. They will also participate in lectures and discussions that look at the different roles Artificial Intelligence plays in human society, including but not limited to authority, companions, or simply reflections of the humans it interacts with. Chatbots can create experiences that other forms of art cannot. They are interactive by nature—an art piece in the form of a chatbot is only complete with audience participation. They also invite introspection more than any other medium—a user talking to a chatbot is essentially talking to themselves with the assistance of a computer program.


Learning Objectives

At the completion of this course, the students will:

  1. Creatively adopt chatbot technologies to complete artistic projects.
  2. Have a better understanding of the process of project development from ideation to completion.
  3. Develop a set of skills to build functional chatbots.
  4. Learn to think critically about how technology is shaping the world we live in.

Teaching Methodology

This is a 14-week course that meets twice a week. Class time is divided into lectures, discussions, labs, and student presentations.

This course values critical thinking about technology and society as much as learning programming skills.

Tuesday classes are usually dedicated to tech labs in which students work together with the instructor, and with each other, to learn new skills in a workshop setting.

Thursday classes are dedicated to exploring topics related to chatbots and artificial intelligence. These classes alternate between two forms:

01 Lecture, discussion, and student presentations about reading materials.

02 Student project presentations.


Weekly Assignments

  • Weekly assignments alternate between creative assignments and reading assignments.
  • All assignments are due in the form of google slideshow presentations on Thursdays.
  • For reading assignments, students are required to do research, come up with their own unique interpretation of the assigned materials, and present their thoughts in class.
  • For creative assignments, students are required to complete functional projects, present their process and results in class.
  • Students can choose to work on their own or with ONE other classmate for creative assignments.

Final Project

  • The course will culminate with the completion of a final project to be shared in class.
  • We are expected to push our abilities to produce something that builds off or is inspired by the concepts we cover during the semester.

Evaluation

Grades will be determined according to this criteria:

  • Participation (including reading presentations) and Attendance 40%
  • Creative Assignments 40%
  • Final Project 20%

To do well in this class, you should make efforts to learn and explore the lecture/discussion topics and technical tools. You are expected to complete all the assignments on time, have things to show for the in class presentations, and actively participate in discussions.


Attendance

Attendance is mandatory. Please email your instructor if you are going to miss a class. Two unexcused absences is cause for failing the class. An unexcused lateness of 10 minutes or more is equivalent to 1/2 of an absence.


Equitable IMA/ITP

NYU Bias Response Line

More Resources on Equity & Inclusion

Statement of Academic Integrity

Plagiarism is presenting someone else’s work as though it were your own. More specifically, plagiarism is to present as your own: A sequence of words quoted without quotation marks from another writer or a paraphrased passage from another writer’s work or facts, ideas or images composed by someone else.

Statement of Principle

The core of the educational experience at the Tisch School of the Arts is the creation of original academic and artistic work by students for the critical review of faculty members. It is therefore of the utmost importance that students at all times provide their instructors with an accurate sense of their current abilities and knowledge in order to receive appropriate constructive criticism and advice. Any attempt to evade that essential, transparent transaction between instructor and student through plagiarism or cheating is educationally self-defeating and a grave violation of Tisch School of the Arts community standards. For all the details on plagiarism, please refer to page 10 of the Tisch School of the Arts, Policies and Procedures Handbook.

Statement on the Use of Free and Open Source Materials (including code)

This statement is written by Ellen Nickles, adapted from Dan Shiffman’s Code! Course (Spring 2020) at New York University and Golan Levin’s Interactivity and Computation Course (Fall 2018) at Carnegie Mellon University.

You must cite the source of any material / code you use with the exception of examples specifically provided by the instructors or demonstrated in media assets for the program courses. Please note the following additional expectations and guidelines:

Check the License. When using others’ code, pay attention to the license under which it has been released, and be certain to fulfill the terms and requirements of those licenses. Descriptions of common licenses, and their requirements, can be found at choosealicense.com. Some licenses may require permission. If you are confused or aren’t sure how to credit code, ask one of the course instructors and make your best good faith effort.

Use Libraries. The use of general, repurposable libraries is strongly encouraged. The people who developed and contributed these components to the community worked hard, often for no pay; acknowledge them by citing their name and linking to their repository.

Be Careful. It sometimes happens that an artist places the entire source code for their sketch or artwork online, as a resource from which others can learn. Assignments professors give in new-media arts courses are often similar; you may also discover the work of a student in some other class or school, who has posted code for a project which responds to a similar assignment. You should probably avoid this code. At the very least, you should be careful about approaching such code for possible re-use. If it is necessary to do so, it is best to extract components that solve a specific technical problem, rather than those parts which operate to create a poetic experience. Your challenge, if and/or when you work with others’ code, is to make it your own. It should be clear that downloading an artwork from someone’s GitHub and simply changing the colors would be disgracefully lazy. And doing so without proper citation would be outright plagiarism.

Statement on Accessibility

Please feel free to make suggestions to your instructor about ways in which this class could become more accessible to you. Academic accommodations are available for students with documented disabilities. Please contact the Moses Center for Students with Disabilities at 212 998-4980 for further information.

Statement on Counseling and Wellness

Your health and safety are a priority at NYU. If you experience any health or mental health issues during this program, we encourage you to utilize the support services of the 24/7 NYU Wellness Exchange (US +1 212-443-9999). Also, all students who may require an academic accommodation due to a qualified disability, physical or mental, please register with the NYU Moses Center (US + 1 212-998-4980). Please let your instructor know if you need help connecting to these resources.

Statement on Use of Electronic Devices

Laptops will be an essential part of the course and may be used in class during workshops and for taking notes in lecture. Laptops must be closed during student presentations. Phone use in class is strictly prohibited unless directly related to a presentation of your own work or if you are asked to do so as part of the curriculum.

Statement on Title IX

Tisch School of the Arts to dedicated to providing its students with a learning environment that is rigorous, respectful, supportive and nurturing so that they can engage in the free exchange of ideas and commit themselves fully to the study of their discipline. To that end Tisch is committed to enforcing University policies prohibiting all forms of sexual misconduct as well as discrimination on the basis of sex and gender. Detailed information regarding these policies and the resources that are available to students through the Title IX office can be found by using the following link: Title IX at NYU.

Schedule


Week 1: Chatbots in Art

Session 1: Introduction // Tuesday 01/25/2022

SLIDESHOW

In Class:

  • Self Introductions
  • Course Overview
  • Group Activity: Turn Yourself into a Chatbot

HomeworkMini Research: LINK TO REQUIREMENTS

Present your findings on Thursday.

Session 2: Lecture & Discussion // Thursday 01/27/2022

SLIDESHOW

In Class:

  • Lecture and Discussion: Chatbots in Art
  • Share Mini Research

HomeworkRead/Watch/Play:

1. Read: A one-word Turing Test suggests “poop” is what sets us apart from the machines
2. Watch: How the “Most Human Human” passed the Turing Test
3. Play: Agent Ruby, 1999, Lynn Hershman Leeson

Be patient with the chatbot, observe how it behaves, pay attention to how your feelings change in the process of interacting with it.

You don’t have to prepare a presentation this time. But get ready to share your thoughts in class next Thursday.


Week 2: The Human-Machine Divide

Session 1: Lab – p5.js + JSON // Tuesday 02/01/2022

SLIDESHOW

In Class:

  • Tech Demo
  • Coding Exercise
  • Share Sketches from Exercise

HomeworkCreative Assignment #1: A Chatbot Version of You

LINK TO REQUIREMENTS

Present your project in class next Thursday.

Create a chatbot based on how you talk or write in text within a specific context. Define your bot’s purpose, and then think about how you can add your personality to a simple bot with limited capabilities.

Session 2: Lecture & Discussion // Thursday 02/03/2022

SLIDESHOW

In Class:

  • Hosting Your Chatbot on Glitch
  • Share Thoughts About Read/Watch/Play Homework or Remaining Mini Research Presentations
  • Lecture & Discussion: The Human-Machine Divide

Week 3: Lab & Project Feedback

Session 1: Lab – p5.speech I // Tuesday 02/08/2022

SLIDESHOW

In Class:

  • Introduce/Review p5.speech
  • Tech Demo: Create a Simple Voice Interface
  • Coding Exercise: Add Sound to Your Chatbot
  • Share Your Sketches

HomeworkRead/Watch/Play & Respond: LINK TO REQUIREMENTS

Present your response in class next Thursday.

1. Read: Everyone will be able to clone their voice in the future

2. Watch: Google Duplex: A.I. Assistant Calls Local Businesses To Make Appointments & Moniker – Repeat After Me

3. Play: Click Click Click, Moniker, 2016

Session 2: Presentations & Feedback // Thursday 02/10/2022

In Class:


Week 4: Homage to the Human Voice

Session 1: Lab – p5.speech II // Tuesday 02/15/2022

SLIDESHOW

In Class:

  • Tech Demo: Voice Controller
  • Tech Demo: Google Translate
  • Coding Exercise: Voice-Centered Experience
  • Share Your Sketches

HomeworkCreative Assignment #2: The Computer is Listening

LINK TO REQUIREMENTS

Present your project in class next Thursday.

Create a voice/sound only experience. When the user talks, the computer is listening. What will be the computer’s response? Will it repeat what the user has said, try to strike a conversation, play a piece of music that fits the user’s mood, or translate the user’s sentence into another language?

Session 2: Lecture & Discussion // Thursday 02/17/2022

SLIDESHOW

In Class:

  • Present Read/Watch/Play Response Homework
  • Lecture & Discussion: Homage to the Human Voice

Week 5: Lab + Project Feedback

Session 1: Lab – Rivescript I // Tuesday 02/22/2022

SLIDESHOW

In Class:

  • Introduce RiveScript
  • Tech Demo: Greeting Bot
  • Coding Exercise

HomeworkRead/Watch/Play & Respond: LINK TO REQUIREMENTS

Present your response in class next Thursday.

1. Read: How algorithms keep workers in the dark

2. Read: How automation can solve recruitment bias

3. Play: Survival of the Best Fit, Gabor Csapo, Jihyun Kim, Miha Klasinc, and Alia ElKattan, 2019

Session 2: Presentations & Feedback // Thursday 02/24/2022

In Class:


Week 6: My Manager Is a Bot

Session 1: Lab – Rivescript II // Tuesday 03/01/2022

SLIDESHOW

In Class:

  • Review RiveScript
  • More RiveScript
  • Tech Demo: Lifestyle Judge
  • Coding Exercise

HomeworkCreative Assignment #3: A Chatbot That Judges

LINK TO REQUIREMENTS

Present your project in class next Thursday.

So far we have made a bot that mimics us, and another one that listens to us. Now it’s time to create a bot that evaluates and judges us or the work we do. What is the bot judging? What are the standards? Are the standards fair? Do they carry biases embedded in existing systems? Perhaps the chatbot being biased is the point you want to make. Try to make this a fun and/or reflective experience for your user rather than a practical tool.

Session 2: Lecture & Discussion // Thursday 03/03/2022

SLIDESHOW

In Class:

  • Present Read/Watch/Play Response Homework
  • Lecture & Discussion: My Manager Is a Bot

Week 7: Lab + Project Feedback

Session 1: Lab – RiTa // Tuesday 03/08/2022

SLIDESHOW

In Class:

  • Introduce RiTa
  • Generative Text: Markov Chain
  • Tech Demo: Movie Character Bot
  • Coding Exercise

HomeworkRead/Watch/Play & Respond

1. Read: AI Is Learning From Humans. Many Humans. – The New York Times

2. Listen: Internet Trolls Turn A Computer Into A Nazi : NPR

3. Play: Baby Faith, Ryan Kuo, 2020

You don’t need to make a presentation about the assigned materials. But we’ll chat about what you think about them together with the guest speaker! So make sure you spend some time with the materials.

Session 2: Presentations & Feedback // Thursday 03/10/2022

In Class:


Week 8: Who Is the Machine Learning from?

Session 1: Lab – Firebase // Tuesday 03/22/2022

SLIDESHOW

In Class:

  • Firebase – database as a service
  • Tech Demo: Impressionable Chatbot (using Firebase)
  • More Coding Time

HomeworkCreative Assignment #4: Frankenstein Chatbot

LINK TO REQUIREMENTS

Present your project in class next Thursday.

Create a “hybrid” bot whose “brain” is based on a combination of data sources. Think about where you are getting your data and what it means to make a bot from these different sources. Is the bot a mixture of movie characters? Politicians? Pop icons? Politicians + pop stars? Does the bot change how it talks based on user’s input?

Session 2: Lecture & Discussion // Thursday 03/24/2022

In Class:

  • Guest Speaker: Tong Wu
  • Share thoughts about Read/Watch/Play Response Homework

Week 9: Lab + Project Feedback

Session 1: Lab – Alexa Skills I // Tuesday 03/29/2022

SLIDESHOW

In Class:

  • Tech Demo
  • Coding Exercise
  • Share Sketches from Exercise

HomeworkRead/Watch/Play & Respond: LINK TO REQUIREMENTS

Present your response in class next Thursday.

1. Read: Can emotion-regulating tech translate across cultures? | Aeon Essays

2. Read: Men Are Creating AI Girlfriends and Then Verbally Abusing Them

3. Watch: Why China is putting robots in nursing homes

Session 2: Presentations & Feedback // Thursday 03/31/2022

In Class:


Week 10: My Imaginary Friend

Session 1: Lab – Alexa Skills II // Tuesday 04/05/2022

SLIDESHOW

In Class:

  • Tech Demo
  • Coding Exercise
  • Share Sketches from Exercise

HomeworkCreative Assignment #5: Choose Your Own Adventure

LINK TO REQUIREMENTS

Present your project in class next Thursday.

For this assignment, choose one the three options below based on your own needs:

Option 01: If you want to practice creating Alexa skills, make a simple Alexa chatbot that acts like your companion.

Option 02: If you have a previous assignment that you want to work more on, pick this option and make some improvements to one of your previous assignments.

Option 03: If you want to start early on your final project, do a coding experiment that can potentially help you develop your final project.

Session 2: Discussion & Emerging Media Projects Share // Thursday 04/07/2022

SLIDESHOW

In Class:

  • Present Read/Watch/Play Response Homework
  • Share and Discuss Relevant Emerging Media Projects

HomeworkBring a Project

Bring one project in the emerging media field that inspires you and share it with the class next Tuesday.

It can be any emerging media project (not necessarily related to chatbots) done by anybody other than yourself. Be prepared to tell us what it is, play a short clip of its documentation if it’s available, and share with us why and how it inspires you.

Add a link to the project in our inspirations doc.


Week 11: Inspiration Share + Project Feedback

Session 1: Inspiration Share & Final Project Assignment // Tuesday 04/12/2022

In Class:

HomeworkFinal Project Proposal

LINK TO REQUIREMENTS

Present your project pitch in class next Thursday.

Work on your own or in pairs, design, develop, and present a project inspired by the concepts, ideas, and technical tools introduced in this class. The project should creatively utilize the form and technology of chatbots to tell stories, express feelings, and/or convey a certain message to the audience.

Session 2: Presentations & Feedback // Thursday 04/14/2022

In Class:


Week 12: Final Project Proposal + One-on-One Meetings

Session 1: Final Project Proposal // Tuesday 04/19/2022

SLIDESHOW

In Class:

  • Present Final Project Pitch

HomeworkFinal Project Proof of Concept

Session 2: One-On-One Meetings // Thursday 04/21/2022

LINK TO SIGN UP

In Class:

  • Meet with the instructor or the GA one-on-one
  • The rest of the class can use the time to work

Week 13: Final Project User Testing + Work-In-Progress

Session 1: User Testing // Tuesday 04/26/2022

In Class:

SLIDESHOW

  • Assign Final Project Presentation
  • User Testing

HomeworkFinal Project Documentation & Presentation

Complete your final project. Document it, and get ready to present your process and result to the class. Add your slides to the slideshows below:

TUESDAY PRESENTATION DECK

THURSDAY PRESENTATION DECK

Session 2: Work-In-Progress // Thursday 04/28/2022

In Class:

SLIDESHOW

  • Documentation Tips
  • Presentation Tips
  • Share Work-In-Progress

Week 14: Final Project – Presentations (with Guests)

Session 1: Presentations I // Tuesday 05/03/2022

SLIDESHOW

Session 2: Presentations II // Thursday 05/05/2022

SLIDESHOW