Creative Coding I - MUS00106C
- Department: Music
- Credit value: 20 credits
- Credit level: C
-
Academic year of delivery: 2022-23
- See module specification for other years: 2023-24
Module summary
This module provides an introduction to the many forms of music technology, their historical and cultural contexts as well as present-day innovations. You will learn about and put into practice the principles of computer programming (coding), and begin to appreciate what it means to design and build a software system. You will learn the basics of working with audio and symbolic representations of music, and you will design and build your own software systems for music (e.g., something compositional, educational, musicological, a performance, or relating to production), which will be demonstrated in practice at a showcasing event. This module therefore provides various learning objectives that are valuable for your future: 1) it will give you an understanding of music technologies historical and cultural importance, 2) you will start learning how to write computer code, which is a highly sought skill that can be transferable across many professions, 3) you will have a better understanding of how software systems for music technology work and how they are built, 4) you will gain practical and theoretical knowledge of music and signal processing, 5) you will start to learn how to make your own software system to fulfill an interesting music-technological purpose.
Module will run
Occurrence | Teaching period |
---|---|
A | Spring Term 2022-23 |
Module aims
This module aims to:
- provide an introduction to the state of the art in software systems for music technology, including the study of different approaches to software design, programming, and their historical context;
- describe and explain digital signal processing, symbolic music processing, and sound synthesis techniques;
- introduce coding/programming and how this work is manifest in software systems for music technology.
Module learning outcomes
By the end of the taught part of the project all students should:
- understand the basics of audio and symbolic representations of music, and how to process those representations using a computer;
- have the ability to design and program bespoke software tools for various music-technological purposes.
Indicative assessment
Task | % of module mark |
---|---|
Essay/coursework | 30 |
Essay/coursework | 40 |
Essay/coursework | 30 |
Special assessment rules
None
Indicative reassessment
Task | % of module mark |
---|---|
Essay/coursework | 30 |
Essay/coursework | 40 |
Essay/coursework | 30 |
Module feedback
Written feedback within 20 working days of assessment date.
Indicative reading
p5.js, an online resource for learning JavaScript
https://p5js.org/
The Coding Train, videos to accompany learning JavaScript with p5.js
https://www.youtube.com/user/shiffman
W3Schools, an online resource for learning web technologies
https://www.w3schools.com/js/default.asp
Shiffman, Daniel (2015) Learning Processing, (2nd ed.). Morgan Kaufmann.
Kernighan, Brian. W. (2017) Understanding the Digital World: What You Need to Know about Computers, The Internet, Privacy, and Security. Princeton University Press.
Roads, Curtis (1996) The Computer Music Tutorial. MIT Press.
Puckette, Miller (2006) The Theory and Technique of Electronic Music. World Scientific Publishing.