Research insights: collaborative programming and worked examples

Our researchers at Raspberry Pi work to help us understand how people are learning computing and digital making. They talk to children, volunteers, and educators about their experiences, while also drawing on the research of academics and other organisations. Here we summarise the latest piece of research they worked on with Code Clubs, and we hear from Oliver Quinlan, our Senior Research Manager.

hounslow-library---code-club-0045_40297269520_o

The research

In the Autumn term of 2017, the Raspberry Pi researchers worked with six school-based Code Clubs in England to try out a different approach to teaching programming. They wanted to observe the impact of ‘worked examples’: completed projects for the learners to explore, manipulate, and answer questions about. Their specific question was whether this type of teaching material encouraged collaboration between learners.

The six participating schools were split into two groups — one group was given six step-by-step projects structured very similarly to the standard Code Club projects, and the other group was given versions of the projects as worked examples. Both project sets covered the same concept: creating your own Scratch blocks (the Scratch version of defining your own procedures). The club members worked through these projects over several weeks, and in the final week, all the children from both groups got the same challenge to test their newly-learned understanding. Two of our researchers visited the clubs for this final session to observe the children and to interview the club leaders.

The researchers had two main aims:

  1. Find out whether worked examples and discussion prompts encourage more collaborative digital making.
  2. Explore whether worked examples and collaborative problem solving have an impact on children’s learning of a new programming topic.

hounslow-library---code-club-0153_41384485104_o

Findings

Collaborative problem solving

The researchers found that collaboration among the Code Clubbers was the same in the two groups — worked examples had no influence on how the learners worked together. In addition, interviewing the club leaders and observing the young coders gave our researchers insight into the obstacles to successful peer collaboration in Code Club.

“Making collaborative problem solving successful depends on the right combination of many aspects, such as educator support, task design, and group features. Achieving this combination is often challenging in practice, as we found from working with the schools in this project.”

– Oliver Quinlan, Senior Research Manager at Raspberry Pi

Interestingly, one obstacle that they observed was that each club they visited had enough equipment to provide each child with a computer. This led the researchers to conclude that collaboration may be promoted by letting the children work in pairs using one computer. Oliver and his team also thought that Code Club leaders may need more support and information in order to facilitate collaborative problem solving among their learners.

hounslow-library---code-club-0068_40297267880_o.jpg

Learning programming concepts

The team observed that using worked examples to teach programming concepts in Code Club had both advantages and disadvantages. On the one hand, ‘reverse engineering’ a completed project means learners can dive right in to learning more complex programming concepts and are not tempted to spend time choosing backgrounds and sprites. It also allows them to access programming concepts they haven’t seen before.

“I think it was quite good for pupils to have projects that they were mending rather than starting from scratch. When you do that, sometimes you don’t get beyond choosing the background and putting the sounds in. So it’s good to start with having it all there, doing a bit of coding and then I’d say, OK, you can change the background. Otherwise they just get caught up in kind of drawing.”

– Code Club leader

On the other hand, the step-by-step approach to learning gives children the experience of building their own program from the bottom up. And since Code Club’s aim is to motivate and empower children to get really creative with technology to explore their own interests, being able to open a blank Scratch file and build a complete, unique project is crucial.

“[A] mix of worked examples and then doing your own problems might work better. The children get to see the possibilities this way, but I’m not sure they internalise the learning in the same way without building something themselves. I would like more of an alternating structure.”

– Code Club leader

hounslow-library---code-club-0275_40297245890_o.jpg

Impact for Code Club

Although this research did not show a true difference between the two types of projects in terms of collaborative problem solving, there are several things Code Club leaders can take away from it if they would like to encourage more collaboration in their clubs:

“Lots of children in clubs help each other when they are stuck, but there are other ways of collaborating too. Sometimes pairing children up with just one computer can encourage them to work together to think through their ideas. Showing them finished examples of programs can also really help them learn. It’s definitely not ‘cheating’ to have a look at someone’s finished project first — it can really help their understanding.”

– Oliver Quinlan, Senior Research Manager at Raspberry Pi

Share your stories with us!

Have you successfully encouraged collaboration between the children in your Code Club? Or have you tried out an alternative method of teaching that you would like to tell about?

Tweet us your ideas, or send us a message on Facebook. We love hearing about what the community is up to!

Code Club in France: bonjour le monde!

Last month Kat Leadbetter, our International Programme Coordinator, travelled to France to visit a Code Club in Romilly-sur-Seine.

J’arrive en France

It was a beautiful, sunny day when I stepped off the train in Romilly-sur-Seine, a small town about an hour outside Paris. Waiting for me was Fabien Schuft, our Code Club local partner for France.

Kat+Fabien

Kat and Fabien found time for a quick selfie!

