Fall 2014»CITA 180 Homework 6

CITA 180 Homework 6

Assigned Date: Monday, Oct. 27, 2014
Due Date: Friday, Dec. 5, 2014
Due Time: 7:50am

Last modified on December 01, 2014, at 10:51 AM (see updates)

This is an assignment that could be pursued either alone or in pairs.


This assignment aims to develop and apply skills in planning, designing and executing a composition using jythonMusic. Possible techniques and approaches in completing this project may include:

  • Using audio recording/manipulation software to generate ambient soundscapes.
  • Combining use of audio samples and MIDI generated sounds.
  • Developing GUI’s (also see guicontrols.py), MIDI, and/or OSC controls (e.g., see Touch OSC, and Control OSC) for realization of live performance.
  • Creating a sonification of an image that results in an interesting musical experience.


Compose a 2-3 minute piece for 1-3 performers. All performers need to be actively engaged in the performance.


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 shown by the code.

Top Documentation

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

#   Author:    Your names
#   Email:      Your email addresses
#   Class:      CITA 180
#   Assignment: Final Project
#   Due Date:  The assignment's due date
#   Purpose:  A full description of your program (use your own words).


Your submission will consist of the following:

  • A hardcopy of a written report (created via Word or Google Docs) that includes:
    1. Your name, class, assignment, and title of piece.
    2. A description of your aesthetic objectives and work process.
    3. List of sounds (for those obtained from a website, include URLs), if using samples.
    4. Your final GUI paper prototype (as a digital image) with caption/description, if applicable.
    5. Your Python source code (in an Appendix).
  • A USB stick (will NOT be returned), to include:
    1. Your name, class, and assignment on an envelope containing the USB stick.
    2. Your report in PDF or Word format (see above).
    3. All your source sound material (strictly WAV or AIFF format), in a separate folder called "sounds".
    4. All your Python programs (source code, sound files, any images used, etc.) in a separate folder called "code". Include a "README.txt" file providing instructions on how to perform the piece (e.g., which programs to run, in what order, etc.). Also include JEM2.jar.


Your grade will be based on how well you followed the above instructions. Also on:

  • How interesting your music is.
  • The variety of ideas you tried in your composition.
  • The aesthetics and usability of your GUI design(s).
  • Quality of coding (e.g., comments, variable names, etc.)
  • Live performance of your piece in class.