Art project made with p5.js


I designed and delivered this series to students from Yachiyoshoin Middle/High School - a private school located in Chiba, Japan.
It was delivered completely online via Google Meet.

I personally enjoy programming with p5.js since I can immediately see how the change I made in my code reflects onto the execution, and that I don’t feel pressured to make anything “serious”. I thought it would be as enjoyable for the students, and thus would be a light hearted way to introduce them to programming.

Participants : 12 students between the age of 13-17 (voluntary)
Time: 11:00am - 12:30pm on Sept. 12th and 19th 2020 (2 consecutive Saturdays)
Objective: Students can design and create their own interactive art projects using the basic commands introduced in the workshop.

Factors I paid special attention to:

  1. To encourage “intentional making”, they were asked to finish a snowman themed project and upload their work onto OpenProcessing. There were mini projects after each activities, which also serves as a check point of their understanding towards each activity. I refered to Khan Academy’s Intro to JS for the idea of the final project.

Materials: 1 Chromebook per student, p5.js web editor.

Day 1:

  • Program to draw shapes such as circle, line and triangle. Mini mission: draw a snowman.
  • Program to color the shapes and background while introducing the structure of setup and loop. Mini mission: color the canvas to express a snowman in a sunny day.

Day 2:

  • Program with variables. Mini mission: make the sun move.
  • Program with “if”. Mini mission: make the sun come back once hit the edge of the canvas.

Points for improvement:

  • Many students had a hard time making shapes exactly as they planned. Next time I would spend more time explaining the coordinates.
  • Speed of learning and programming varied among students. During the workshop I tried to wait until the final student finished before proceeding to the next task, but in the future I will try to adapt to each student more by providing self-learning materials.