logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2018/2019
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 052828 - ADVANCED CODING TOOLS AND METHODOLOGIES
  • 053411 - ADVANCED CODING TOOLS AND METHODOLOGIES MODULE 2
Docente Rana Vincenzo
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

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, the student 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, he 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. He 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 http://shop.oreilly.com/product/9780596158118.do
Risorsa bibliografica facoltativaShelley Powers, JavaScript Cookbook, 2nd Edition (Programming the Web), Editore: O'Reilly Media, Anno edizione: 2015 http://shop.oreilly.com/product/0636920033455.do

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
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.1 / 1.6.1
Area Servizi ICT
18/02/2020