Course Outline

Below is an outline for teaching this book as a course/workshop.

## Learning

Over the course of ten lessons, students will learn:

  • The basic principles of music
  • Working with audio in the browser via the Web Audio API and JavaScript
  • How to program the basic building blocks of music
  • Techniques for generating music using algorithms

Requirements

Lesson Plan

Week 1 - Introduction

  • Class intro
    • Learning objectives
    • Overview
    • Final project
  • Development environment setup
    • Browser: Web Audio API support
    • Editor
    • Node.js
    • Git
    • Project template
  • JavaScript/Web Audio API primer
    • Eloquent JavaScript
    • MDN Web Docs

Week 2 - Primers

  • JavaScript/Web Audio API primer (cont.)
  • Generative primer
  • Music primer

Week 3 - Music I

  • Notes
  • Scales
  • Timing

Week 4 - Music II

  • Phrases/patterns
  • Movements/sections
  • Parts
  • Scores

Week 5 - Generative I

  • Repetition
  • Randomness

Week 6 - Generative II

  • Probability
  • Grammars

Week 7 - Generative III

  • Recursion
  • Evolution
  • Assignment: Final Project Proposal

Week 8 - Generative IV

  • Machine Learning
  • Assignment: Final Project

Week 9 - Generative V

  • Sonification

Week 10 - Final Project Presentations

  • Presentation of final projects
Last updated on