Mark Sawula has been a member of Peddie's math department since 2006. Last summer, he was the recipient of a National Science Foundation (NSF) mini-grant to continue to explore the teaching of creative coding as a way to broaden the appeal and accessibility of computer science.
Background: Sawula submitted a proposal to adopt a CS1 course with Creative Computation in Processing and was awarded $3,000 to support his course development and evaluation efforts. The mini-grant, one of only four awarded to high school teachers, was part of a larger NSF grant. The principal investigators of the larger grant, affiliated with Bryn Mawr College and Southern Methodist University, sought to present the design and development of a new approach to teaching the introductory computing course (CS1) at both the college and high school levels using the context of digital art and creative computation.
The following is an excerpt from Sawula's report to the grant committee:
|This spring, Sawula invited Diana Xu, a principal investigator
of the grant and chair of the department of computer science
at Bryn Mawr College, to visit Peddie and have lunch
with female students interested in STEM fields.
In September 2011, before the initial meeting of my first course built around creative coding, a female student walked into the room, picked up a copy of Casey Reas and Ben Fry’s Processing: A Programming Handbook for Visual Designers and Artists, and started flipping through its pages. Her eyes seemed to grow bigger and bigger, moment by moment, page by page. About two-thirds of the way through the book, she smiled, pointed to an abstract pattern, and declared “I want to make that.”
As an educator who had spent most of his time teaching math, this was a jaw-dropping event. I don’t remember a student ever doing anything remotely like this with a math textbook. This young woman had no prior interest in programming and the course hadn’t even started yet. This was the promise of creative coding at its purest. At times, the work seemed intrinsically motivating.
This and other similar episodes led me to believe that I could create an introductory programming course driven by engagement. I tried to design assignments that had nearly universal emotional appeal. I added elements of “borrowed interest” wherever I could and swallowed any pride I had about pandering. The first sketch, which developed mastery of basic Processing drawing commands, became an invitation to recreate with code a drawing you might have made in kindergarten. The introduction to iteration began with a reminiscence of string-art-style doodles popular in middle school notebooks. Loops were married with conditionals in an assignment to mash-up a favorite cartoon or logo with another image using a variation of a green-screen technique. Those interested could make stickers of their images and affix them to their laptops. On another assignment students took an mp3 of a favorite song and created a music visualization. They made proportional symbol and choropleth maps of either personal data or data of interest to them. Often students felt that we weren’t doing much work because most of the assignments were so playful, and the progression of concepts so natural.
When I learned of the creative coding project by Bryn Mawr College and Southern Methodist University, I thought I was a natural fit. I had been pursuing what I regarded as creative coding for about five years. I was curious to meet other educators committed to this approach. I was also interested to learn how academics described creative coding in the language suitable to formal, federally-funded research.
The vision of creative computation
The principal investigators of this research, Dianna Xu (Bryn Mawr College), Ira Greenberg (Southern Methodist University), and Deepak Kumar (Bryn Mawr College) envision a new kind of introductory computer science course (CS1) with activities which seem more at home in the arts than in applied math. Quotations are from Xu, Greenberg, Kumar, and Wolz (2016), “Creative Computation for CS1 and K9-12.”
“The ultimate goal is to radically recontextualize computer code – from an applied math notation to a creative medium, on par with charcoal, paint, clay, etc. Creative coding is an exploratory and aesthetically driven approach, where students build visual designs and artworks iteratively as they expand their programs.”
The primary rationale behind this move is to broaden the appeal and accessibility of computer science. It engages students who do not identify with traditional STEM subjects. So far the courses are successful at making CS1 more popular with female students as well. Students seem to understand computing concepts on a deeper level and are more likely to pursue further study in computer science.
Clearly this focus on engagement resonated with my efforts over the past five years. I also had a conviction that creative coding not only broadened the appeal of computer science, but also made it possible to reach all students. I wanted to help develop a high school curriculum infused throughout with computational thinking.