SICSA Education Director

Repost from

In February, I took over as the SICSA Director of Education, a post which had been vacant since Dr Karen Petrie stepped down last year. Already I’ve been really busy, sitting on a number of advisory boards so far, and I’m only two weeks in! I’m currently a lecturer at the University of Dundee and have been a member of SICSA since 2008 in both Education and HCI. Most recently, I was the SICSA PhD Conference Academic Chair for 2017 in Dundee. This was a brilliant event sharing the future of SICSA and Computing Science in Scotland. This year the conference will be held at RGU – make sure you are signed up, it’s shaping up to be a great few days!

Personally, I have an interest in how social media can be used in education and how we can support our students to take part in group work. However, this is just a very small part of the excellent work being done within SICSA, including links with the SQA on curriculum development, flipped classroom methodologies, early-years computational thinking and involvement in outreach events such as The First Lego League. We have a great base of knowledge, enthusiasm and resources in Scotland to make sure that we are creating technologists of the future, and I’m so excited to be a part of it.

Like many of us, I have been supported by SICSA in many ways over my career, through funding for workshops, away days, all-hands meetings and travel costs. Now I can continue this support for others. I’m planning a great programme that will help us gather momentum as a community to share our ideas and experiences and collectively influence national policies on computing education. This includes a new lecturer induction, a call for workshops, schools engagement and an all-hands education event to showcase what we can do.

If you have any ideas of things that can be done to build the education community, then let me know. I am particularly keen to reach out to universities who may not have been able to engage with SICSA Education in the past, for whatever reasons. Contact me on to get the ball rolling in your ideas. A call for workshop funding will follow in the next few weeks.

CAS Scotland Conference 2015

On 7th November, I attended the CAS Scotland Conference. Below is the links to presentations I gave during the conference.



Introductory materials can be found at Permission is given to use any or all materials. I have provided a Microsoft Word version of the introduction booklet so that you can make changes if you wish.

Etch-a-sketch using Arduino & Processing

Did you spend hours carefully creating your own work of art on Etch-a-sketch as a child? Or maybe you still do as an adult? Read on to see how you can create your own etch a sketch controller using Arduino and create images using Processing.

You will need:

To create the controller, wire up the components as per the wiring diagram below.


This sketch has two potentiometers, one to move up and down and one to move left and right, plus three buttons which will be used to change the colour of the lines being drawn. The main sections of code are:

1.Read in values for left and right potentiometer

// left and right values
left = analogRead(leftPot);
right = analogRead(rightPot);

2. Check if the buttons have been pressed. Do this for red, then green, then blue. If the button has been pressed change the colour code. 0 = red, 1 = blue, 2 = green.

// check if the “red” button has been pressed
// if yes, then set the colour code to “0”
red_prev = red_current; red_current = digitalRead(redButton);
if(red_prev == LOW && red_current == HIGH){changeRedButtonState();}
colourCode = 0;

3.Output three values to the serial port, which can then be picked up by Processing. These are left potentiometer, right potentiometer and current colour selected.

// Output the values to the serial port
Serial.print(left, DEC);
Serial.print(right, DEC);

The processing file receives the three values from the serial port.

1.Map the values from the potentiometer to the width and height of the screen. In this example, the width and height is 600 x 600.

xCurrent = float(a[0]);
xCurrent = map(xCurrent,0,1023,0,600);

2. Set the colour as red, green or blue using the setColour function.

void setColour(String temp){
if(temp == “red”){
col = color(240,85,85);
if(temp == “green”){
col = color(60,237,99);
if(temp == “blue”){
col = color(56,104,198);

3.Use the previous x and y values, along with the current x and y values to draw a line


Like all projects, time run out, and I have other ideas that I haven’t had time to implement. Some things I still have to add are:

  • A clear button or add an accelerometer for “shake to clear”
  • An option to save your creation
  • A colour mixer so that you can create using any colours

New degree – MSc AAC

The School of Psychology and School of Computing at the University of Dundee are proud to announce a new MSc course, due to begin in September 2013. The aims of this interdisciplinary course are to provide individuals with a psychology, computing, industry or clinical care background with a better understanding of the latest developments in: 1) the psychology of the development of language and communication; 2) the design ethnography of AAC solutions; 3) the engineering of AAC solutions; and 4) the effective evaluation of AAC solutions on an individual and group basis. However, the over-arching aim of the course is to provide individuals with sufficient research training to allow them to become effective scientist-practitioners.

For more information on the 12 month full-time course, check the course information page at

Scholarships are available for this course.