loader image
Skip to main content
  • Introduction:

    In this course, we are going to learn the basics of Creative Coding using p5.js (javascript), a web-based JavaScript library. We will focus on the creation of visual, interactive algorithms using the platform Openprocessing. 


    • Inputs and mentoring will take place physically at ZHdK 
    • Meeting other students will be helpful in developing and building your final outcomes, but the projects are individual
    • All participants will have their own Openprocessing account, where they will upload and share code


    At the end of the course, students will have learned core principles for coding and apply them to creative outcomes. Final results can be embedded in a personal website and shared on the openProcessing community.
  • Deliverables

    • Workbook: Numerous short assignments are set throughout the course. Students will need to share their outcomes throughout the course on openprocessing.com 
    • Final project and presentation 
    • Documentation of the assignments and final project

    Criteria for evaluation

    • Final Project 40%
    • Exam 30%
    • Documentation including short assignments 30%


    A minimum of 80% attendance is required to pass the course.


    Complete all the required exercises on openProcessing.

    Document a short selection of exercises, and all of the main assignments in a pdf form. Include screenshots, and brief comments explaining the process and results. Only short code samples if appropriate, otherwise just have it documented on openProcessing. 

    Submit a PDF documentation to:  


  • 11.11.2021 Seminarraum 4.K15 (Paulina)

    • Loops
    • Nested Loops
    • Arrays 

    12.11.2021 Seminarraum 4.K15 (Paulina)

    • 2D Arrays
    • Easing

    17.11.2021 Seminarraum 4.K15 (Luke)

    • 9-12:00 Kick-off Collaboration Project "Reactive Signs"
    • Vectors

    18.11.2021 Seminarraum 4.K15 (Luke)

    • Classes and Objects
    • SVG + Images

    19.11.2021 Seminarraum 4.K15 (Luke + Paulina)

    • 9:00 Classes and Objects continued.
    • 10:30 Main Assignment Typography Introduction (Luke + Paulina)
    • Main Assignment + Mentoring

    23.11.2021 Seminarraum 4.T06 (Luke + Paulina)

    • 9:00 Libraries
    • 10:00 Main Assignment Microinteractions Introduction
    • 10:30 - 12:00 Mentoring Luke
    • 13:00 - 15:00 Mentoring Paulina

    24.11.2021 Seminarraum 5.D02 (Luke + Paulina)

    • 09:00 Main Assignment Freestyle Introduction (Luke + Paulina)
    • 09:30 - 12:00 Mentoring Luke
    • 13:00 - 15:00 Mentoring Paulina

    25.11.2021 Seminarraum 4.T06 (Luke + Paulina)

    •  Mentoring depending on need

    26.11.2021 Seminarraum 4.T06 (Luke + Paulina)

    • 10:00 Exam 
    • 13:00 Final Presentation Main Assignment


    • Documentation Deadline

  • For the main Assignment, students are to develop 3 separate outcomes:

    Interactive Typography: Produce interactive typography that responds to some input from the user, such as a mouse or keyboard interaction.  

    Unconventional Micro-Interaction: Microinteractions are small moments where the user and design interact, such as in the individual interface components. Choose a typical micro-interaction such as volume control, or colour selector, and create a playful reinterpretation.   

    Freestyle: Produce a visual outcome of your own choosing. The only constraints are that you must use a library and object-oriented coding. 


    • Use the template provided for all of your outcomes
    • Share your work on openProcessing from the start of the assignment 
    • Save iterations of your code throughout your process.