Bill Manaris : Fall 2013 / CSCI 180 Final Project

Final Project: Performing with Hybrid Computer Music Instruments

Due Date: Wednesday, December 4, 2013
Due Times: 8am (CITA/CSCI 180 - 01), 12pm (LC 19: CITA 180 - 03)

Last modified on November 25, 2013, at 01:08 PM (see updates)


Create a musical performance that combines one or more computer music instruments (you have made in jythonMusic) with external connected MIDI instrument(s) and/or OSC device(s), such as smartphones, iPads, etc.


Your performance must involve real-time interaction with these musical instruments so that the audience is a part of a live event rather than hearing a recording being played back to them. The interface(s) of your computer instrument(s) will be projected and visible to the audience, and your gestural interaction with your instruments/devices will be visible as well. You should think creatively, then, not only about producing an interesting musical experience but a compelling "theatrical" experience.

The performance should be approximately 3-5 minutes long.

You may work in an ensemble of 2-3 members, or independently.

You should carefully consider the musical (aesthetic) appeal of your work. Do consider (draw) the interest curve of your performance. (Now would be a good time to re-read the article on Interest Curves assigned earlier in the semester.)

Learning Objectives

  1. Develop creative control over musical time, shaping a “narrative” or other compelling experience over an extended duration (3-5 minutes)
  2. Explore techniques of looping, layering, and building interesting sonic patterns
  3. Design appropriate hybrid instrument(s) to accomplish this performance.


  1. Plan out the materials (samples, musical patterns or motives) of the performance and how you will manipulate them over time; think in terms of a story, form, shape, or “interest curve”.
  2. Whether working in groups or independently, rehearse your performance until you can execute it exactly as you intend.


  1. Your program - well documented. Comments should explain what is being done (as opposed to how - the how is in the code). In other words, do NOT translate the code into English. Instead provide the bigger picture and what higher-level task a block of code is accomplishing. That's what we need to know. Also, explain any obscure piece of code (if I was standing over your shoulder and felt the need to turn asround and explain something, then do capture that something as a comment - it would be very appreciated by anyone reading your code.) Also, see my comments/suggestions on your homework 2 printout.
  2. Submit all other materials needed (audio samples, etc.) I should be able to run your program without any errors (or missing files).
  3. A visual representation of the performance (think in terms of a “map” rather than a traditional score) indicating the materials, process, and shape of the performance. You will likely need to use some form of “map” or “score” when you perform, particularly if you are working in groups.

Additional Guidance

Since this is a final semester project, it needs to have a certain Wow factor. (Wow factor is the degree to which the first impression of something makes a person say "Wow!"). Your grade will depend partially on this.

Since this project acts as your final exam, it needs to demonstrate your mastery of the material covered in both classes (MUSC and CSCI). Accordingly, this project is worth 20% of your class grade.

Provide everything necessary for me to be able and generate your music from scratch, through your submission, if I wanted to check things out.


Follow the Golden Rule of Style: "A program should be as easy for a human being to read and understand as it is for a computer to execute." [3]

In general, you should comment any variable, obscure statement, block of code, method, and class you create.

Your comments should express why something is being done, as opposed to how – the how is seen in the code.

Top Documentation

Additionally, your code should always include opening comments as follows:

#   Author:    "Your names"
#   Email:      "Your email addresses"
#   Class:      CSCI 180
#   Assignment: HMWK5
#   Due Date:  The assignment's due date
#   Certification of Authenticity:     
#     < ! Delete one of the two statements below - also delete this comment ! >
#      We certify that this lab is entirely our own work.
#      We certify that this lab is our own work, but we received
#      some assistance from:  "add people's names, Web links, or other references"
#   Purpose: < ! Replace this comment with a simple, yet complete description of
#         what your program does - e.g., "This program plays Chopen's Nocturne,
#         Op 72. No. 1."  The description may be several sentences long. ! >


Your grade will be based on how well you followed the above instructions, and the depth/quality of your work.

Relevant Quote

"Any amount of work can be done in any amount of time... only the quality varies." ~Joao Meidanis

(Printable View of