Fall2014.CITA180Homework2 History

Hide minor edits - Show changes to output

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 {$LastModified} (see [[http://www.cs.cofc.edu/~manaris/index.php/Fall2014.CITA180Homework2?action=diff&source=n&minor=n | 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 :)
#
# Author: Your names
# Email: Your email addresses
# Class: CITA 180
# Assignment: Homework #2
# Due Date: The assignment's due date
#
# Purpose: Provide a simple, yet complete description of the task being
# performed by this program. It may be several sentences long.
#
(:sourcend:)

!!Submissions

You will submit your assignment via [[https://lms.cofc.edu/ | OAKS]]. Be prepared to demo your music to the rest of the class. Your submission consists of:

# Your Python program. Give it a meaningful name.

# The MIDI file generated from your program.

# 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'' ([[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Hanf Daniel - Oct 6, 2011 947 PM - avril14.mid | MIDI]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Hanf Daniel - Oct 6, 2011 947 PM - avril14.py | Python]]), by Daniel Hanf
* ''Nonsense'' ([[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Cooper Samuel - Oct 6, 2011 224 AM - arpeggiatedNonsense.mid | MIDI]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Cooper Samuel - Oct 6, 2011 224 AM - arpeggiatedNonsense.py | Python]]), by Samuel Cooper ('''original''')
* ''Intro'' ([[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Jones Hudson - Oct 5, 2011 1046 AM - introSong2.mid | MIDI]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Jones Hudson - Oct 5, 2011 1046 AM - introSong2.py | Python]]), by Hudson Jones
* ''Take Five'' ([[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Hegler Johnathan - Oct 6, 2011 413 AM - takeFive_PaulDesmond.mid | MIDI]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2011/Hegler Johnathan - Oct 6, 2011 413 AM - takefive_PaulDesmond.py | 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

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