Computing at schools? What about the teachers?

As a workshop developer for a Welsh project called Technocamps, I spend my  working life trying to encourage young people and teachers into computing nad computing careers. So imagine my utter joy when I hear that ICT in schools will be replaced by computer science. My initial reaction: YIPEEEEEEEE.

Then FEAR. Who is going to teach this? A high majority of our future computer science teachers do not come from a computing background, let alone an ICT background.  According to the general teaching council of the 28,000 who became teachers in 2010, only THREE had a computing related degree.

Before I started work on the Technocamps project I did my PhD looking at why there aren’t enough women in computing and then did my postdoc looking at something similar. I published papers, researched and was seen as some sort of expert in the area of getting kids into computing. However, I had only been seeing things from one aspect. I did not realize the amount of support and encouragement that schools will need to teach a computer science curriculum. Schools which I had observed, have issues with the current ICT Curriculum.

In order for this reform to work we need to upskill teachers, not a one day training course or a light evening session, they need consistent support. It takes computer science graduates three years to be experts in the subject computer science, teachers need a similar type of training. We need to remember that computing is not as easy as ICT and therefore need to make sure we do not put young people of by having unskilled teachers.

When computers were first introduced into secondary schools, teachers did not know what to do with them and a lot of money was pumped into teacher training and equipment. This training was a session on computers, however this was not enough to increase their confidence in teaching computers. Young people know more about computers than teachers and are able to tell if the teacher is not confident in teaching a subject, which is why its important the right training and support is given.

I am really glad that we are looking up and taking an interest in IT education, however I hope it isn’t a one off speech and I hope that thought has been given about the consequences in terms of the quality of education out young people receive.

 

[updated 11th January 2013, 16:07 - minor grammar issues!]

Three tools to help teach programming to young people

The tools below are what we use in Technocamps to get young people enthused about computing. So far our feedback has been really positive. For ideas on how to incorporate these into the classroom please go to: http://www.technocamps.com/resources . Do you use other tools? I would love to hear about them. Feel free to comment below.

Scratch

Scratch is aimed at 9-11 year old students, although we also use it for 12-14 year olds. Scratch is a fun program to teach. Its drag and drop and does not expose the user to errors. It does not take much to get things happening. E.g. getting a cat to move forward 10 steps is a case of using two drag and drop boxes and pressing start. This is great for younger pupils who are impatient and looking for results straight away. It is free to download and does not take too long to learn. For my experiences on teaching scratch click here. 

Alice

Alice is very different to Scratch, in that the application deals with concepts such as objects, methods and properties and relies on the user being able to think ‘independently’. It is a drag and drop program, so it’s a good follow on from Scratch. The approach we have used to teach Alice is by getting participants to go through the Alice tutorials before getting them to make their own 3D animation. This is an excellent way of getting participants to get to grips with its concepts and the vocabulary involved in object-orientated design. It is satisfying when 15 year olds are leaving the room discussing objects and methods! Again this is free to download and it helps with concepts. For my experience on teaching Alice, click here. 

Green foot

Greenfoot teaches object orientated design using Java. It is recommended that this is taught to students who have had prior programming experience and/or doing A-level / A/S Level computing. They allow users to create ‘actors’ which are in ‘worlds’ to make games, animations and simulations. Its interactive and interaction tools are built into the Greenfoot environment. Unlike the two above, this introduces students to common syntax errors and is a lot more real than the other two.

Alice in a Technocamp wonderland

In my previous blog post I discussed what it was like using Scratch in Technocamps workshops. This post will discuss our experiences of using Alice to help teach object orientated design.

Alice is very different to Scratch, in that the application deals with concepts such as objects, methods and properties and relies on the user being able to think ‘independently’. It is a drag and drop program, so it’s a good follow on from Scratch.

Tutorials.

The approach we have used to teach Alice is by getting participants to go through the Alice tutorials before getting them to make their own 3D animation. This is an excellent way of getting participants to get to grips with its concepts and the vocabulary involved in object-orientated design. It is satisfying when 15 year olds are leaving the room discussing objects and methods!

