Please note! Course description is confirmed for two academic years, which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.


On successful completion of this course, students will be able to:

  • Create interactive projects combining multiple media, for different digital platforms and environments.
  • Use openFrameworks for creative purposes.

Credits: 3

Schedule: 17.05.2021 - 21.05.2021

Teacher in charge (valid 01.08.2020-31.07.2022): Nuno Do Nascimento Correia

Teacher in charge (applies in this implementation): Nuno Do Nascimento Correia, Matti Niinimäki

Contact information for the course (valid 24.04.2021-21.12.2112):

Nuno N. Correia: nuno.correia [at]

CEFR level (applies in this implementation):

Language of instruction and studies (valid 01.08.2020-31.07.2022):

Teaching language: English

Languages of study attainment: English


  • Valid 01.08.2020-31.07.2022:

    The course is focused on the generative aspects of multimedia design and the authoring process, interface and interaction design and the control of media elements in interactive projects. Students will experiment with a broad range of media elements with an emphasis on controlling media behavior through code. Special emphasis will be given to combinations of sound and image: live visuals; sound visualisation; sonification; VJing; audiovisual composition; live cinema; visual music; etc.

  • Applies in this implementation:

    Course topics:

    Introduction to Generative Media and openFrameworks

    2D drawing and text

    Forces and particle systems


    Images and video

    Sound and sound visualization

    Coursework support

    Course code is available at

Assessment Methods and Criteria
  • Valid 01.08.2020-31.07.2022:

    At least 80% active attendeance.

  • Applies in this implementation:

    Grading Scale: 0-5


    Innovative concept

    Media design (visuals and audio) and depth

    Interaction (if relevant) and UX design

    Coding and organization

    Quality of presentation and documentation

    Presentation of project is required.

    Deadline for submitting final materials: 28/5/2021 (links to be made available)

  • Valid 01.08.2020-31.07.2022:

    40% of lectures, 60% of individual practice and final project. 40h teaching.

  • Applies in this implementation:

    The lectures will consist of theory and tutorials.


Study Material
  • Applies in this implementation:

    Video tutorials and code (to be distributed in advance of the course)

    Code repository:

    Previous courses:

    Main bibliography:

    ofBook (work in progress)

    Additional bibliography:

    Gross, B. and Bohnacker, H. 2018. "Generative Design: Visualize, Program, and Create with JavaScript in p5.js", Reprint edition, New York, Princeton Architectural Press.

    Hoff, A., n.d., Generative Art, (suggested by Matti Niinimäki)

    Levin, G. & Brain, T. 2021. "Code as Creative Medium: A Teacher’s Manual: A Handbook for Computational Art and Design", MIT Press.

    Noble, J., 2012. “Programming Interactivity: A Designer’s Guide to Processing, Arduino, and openFrameworks” (2nd Edition), O’Reilly Media. (new version coming out in May 2016)

    Perevalov, D., 2013. “Mastering openFrameworks: Creative Coding Demystified”, Packt

    Perevalov, D. & Tatarnikov, I., 2015. “openFrameworks Essentials”, Packt

    Shiffman, D., 2012. The Nature of Code: Simulating Natural Systems with Processing. Examples ported to oF:

    • Valid 01.08.2020-31.07.2022:

      Introduction to Creative Coding, Software Studies for Media Designers, Programming for Artists, or similar skills acquired elsewhere.


    Details on the schedule
    • Applies in this implementation:

      Classes: 17-21/May

      The course will be divided in 2 parts: 

      Part 1 - 3 days of lectures and tutorials;

      Part 2 - 2 days of coursework support.

      Part 1 - Structure of classes (17-19/May):

      17/May, 9:15-10:15h: Introductions (whole group together, synchronous session)

      Mornings (9:15-12h): 

      Students follow the video tutorials planned for the day, teacher is available for any urgent clarification (mostly asynchronous session, students go through tutorials at own pace, teacher is available on Zoom for urgent matters)

      Afternoons (13-17h): 

      1h-2h lecture or student presentations, followed by teacher support regarding the day’s tutorials (synchronous session, whole group on Zoom)

      Part 1 - Detailed schedule (17-19/May):


      Morning (9:15-12h):

      9:15-10:15h: Introductions (whole group, synchronous session)

      Video tutorials (links to be made available):

      - 2D drawing and text (links to be made available)

      Afternoon (13-17h):

      13-14h: Lecture on Generative Art

      14-17h: Support for the video tutorials


      Morning (9:15-12h):

      Video tutorials (links to be made available):

      - Forces and particle systems

      - Perlin noise

      Afternoon (13-17h):

      13-15h: Sharing of inspiration projects by students

      15-17h: Support for the video tutorials


      Morning (9:15-12h):

      Video tutorials (links to be made available):

      - Images and video

      - Sound and sound visualization

      Afternoon (13-17h):

      13-14h: Presentation by guest artist: Rodrigo Carvalho (aka Visiophone)

      14-15h: Presentation of initial project ideas by students

      15-17h: Support for the video tutorials

      Part 2 - Structure of classes (20-21/May):

      Mornings (9:15-12h) and Afternoons (13-17h): 

      Coursework support

      21/May, 14h - Student presentations