This year I started a Code Club at my local primary school.
It’s still early days for me (I’ve only run four sessions of the Club so far) so I’m obviously not an expert on this stuff. But I thought I’d share some of my first impressions as a volunteer.
What is Code Club about?
If you’ve not heard of it before, Code Club is about giving children aged 9 – 11 a chance to try computer programming.
“A nationwide network of volunteer-led after school coding clubs for children aged 9-11”
It isn’t something that they normally cover in primary school (in theory, this should all change from September 2014 with Year of Code, but we’ll see how that works out), so Code Club is an attempt to introduce programming in primary school, rather than wait until it gets introduced in Secondary school.
How does it work?
Code Club is run as a national network of volunteer-run after-school programming clubs.
Code Club (the organisation) provides some basic structure, making it much easier to start a new club. And they provide all the teaching materials: the overall term plans and curriculum, as well as the individual lesson plans with all of the resources.
As a volunteer, I just need to turn up and deliver it.
The model, it appears to me, to be designed with an assumption (or at least a requirement) of a very low level of teaching expertise. As volunteers, we’re not expected to be able to teach a lesson.
For each class, the children are each given a detailed set of step-by-step instructions, that walks them through what they need to do. As a volunteer you are there to answer questions or help them out with some debugging when things go wrong.
It doesn’t matter if you wouldn’t be able to stand in front of a room full of school kids and teach a lesson. Everything they should need to know should be included in the worksheets. If you can hand out some sheets, and then wander around the room answering basic technical questions about the activity, then you’d absolutely be able to do it.
How long does it take?
I’m running a weekly club.
The weekend before each club, I log on to the Code Club website, and download the resources for my next session. Grace (my 9 year-old) is my guinea pig – I give her a copy of the instructions, and watch her work through them. This gives me an idea of which bits are complicated and where the children in the club might run into problems.
(If I didn’t have Grace to test stuff on, I’d at least need to spend 15-20 minutes running through the lesson for myself. You need to familiarise yourself with the session so you’ll be ready to help and answer questions about it.)
The morning before each club, I spend five minutes printing out copies of the worksheets to take to school with me.
The afternoon of the club, I go to school ten minutes or so before the end of the school day to get my register ready and make sure the computers are on, etc. The club itself lasts for an hour.
So all-in-all, I’m spending about a couple of hours a week on this.
But it’s absolutely worth it – it’s one of the most fun and rewarding things I’ve started this year, and I’m loving doing it.
What is taught?
Code Club currently has a four-term plan.
Term One uses Scratch to learn the basics of programming: using a visual programming tool designed for children to introduce essential concepts like control structures and variables.
Week one : We made a game where you control a bug trying to avoid the cat as it chases you
scratch.mit.edu/projects/17712033 by gracelane
Click on the green flag to start, then move the mouse pointer to control the bug. You gain points the longer you avoid the cat, and lose them when you get caught.
Week two : We made ‘Whack a Witch’, a game where you have to catch witches to score points
scratch.mit.edu/projects/17065522 by gracelane
Click on the green flag to start, then click on as many witches as you can before the time runs out. The smaller witches are faster but will get you more points.
Week three : We made a two-player game where you race an animal to the finish
scratch.mit.edu/projects/17712023 by gracelane
Click on the green flag to reset, then click on the START button to start the race. To control the parrot, press the ‘A’ key repeatedly to move, and ‘Q’ to activate your boost. To control the lion, press the ‘L’ key repeatedly to move, and ‘P’ to boost.
Week four : We made a fruit machine game
scratch.mit.edu/projects/17711997 by gracelane
Click on the green flag to start, then click on the STOP button when the three spinners match. If you get two or three of the symbols match, you score points.
Term Two is still using Scratch, but starting to get more complicated. There is a sample class from Term Two available on the Code Club site.
Term Three takes a break from functional programming, and is an introduction to how HTML and CSS is used to make web pages.
Term Four returns to what was learned using Scratch, but the children start writing programs in Python.
The kids gave me tips for my first Code Club session today: "Don't tell them any of your jokes" and "Don't be silly like you sometimes are".
— Dale Lane (@dalelane) January 20, 2014
Why am I doing this?
I’m running Code Club at my kids’ school.
Grace did a barcamp talk last year about the computing she gets taught at school. That did get me thinking about how she wasn’t being taught about programming. She was learning how to use computers (e.g. how to type, how to use MS Office, etc.) but nothing about how computers work or how to tell them what to do. And I think the principles behind programming are hugely valuable to learn from an early age.
I’m lucky enough to not be totally dependent on the school to teach my kids this stuff. I do share some of what I know with them – for example, Grace had used Scratch with me before, and we’ve done other projects like making an interactive e-card.
And as it turned out, my Code Club was so over-subscribed that there wasn’t room for my kids to attend anyway. I was inspired by wanting my own kids to learn more, but I’m not really doing it for them – I’m trying to do it in a way that hopefully makes a difference to more than just my kids.
Worst bit of running Code Club today: one of the kids after recognising my surname saying "Oh yeah! You *do* look like Grace!" 😉
— Dale Lane (@dalelane) January 27, 2014
Was it hard to start?
I knew the school didn’t have a Code Club. So I e-mailed the headteacher to ask if they’d be interested and volunteered to run one. They jumped at the chance.
The Code Club website has a checklist to follow to make sure I sorted out everything I needed (such as getting the criminal records checks, etc.). In fact, it enforces it – it won’t let you download any resources until you’ve uploaded evidence that you’ve done everything you need to first.
And the school did all the work sending out letters to parents to explain the new club and all the permissions slips etc. that go with starting any new club. There was very little I needed to think about.
Can you get involved in any other ways?
If you like the sound of this, but you’re still not sure about committing to regularly running a school club, there are lots of other ways you can support the project.
As I said, Code Club provides all of the lesson materials and resources to make this possible. What I didn’t mention is that they’re all on github and created by volunteers. There is lots you could do, both big and small, that would help make a difference.