Course Syllabus

Networked Music Performance

Michael Dessen, UC Irvine
MUS 237 (2 units), course code 04770, Fall 2020
Course meets: Thursdays, 3pm-4:20pm (online)
My office hour: Thursdays, 1pm-2pm (Zoom ID will be sent to enrolled students) and by appointment (email me your available times)

Course description

This is a graduate-level course introducing networked music performance. In weekly 80-minute class meetings, we will explore making music via internet with low latency audio software. Individual work outside of class will include technological exercises and setup tasks as well as reading and viewing assignments. Our focus will be primarily on audio applications, not video or visual design, and we will only briefly survey creative works and theoretical writings from the field. The main emphasis will be on gaining practical experience and foundational knowledge to enable you to use audio networking tools more effectively in your future creative projects.

The course is designed to serve students with varied levels of technology experience and different equipment, working on home networks. Having an ethernet connection and external audio interface with a microphone is ideal, but at a minimum, you must have internet access, a computer with headphones, rudimentary digital audio knowledge, and some instrument (acoustic or electronic) for participating in music making sessions. We will not produce a concert or develop original compositions in this course, but a final project will provide an opportunity to link the coursework to your own creative activity and research.

Coursework details

This course will be highly collaborative and requires good time management skills. I consider a 2-unit class to represent roughly 3 to 4 hours per week of work outside class. If you find the weekly assignments take you longer, please speak with me right away. If you have the skills to complete them in far less time, I expect you to explore more advanced topics which we cannot cover in depth as a group, such as setting up remote servers, analyzing networks with iperf, or other topics I can suggest as needed. In other words, as graduate students with different skill levels and interests, I expect you to approach this course as a collective laboratory, and to contribute (within a reasonable workload) in ways that advance both your own learning and that of the group. If you have any significant collaborative challenges or confusion about how to participate, you should let me know.

Weekly individual assignments outside of class will be detailed in Canvas Modules, and must be completed by that week's class meeting time. (For example, the Week 1 Module activities are all due by our class on Thursday, Oct. 8.) Modules may contain self-tests with multiple choice questions, which you should complete after doing the assigned reading and viewing. For technical assignments such as installing and testing software, you should expect to experience problems, and part of the work in this class is practicing how to post an effective help request, which you can do in that week's Discussion. I encourage everyone to participate in those discussions. I will try to answer questions as quickly as possible, but please try to start the software setup tasks earlier in the week so there is time to troubleshoot any problems.

Weekly class meetings will be spent mostly on exercises detailed in that week's Module. Meeting meeting links are listed in the Canvas space (see Zoom in the navigation menu). We will typically begin with a brief check-in, then use breakout rooms for exercises in subgroups, and reconvene afterwards to process the results. If using Zoom impacts your audio software, you can leave the meeting, and use the Chat feature in the course Canvas space to message me or others if needed, returning for the final 15 minutes of class.

Your final project can be individual or a collaboration, and must go through several stages of planning starting early in the quarter. You might use it to explore a technical or creative topic not covered in depth in the course, such as video networking, streaming encoders, or networked scores. You could also use it to do a pilot test or develop a technical plan for adapting upcoming thesis projects to covid-related constraints. Guidelines and due dates are detailed in the assignment instructions.

Troubleshooting

A key part of this course will be practicing our "troubleshooting" skills. (Some sources suggest this term was first used in the context of early telegraph and telephone lines, which is not surprising to anyone who manages networks.) Most IT professionals suggest similar principles for troubleshooting: Isolate and define the problem, analyze it and form hypotheses, and test them by limiting variables. With networks and digital audio, it is especially important to trace signal paths, since data flows across many layers of hardware, software, and networks. We will gain practice with troubleshooting as problems come up, and we will also practice making signal/gear diagrams and testing protocols in order to work together more efficiently. Patience and a sense of humor are both highly recommended.

Schedule overview

Weekly details and assignments are in the Modules. Everything (in life) is subject to change.

