Computer Programming for Musicians (3 per semester/maximum of 12) In-depth study of music programming techniques.
MUSIC 451 Computer Programming for Musicians (3 per semester/maximum of 12)
This is an in-depth study of a given music programming language or environment. The language/environment will vary from semester to semester, to include languages such as SuperCollider and Max/MSP. Students will be expected to work independently on a series of projects that require increasing levels of difficulty in programming methodology. The course may be repeated for credit.
Students will be acquainted with the basics of how the programming environment treats fundamental matters such as signal flow, defining functions, variables and arguments, and music synthesis techniques.
These principles will be expanded, with added layers of complexity to the types of problems presented. More complex instruments, processing, and filtering will be covered, along with real-time capabilities (ability of the program to respond to input from audio input or data from an external controller) and the creation of graphical user interfaces (GUIs).
Advanced topics will include algorithmic composition and the creation of plug-ins that may be used by other programs.
As this is an upper division class, students will be expected to be self-motivated and work independently. Assignments will present problems that may be approached in a number of ways - there is no single right answer; putting it another way, the correct answer is the one that works.
Students pursuing the minor in Music Technology (MUTEC) are required to complete two elective courses, one of them upper division. This course will serve those students wishing to apply the minor to areas of software development.
Along with MUSIC 455 Technology in Music, this course may also serve as the second part of an elective music technology cognate for students in the graduate and IUG programs in music theory.
Note : Class size, frequency of offering, and evaluation methods will vary by location and instructor. For these details check the specific course syllabus.