Music 256a + CS 476a | Fall 2025
Music, Computing, Design: The Art of Design
Stanford University
Ge Wang and Eito Murakami (TA)




syllabus | assignments | final projects | gallery

class: MW 3:30-5;20pm
location: CCRMA Classroom (the Knoll)
prerequisite: prior programming experience

textbook
Wang, G. Artful Design: Technology in Search of the Sublime
Stanford University Press, 2018. (ISBN: 978-1503600522)
(Available at the Stanford Bookstore and here for purchase)

course description
This course explores the artful design of interactive musical software, tools, instruments, toys, and games. Topics include strategies for crafting interactive systems, audiovisual design, game design, and the aesthetics dimension of shaping technology in our world today. Course work features several programming assignments, short weekly reading responses, an emphasis on critical design feedback, and a “design your own” final project. Students will learn to create audiovisual software systems and prototype them using the ChucK/ChuGL programming language. Prerequisite: experience in C/C++, Java, ChucK, Unity, or Unreal Engine.

256a topics include:

  • real-time software system design for music (integrating audio, graphics, interaction)
  • audio-visual interactive programming
  • technology-mediated toolbuilding for creative expression
  • game and toy design for music
  • a practical philosophy of shaping technology
(see final projects from: 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2015, 2014, 2013, 2011, 2010 and 2009)

assignments
  • weekly reading responses: see guidelines + schedule

  • homework #1: Reading Response + Design Etude + ChucK Exercise
    due date: Sunday (9/28) 11:59:59pm

  • homework #2: Sound Peeking
    due dates: milestone
    - Tuesday (10/7, 11:59:59pm) video demo on webpage, URL submitted to Canvas.
    - Wednesday (10/8, 3:30-pm) in-class critique.(in-class feedback)
    due dates: final deliverables
    - Thursday (10/16, 11:59:59pm) final video demo on webpage, URL submitted to Canvas
    - Wednesday (10/15, 3:30pm) OR Monday (10/20, 3:30pm) in-class presentation. (in-class feedback)


  • homework #3: Interactive Audiovisual Music Sequencer
    milestone 0
    - Thursday (10/23, 11:59:59pm) webpage + initial research + 3 sketches, URL => Canvas.
    milestone 1
    - Tuesdsay (10/28, 11:59:59pm) working core mechanic, URL => Canvas.
    - Wednesday (10/29) in-class presentation. (in-class feedback)
    milestone 2
    - Tuesdsay (11/4, 11:59:59pm) working core mechanic, URL => Canvas.
    - Wednesday (11/5) in-class presentation. (in-class feedback)
    final deliverables
    - Tuesday (11/11, 11:59:59pm) final video demo on webpage, URL => Canvas.
    - Wednesday (11/12) in-class presentation. (in-class feedback)

  • final project: Design Your Own Interactive Audiovisual Software Tool
    "Design and prototype an interactive software tool in ChucK/ChuGL, integrating real-time audio and graphics and interaction."
    milestone 0
    - Thursday (11/13, 11:59pm) webpage + 3 brainstorming sketches
    milestone 1
    - Tuesday (11/18, 11:59pm) something working: core mechanics
    - Wednesdsay (11/19) in-class presentation. (in-class feedback)
    milestone 2
    - Sunday (11/23, 11:59pm) minimal essential system
    - Monday (12/1) in-class presentation (in-class feedback)
    final deliverables
    - Wednesday (12/10, noon) polished final deliverables + documentation
    final presentations
    - Wednesday (12/10, 7pm, CCRMA Stage) public final presentations (in-class feedback)



    MCD | CCRMA | music | CS | stanford