Assigned Date: Wednesday, Feb. 12, 2013
Due Date: Wednesday, Feb. 19, 2013
Due Time: 10:50am
NOTE: No late days can be used for this assignment.
Last modified on February 12, 2013, at 09:02 PM (see updates)
This is a pair-programming assignment (i.e., you may work with one partner). You may discuss the assignment only with your partner or the instructor.
This assignment focuses on:
- creating music with computers
- realizing a contemporary piece of music
- performing with a laptop ensemble
- learning ensemble performance skills
Write Python code that generates the different melodic patterns (phrases) in Terry Riley's avant-garde composition, in C.
Use the same MIDI instrument for each pattern. Pick any instrument from the 128 possibilites - your choice.
Your program should create a phrase for each pattern, but should not have a Play.midi(). We will perform these phrases live, as will be demonstrated in class.
Your program should be fully documented. 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." 
In general, you should comment any variable, obscure statement, block of code, function, and class you create.
Your comments should express why something is being done, as opposed to how – the how is shown by the code.
Additionally, your code should always include opening comments as follows:
# Author: <Your Name(s)>
# Email: <Your email address(es)>
# Class: HONS 381
# Assignment: Homework 2
# Due Date: <The assignment's due date>
# Certification of Authenticity <remove one of the following>:
# I certify that this lab is entirely my own work.
# I certify that this lab is my own work, but I received
# some assistance from: <Name(s)>
# Purpose: <Provide a simple, yet complete description of the task being
# performed by this program. It may be several sentences long.>
You will submit your assignment via OAKS. Be prepared to present your work to the rest of the class.
Your grade will be based on how well you followed the above instructions, and the depth/quality of your work.
"Any amount of work can be done in any amount of time... only the quality varies." ~Joao Meidanis
- Cooper, D. and Clancy, M. (1985) "Oh! Pascal", 2nd ed., W.W. Norton & Company, New York, p. 42.