SEN Students and Coding

I’m frequently allowed to run away with ideas that might seem absurd, so when I was asked if I could work with a small group of students for Creative and Expressive Arts, I decided not to take a safe option but to do something different and use coding as a creative process. The idea was to produce portraits of ourselves and some abstract art for an exhibition using Processing.  In the light of changes to the National Curriculum and it’s focus on coding, this seemed a perfect fit with the aspirations of Michael Gove and his plans for replacing ICT with Computing but it would be less than honest if I didn’t admit this was about using computers to have fun creatively, rather than using them as most of our students usually do, as consumers.

Not all of the code I used was mine, so I contacted a developer of a sketch I had seen, which was the perfect starting place and asked if it would be OK to use the work. The sketch by Damian Todd, produces a really nice effect by rendering the image grab from a webcam as a series of ellipses on the display screen.  The sketch is available for download here.   My students had looked at how we write code to produce ellipses in Processing, which they copied and changed so they could understand how the changes would affect what was on-screen and they really enjoyed using this sketch and producing portraits of themselves using code, while they sat patiently and watched the image build up.  They got quite excited when they began to make out details appearing on the screen, which begin to emerge from the random ellipses the sketch starts to produce.  I like using Processing, especially with students, it is relatively easy to run and also the code is simple enough to be able to show what is happening.  Working this way, made using code accessible, which for my students, enabled them to make changes and see what happened.

You need to sit still! - A portrait produced in the classroom using "Pointillize" a sketch by Damian Todd - Used with Permission

You need to sit still! – A portrait produced in the classroom using “Pointillize” a sketch by Damian Todd – Used with Permission

The initial starting point was that I wanted the two students I was working with, to appreciate that what they were seeing drawn to the screen was being produced by code and that code could be copied or adapted, so we could see the different effects those changes might have in the display window.

In my experience and based on the opinions of others such as Eben Upton at the Raspberry Pi Foundation, technology has pushed our generation of students towards being consumers and not necessarily creators.  A number of young people have told me they are good at computing but what they really mean is they play games on a console, use a mobile phone to access the Internet and are better than their parents at accessing the technology but very few, if any, write code.  For students with Special Educational Needs, the challenge in doing this is magnified because of limitations in their skill sets in the core areas of Maths and English, two areas that are quite useful when it comes to writing code.  Most of the students I work with, are between P7 and level 2, so it can be quite a challenge to provide something that is adaptable and suitable for their needs.

The aim hasn’t been to teach coding but to get them to experience computing by creating content rather than consuming it.  As it is a small group, it has been possible to look at videos on Vimeo of several pieces of computer generated art, created by using technology such as the MS Kinect to capture point clouds or by manipulating video grabs with simple web cams and code sketches. Two examples we looked at, which I feel are fascinating and beautiful were “Unnamed Soundsculpture”, which we viewed and then discussed our emotional responses to and Matt Pearson’s “Frosti”.  We started by stating first whether we liked it or not and trying to give a reason, we then looked at how the work had been produced and tried to understand or discover a little bit about the context of the work. This provided opportunities for socialization, turn taking, listening and questioning and allowed us to make progress on speaking and listening targets as a bonus through our discussions.  In each session we have followed this by producing something of our own by using code and discussing whether we like it.

Image grab by SEN Students using OpenCV in Processing to make Posterized Portraits using Code

Image grab by SEN Students using OpenCV in Processing to make Posterized Portraits using Code

Both students have written code in the Processing IDE, by copying and adapting code I had written first.  The code is deliberately simple, purely to draw 2D shapes they recognise and change the colour. Once they had seen how easy it was to do this we decided to move the position of the shapes on-screen and change the x,y position parameters for the shapes. This they managed with a level of support but by the third week they were copying examples of code that allowed them to map the x, and y coordinate of the shape to the mouseX and mouseY position and draw a shape to the display where ever the mouse was moved.   I don’t have grand ideas that what we have been doing, will turn them into independent coders but one of the students is very good at correcting errors they make and can use the previously written lines of code as a guide for new code lines they enter.  Using code this way enabled them to take control and affect what we saw being produced on-screen, sometimes with a simple change that did nothing else but turn colour grabs to grayscale.

Image manipulation in Processing using OpenCV and Webcams

Image manipulation in Processing using OpenCV and Webcams

The students supported each other, working jointly on producing a number of portraits using coding sketches in Processing and web cams.  They have since progressed to creating abstract art pieces from an application I had written in Processing to draw simple shapes, which they further manipulated by using Photoscape to apply additional effects and produce a finished abstract image.  Photoscape is a free application for manipulating images, which has been relatively easy for them to start to use.

Both students now appreciate that behind a lot of the things they see on a computer and experience, is code someone else has entered to create the content. They have also seen they can become creators as well and that coding can sometimes be the first step in a process to create art.  I am very proud of what they have achieved in doing this and how they have both developed further ICT skills by learning to use some of the functions available in Photoscape.  Photoscape is free and quite simple to use and has proved to be more accessible for their use, than some of the alternative  and obvious popular choices from other developers.  They now use this software with increasing independence, to further manipulate the images they captured or created using code, by applying different effects and combining images to create a finished panel consisting of video grabs from webcams or abstract art.  Some of the pieces created they have proudly taken home and both students are really excited to think there is a possibility the work they have produced in these sessions will be included in an exhibition to be held at a local art gallery later in the year.

Abstract Art Image from a sketch in Processing, manipulated in Photoscape by SEN students using Creative Coding to make Art

Abstract Art Image from a sketch in Processing, manipulated in Photoscape by SEN students using Creative Coding to make Art



Damian Todd’s Blog Post and Processing Sketch “Pointillize”


Frosti” on Vimeo

Unnamed Soundsculpture ” on Vimeo

Oak Grove College Art Gallery on Flickr – Link to students art work and experiments with coding


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s