Fall2014.CITA180Homework2 History

Show minor edits - Show changes to markup

Changed line 13 from:
  • MIDI percussion
to:
  • MIDI percussion (optional)
Changed line 3 from:

Due Time: noon

to:

Due Time: 9:55am

Changed line 11 from:
  • creating interesting music with jMusic
to:
  • creating interesting music with Jython Music
Added lines 1-69:

Assigned Date: Monday, Sep. 1, 2014
Due Date: Monday, Sep. 8, 2014
Due Time: noon

Last modified on September 03, 2014, at 11:05 AM (see updates)

Purpose

This assignment focuses on:

  • creating interesting music with jMusic
  • MIDI melodies, chords, etc.
  • MIDI percussion

Assignment

In class we worked through several programs that put all Jython Music data structures into practice. Write a Jython program that generates an interesting piece of music.

Documentation

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." [1]

In general, you should comment any variable, obscure statement, block of code, etc. you create. Follow the textbook examples on how to document code.

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

(:source lang=Python tabwidth=3 -trim :)

  1. Author: Your names
  2. Email: Your email addresses
  3. Class: CITA 180
  4. Assignment: Homework #2
  5. Due Date: The assignment's due date
  6. Purpose: Provide a simple, yet complete description of the task being
  7. performed by this program. It may be several sentences long.

(:sourcend:)

Submissions

You will submit your assignment via OAKS. Be prepared to demo your music to the rest of the class. Your submission consists of:

  1. Your Python program. Give it a meaningful name.
  2. The MIDI file generated from your program.
  3. A printout of your program - to be submitted in class during the performance.

Grading

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

Some Interesting Submissions

Here are a few interesting submissions from an earlier semester:

  • Avril 14 (MIDI and Python), by Daniel Hanf
  • Nonsense (MIDI and Python), by Samuel Cooper (original)
  • Intro (MIDI and Python), by Hudson Jones
  • Take Five (MIDI and Python), by Johnathan Hegler and George Woolston

Relevant Quote

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

Reference

  1. Cooper, D. and Clancy, M. (1985) "Oh! Pascal", 2nd ed., W.W. Norton & Company, New York, p. 42.