logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2019/2020
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 052828 - ADVANCED CODING TOOLS AND METHODOLOGIES
  • 053410 - ADVANCED CODING TOOLS AND METHODOLOGIES MODULE 1
Docente Bruschi Francesco
Cfu 5.00 Tipo insegnamento Modulo Di Corso Strutturato

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (Mag.)(ord. 270) - MI (263) MUSIC AND ACOUSTIC ENGINEERING*AZZZZ052828 - ADVANCED CODING TOOLS AND METHODOLOGIES

Obiettivi dell'insegnamento

The aim of the course, consisting of two modules, is the acquisition of the fundamental conceptual tools of software crafting, coding and testing, with a multifold perspective:
1) to design, develop and test applications and user interfaces aimed at music analysis and composition;
2) to automate some aspect of the performance and production of musical artifacts, through control of software by scripting languages;
3) to experiment with languages that allow to stage live audio/visual performances.


Risultati di apprendimento attesi

At the end of the two modules, students will be able to design and implement a basic musical application, such as a sequencer or a drum machine, using the correct conceptual and technical software design tools. Moreover, they will be able to code scripts that interact with music software such as digital audio workstation to perform automation tasks and to implement new abstractions. Students will also be able to experiment with coding languages to create live audio/visual performances.


Argomenti trattati

MODULE 1:
- Basing introduction to programming in Python
- Using Python for conceptual thinking, exploring solutions, scripting
- Interfacing and playing with DAW APIs
- Overview on other languages for live coding

 

MODULE 2:
- Introduction to HTML5 and Javascript
- Frameworks for the design of applications and user interfaces
- Using and exploring the possibilities web audio API
- Node.js and Python to implement the server side of a web application


Prerequisiti

Basic knowledge of some programming language.


Modalità di valutazione

The evaluation of each module will be based on the discussion of a project that the students will have to implement and make working. The two projects presented could be the components of a bigger and more ambitious work.


Bibliografia
Risorsa bibliografica facoltativaMark Lutz, Programming Python, 4th Edition (Powerful Object-Oriented Programming), Editore: O'Reilly Media, Anno edizione: 2010
Risorsa bibliografica facoltativaShelley Powers, JavaScript Cookbook, 2nd edition (Programming the Web), Editore: O'Reilly Media, Anno edizione: 2015

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
32:30
48:45
Esercitazione
17:30
26:15
Laboratorio Informatico
0:00
0:00
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
0:00
Totale 50:00 75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT
11/08/2020