Over the last few weeks, I spent 6 days with about 200 students at Stone Middle School in Melbourne, Florida, teaching them the basics of making art with code. This artist residency is made possible by a grant from the Brevard Cultural Alliance in association with the Brevard Schools Foundation and the Florida Division of Cultural Affairs, and I’m very grateful to have been part of the program this year. I’m thankful to Pablo Remonsellez at BCA, who invited me to apply to the program, and to Heidi Targee, the STEAM coordinator at Stone Middle School, and Krystal Foster, the art teacher, who were with me in the classroom every day, helping facilitate and document the program. Heidi was kind enough to share the great photos in this post.
BCA’s Technology through the Arts is a type of artist residency that focuses even further on 21st Century Skills by:
- Enhancing technology literacy.
- Teaching STEM (science, technology, engineering, and mathematics) in new and creative ways through integrating the arts in a cross-curricular fashion.
- Facilitating acquisition of 21st century skills and fostering capacity for creativity and innovation.
The program provides educational experiences that transform STEM into STEAM, with an A for the arts, to make the combination more powerful. Integrating arts and design humanize technology and expand the possibilities to understand and use it.
On the first day, I introduced the concept of “computational creation,” or “creative coding,” to the students, along with a discussion about using a sketchbook / design notebook in the creative process. We used Scratch, a free programming environment developed at MIT that is great for teaching beginning programming concepts. It’s a “visual programming language,” one that consists of blocks of functionality that you can snap together almost like LEGOs to construct programs.
We used Scratch 2.0, which is now available in the browser, so it didn’t require any software installation in the computer lab. In preparation for the course, Stone Middle School had the students get permission from their parents to create accounts on the Scratch website, allowing them to save and share their work. I had all of the students join my virtual “class” so they could access example programs that I made for them.
The second day, we started off with an exercise designed to get the students thinking about sequencing and breaking down a complex behavior into simple steps. Two students faced the screen and watched a video of a dance, while the other two students faced the class, unable to see the video. The instructors had to tell the dancers how to do the dance using only words, not motions. We had a great time with this activity, then went through a tutorial on how to make characters dance in Scratch. Much of the curriculum I used and adapted came from the ScratchEd team’s 20 hour course CREATIVE COMPUTING: a design-based introduction to computational thinking, which is a fantastic resource.
Throughout the course, the students utilized their design notebooks to write down and sketch out ideas for projects, make notes about what they were learning, write down goals for the day, and respond to questions at the beginning of each class. I brought in some large photocopies of pages from my sketchbooks and hung them around the computer lab, and showed additional examples of sketchbooks from artists working with technology to emphasize the importance of this part of the creative process and to show them the various ways they could use their design notebook.
On days 3 and 4, we switched from Scratch to Processing, another free and open-source programming environment developed at MIT and targeted at artists and other creative people who have never coded before. Processing is a text-based programming language, so you have to type out everything almost like a poem, but with very strict syntactic rules. In a similar fashion to Scratch, we used a web-based version of Processing, specifically the Khan Academy’s implementation of Processing JS. This provided a few benefits: it introduced students to Khan Academy, giving them an account that they can continue to use for further self-guided learning; it was logistically easier because we didn’t have to install Processing locally or teach the students where to save their work; and it allowed students to share their work. Beyond making sure that students have permission to create accounts, it’s also essential to have a fast, stable internet connection if you go with web-based environments. One day the internet was slow and then down, and it was quite frustrating for all of us!
Both Scratch and the Khan Academy’s Processing JS implementation allow students to “remix” other work very easily. So if a student pulls up someone else’s program and wants to experiment with the code and make it their own, they can do so, experiencing first-hand the benefits of open source and the importance of seeing other people’s code as they learn how to program. Both web apps maintain the link between a remixed work and its source, so you can clearly see when a program was based on another program.
With Processing, we focused on more abstract, algorithmic art and code based on drawing simple shapes. We discussed drawing within a coordinate system, how color works on a computer versus with paint (additive vs subtractive), the draw loop, variables, and basic interactivity. I shared the “chaos game“, a stochastic method for generating a Sierpinski triangle, and talked about algorithmic drawing, giving them an example of mine called Filaments that many of them remixed.
The fifth and sixth days, the students worked on a final project. Some of them gravitated towards Scratch and others towards Processing, and we gave them the option of which environment they wanted to use for their final project, as well as the option to work alone or with one other partner. We started out with a group brainstorming session, then worked through a project plan that helped the students think through the resources they had at their disposal and included some basic storyboarding, then set the students loose on their projects, providing individual help as needed.
As an extra incentive beyond a grade for their art class, we showcased the students’ work at a Friday night event that the Orlando Science Center put on at the school. It was great to see the students show off their work to their parents and friends, explaining both how to interact with their games, artworks, dance parties, and other creations, as well as how the underlying code worked.
Two of my favorites:
If you have any questions, are interested in any other details of these programs or the curriculum, or are interested in duplicating this program at your school(s), please contact me.