Accessibility statement

Programming for Digital Media (Part II) - TFT00044C

« Back to module search

  • Department: Theatre, Film, Television and Interactive Media
  • Module co-ordinator: Dr. Alessandro Altavilla
  • Credit value: 20 credits
  • Credit level: C
  • Academic year of delivery: 2024-25
    • See module specification for other years: 2023-24

Module summary

In this technical module you will continue to develop your programming skills in p5.js, turning your ideas into prototypes. You will learn how to solve problems with computers using a range of algorithmic abstractions, computational models and programming paradigms. This includes thinking about how to effectively model systems using data structures, event-based programming, and object oriented design. These principles will develop your understanding of approaches used in contemporary development platforms and how to use your skills in implementing increasingly complex interactive and creative media applications such as games, interactive stories, data visualisation projects, and more.

Module will run

Occurrence Teaching period
A Semester 2 2024-25

Module aims

The module aims:

  • To continue to develop your understanding of computer programming and your skills in applying this knowledge in the context of creative
  • applications and interactive media.
  • To advance your skills to include an understanding of and ability to apply contemporary programming concepts and paradigms (e.g. abstraction, object-orientation, data structures and algorithms, event-based programming) to model problems and programming solutions.
  • To develop your understanding of code as creative and interactive media, creative coding algorithms and techniques.
  • To consolidate an understanding of the programming skills and workflows involved in software development in creative and interactive media contexts

Module learning outcomes

By the end of this module you will be able to:

  • Perform computational thinking, relating to abstraction and automation as a way of solving problems, designing systems and linking them to human behaviour.
  • Transform such designs in working programmes implemented in programming languages focusing on digital media (e.g. p5.js).
  • Understand the nature of software design, engineering, and practices for creative and interactive media contexts.
  • Solve unseen problems and deliver tested working solutions.
  • Abstract from detail and design solutions using programming abstractions.
  • Effectively communicate technical information and programming solutions.


Task Length % of module mark
Programming assignment : Programming assignment plus report
N/A 100

Special assessment rules


Additional assessment information

There will be 2 formative exercises based on the work done in the practicals.


Task Length % of module mark
Programming assignment : Programming assignment plus report
N/A 100

Module feedback

You will receive written feedback in line with standard University turnaround times.

Indicative reading

Shiffman, D. (2024). The nature of code (second edition).

Haverbeke, M. (2024). Eloquent Javascript.

Levin, G. and Brain, T. (2021). Code as creative medium. The MIT Press.

Nystrom, R. (2014). Game programming patterns.

High quality online material is available to support learning of module content:


The information on this page is indicative of the module that is currently on offer. The University is constantly exploring ways to enhance and improve its degree programmes and therefore reserves the right to make variations to the content and method of delivery of modules, and to discontinue modules, if such action is reasonably considered to be necessary by the University. Where appropriate, the University will notify and consult with affected students in advance about any changes that are required in line with the University's policy on the Approval of Modifications to Existing Taught Programmes of Study.