Week 0 (10/1):

  • [Update: Unfortunately I need to cancel this first meeting.] Special in-person, outdoor activity in a local park (with social distancing and masks required, remote students joining via Zoom): Latency and synchrony exercises at varied distances

Weeks 1-2

  • Reading/viewing: Introductory readings/videos on networked audio, networked music performance, and latency/synchrony
  • Individual tech: Install and test Quacktrip and Pd; install and test JACK; install JackTrip
  • In class: Quacktrip duo tests; JackTrip group tests (hub mode)

Weeks 3-4

  • Reading/viewing: Basic computer networking concepts (Layers, Bandwidth, Topology, Packets, IP, UDP/TCP, NAT, Firewalls, Port Forwarding)
  • Individual tech: Install and test Nettie McNetface; learn command-line basics; install SonoBus
  • In class: Nettie McNetface group tests; SonoBus group tests
  • Week 4: Final project proposals due

Weeks 5-6

  • Out of class assignments: Signal/gear diagrams and group playing exercises
  • In class: Dessen presentation on telematic music as a creative and cultural medium
  • Week 6: Revised final project proposals due

Weeks 7-8

  • Out of class assignments: NMP field/research overview reflection; Working on final projects
  • In class (week 7): Brief intro to inter-app routing and streaming encoders; discussion of NMP field/overview assignment
  • Note that we will not meet in week 8 due to the Thanksgiving holiday.

Weeks 9-10 and Exam Week

  • Dedicated to finishing and sharing final projects
  • Final project documentation due by class time in week 9 (even for those presenting in week 10)
  • There will not be a required meeting in finals week, but we may schedule an optional one.

Evaluation criteria and special accommodations

I will not be assigning grades to individual assignments, but I will communicate with you at any time that your work overall falls below what I consider to be a "B," the minimum grade for satisfying graduate course requirements. By the end of finals week, you must submit a brief (one paragraph) self-evaluation in which you explain the grade you believe you earned for your work in the course, based on the following criteria (equally weighted):

  • Completing weekly assignments on time and arriving prepared for class meetings
  • Fully active, respectful and constructive collaboration in class activities and discussions (which includes listening as well as speaking, and supporting as well as leading)
  • Completion of a final project that meets the guidelines and due dates

I will assign your course grade taking into account my own evaluation of your work alongside yours.

Participation in all class meetings is required, and you must contact me as soon as possible if severe illness or a genuine emergency prevents you from attending a class. Because the group work during class time is a central aspect of the course, attending fewer than 8 total classes for any reason is grounds for a course grade of C or lower. Within these evaluation policies, I will be as accommodating as possible, given the unprecedented nature of our current moment, but it is your responsibility to communicate any difficulties to me as early as possible. If you prefer to talk, simply send me a message saying this, and listing your available times.

If you have a disability that affects your performance in this course, you should document it through the Disabilities Services Center and have them contact me with a contract by the end of the first week of the quarter.

Collaboration, inclusivity and academic integrity

Many activities in this course are collaborative, but you must be always careful to avoid representing another person's work as your own. Any attempt to do so will be considered an academic integrity violation, and will be reported.

My intention is always to facilitate welcoming, inclusive and respectful environments for collective learning among diverse students, in the spirit of the UC's system-wide policies on diversity. Those policies define diversity as "the variety of personal experiences, values, and worldviews that arise from differences of culture and circumstance" and "include race, ethnicity, gender, age, religion, language, abilities/disabilities, sexual orientation, gender identity, socioeconomic status, and geographic region, and more." I expect all of us to aspire to create a supportive environment, to communicate with one another in respectful, constructive ways, and to understand the presence of these diverse life experiences in our classroom not as a burden but as a strength and learning opportunity for everyone. By remaining in the course after reading this syllabus, you are affirming that you share these intentions.

Thank you for reading the entire syllabus. I look forward to working with you!

Copyright note

This syllabus is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0.