Although this method is effective, is it is not popular with a number of participants. A number of participants have said that this is the worst part of the workshop, where as others said it was the best part of the workshop.   As a workshop developer I am in a dilemma about how to deal with this predicament. Do we keep going with the tutorials or take another approach?

Trying

After participants have gone through tutorials, they are asked to look at the animations and make their own games. This can be problematic as often they have gone through the tutorials but not paid too much attention to what was actually being taught in them. Or they have realized to do the animation they actually want to do, is actually going to take a long time, which means they get put off and start talking about how difficult Alice is to use.  In other words, they give up far too easily!

Reflection.

Each tutorial takes about 15minutes to go through depending on the ability of the class and their patience with Alice.

Another issue is the program itself, participants have found it slow and therefore frustrating to use. Young people are not the most patient of people!

Overall, Alice gets across the main points to those who want to take the time to learn it and it allows space for creativity. However, we need to find a better way of getting the tool across. Using Alice is OK for prolonged lessons e.g. for 10 lessons or so, which means they can explore at their own pace, but for a one day workshop, we need to think of different ways of teaching it. Any thoughts, hints and advice would be much appreciated!

Rockin it with Scratch

I am not a teacher. I do not pretend to know how to teach pupils, manage pupils and assess their knowledge. Its not what I was trained to do. I am a researcher, I am interested in computer science education so I have only really interacted with young people on a researcher level i.e. what information can I get out of them in order to publish my next paper.

Since taking on my new role at Technocamps, I have found myself in a classroom environment teaching pupils foundation concepts in programming. My primary role (as well as delivering workshops) is to decide upon content and making sure that they are at the right level for the group. But also making sure the content is engaging for young people so they go away thinking they want to learn more (this is actually quite difficult!).

The first three workshop modules that have been developed are based upon programming concepts. We have used Scratch, Alice and Greenfoot to get these concepts across. The aim of these sessions is to emphasise the importance of clear instruction giving and sequencing. The next sections will describe my experiences of using these tools.

Scratch is aimed at 9-11 year old students, although we also use it for 12-14 year olds.

Scratch is a fun program to teach. Its drag and drop and does not expose the user to errors. It does not take much to get things happening. E.g. getting a cat to move forward 10 steps is a case of using two drag and drop boxes and pressing start. This is great for younger pupils who are impatient and looking for results straight away.

However, I have found that there were issues in using Scratch. Getting pupils to understand the concept of ‘control’ was tricky. A majority thought that dragging a box over that said move 10 steps would be enough to move the box. It took a while for them to understand that in order to move something you have to give it a clearer instruction. Interestingly, once they got this concept it was much easier to grasp concepts like ‘forever’ or ‘if then’. Sequencing was a lot easier.

Scratch uses co-ordinates for some instructions e.g. glide to x:-13 Y:-102 to get an object to guide to a particular area, however a majority of year 7s had not done x and y co-ordinates so they did not understand this aspect. So for some pupils the ‘go to’ instruction was more appropriate.

A difficult aspect of teaching anything to this age group is the unwillingness to try themselves, ask their friends for help or to experiment. Even after constant encouragement and emphasis on the fact that they will not break Scratch it was still tricky to get these things across. I do understand that this group are not used to learning independently.

As someone who is not trained as a teacher, my instinct to help a student is to take the mouse from them and do it for them. However, I have since learnt that this is the wrong way! I now try to make sure that the pupils are always the ones who are ‘driving’ the computer and to make sure that they are answering their own questions (this can be difficult! Especially just before lunchtime!)

Overall teaching Scratch is a pleasure as once the pupils gain confidence with the interface, get used to experimenting and are happy with how it works, the results we get are amazing. Pupils who come in with little understanding about sequencing are leaving talking about the ‘if’ loop or how making games is not as easy as they once thought. I don’t think teaching this module requires a huge amount of technical knowledge, but rather patience with pupils to help them get the results they ‘want’. Check out this youtube link for examples of what you can do with Scratch:

http://www.youtube.com/watch?v=jxDw-t3XWd0

Tune in for the next installment where I will put the world to rights about teaching Alice!