Over the past years, Fabien has been busy growing the number of Code Clubs in France and supporting the French community of teachers and volunteers. At the end of 2016, there were 26 French Code Clubs; now, there are 150 from the north to the south, reaching about 2250 children a week! Plus, right now we offer 43 translated Code Club projects for kids to use in their clubs.

unnamed

Poster for a Code Club in France

Our destination for the day was the Code Club at Collège Paul Langevin, one of the first clubs to start in France, more than 3 years ago! Running in the newly renovated school building over lunchtime, the club hosts a mix of children aged 11 to 13 — some coding veterans and others very recent beginners.

Keeping things flexible

unnamed

P1220568

Coding in progress

Club leader Isabelle told me that she believes it is very important to differentiate club time from the normal school day: “Kids are here for fun,” she told me. “We’re in school, but it’s not a lesson; we practise individual pedagogy, and the children can follow their own paths. It’s very flexible!”

In the session, this approach showed itself in how club members practised coding: one pupil was putting a Space Invaders twist on his Clone wars project, while another was creating a game featuring a hilariously abstract puppy-monster; some children chose to work in pairs on their projects, and others chose to code alone.

P1220550.png

Clone Wars with a Space Invaders twist

Walking around the room, what struck me the most was the number of children who said what they loved most about their Code Club was ‘créer’ — to create. They really valued being allowed the flexibility to make both the club and the projects their own, and having a space to use their creativity to make something completely new.

Don’t be afraid!

Isabelle believes that fear of computers should not stop from you getting involved with Code Club: “People who are leading clubs don’t have to be computer scientists, or coders, or experts. They should keep trying things: never stop learning by doing!” Very wise words.

Get involved

You can find out more about Code Club in France at www.codeclub.fr, and if you can help us translate more projects into French, find out about volunteering as a translator for us at www.raspberrypi.org/translate.

Why we volunteer for Code Club

At Code Club we are lucky to have thousands of volunteers who give their valuable time each week to help us on our mission to get young people coding. This National Volunteers’ Week, Caroline Vaan-Canning, our Regional Coordinator for the South West, reflects on what it is that makes people volunteer their time for Code Club.

Time is a funny thing that means different things to different people: numerous physicists and thinkers have attempted to define time, and no single definition is universally accepted.

I have been the Code Club Regional Coordinator for the South West for two years, and in that time, I have had the privilege to meet some of the most wonderful volunteers any charity could hope for. Be they educators, technology professionals, students, or parents, they are all united by their willingness to donate their time in order to support young people learning to code.

Screen Shot 2018-06-06 at 15.03.36

Caroline volunteering at Code Club

Why do these lovely people volunteer for Code Club? I posed that question to four volunteers and received four different, insightful answers.

What motivates our volunteers

Elena from Somerset said she was inspired to volunteer after she saw the impact Code Club was having on her own children. “Code Club is a wonderful way to help children broaden their minds. My children couldn’t get enough of it, and we ended up going to all the sessions available at our local library. As a parent, I have watched my children’s skills grow. That’s the reason I became a volunteer — to help other children’s minds grow too.”

27909384898_e866b060a1_z

Members of Elena’s Code Club recently won the Scratch category at Coolest Projects UK

Meanwhile, KS2 Computer Science educator Neil told me about how being a volunteer has allowed him to develop his own skills. He said: “By running a Code Club, you are not only helping young people to understand the whole coding ethos, but also the way it works in the world around them. As a bonus, we also get to learn with them and have a great time while doing so. You may even get a new career out of it!”

For software engineer and STEM Ambassador Milo, it’s the pure enjoyment of Code Club that keeps him coming back: “Working with children to create fun and imaginative projects is both enjoyable and rewarding. The ideas they come up with often shock me due to their ingenuity and eccentricity.”

volunteers-week

Milo, Elena and Steve at Code Club

Finally, it was a desire to share his love for coding that led software developer Steve to volunteer with Code Club. He said: “For volunteers, Code Club provides the opportunity to share a passion and enthusiasm for coding, and it is very rewarding to see the children develop. For children, Code Club gives them the opportunity to learn a great skill in a fun and engaging manner.”

Why you should volunteer with Code Club

These volunteers and others like them know that life is simply better when you give something back: an hour spent at Code Club doing something to make someone else’s day better, makes your own day better too.

From my own volunteering experience I know that donating time to Code Club can truly make a difference to everyone involved. As a volunteer, the Code Club learning resources help you advance your problem-solving abilities, and encourage you to build your own ideas, no matter what level your coding skills were at before you started. It’s why the Code Club volunteering network continues to grow across the world.

If you are reading this as one of the many wonderful volunteers out there, I just want to say a huge thank you to you for supporting Code Club. If you know someone who would benefit from volunteering with us, please spread the word to them by sharing our website on Twitter and Facebook, or by inviting them to our next meetup.