I’ve not officially signed up to do a code club yet, but I’m in discussion with a school in my local area that are keen on the idea. While I wait for things to progress, I’ve been thinking about how the sessions might work, and how the club might be introduced to children in an assembly.
Based on notes from the Volunteers section of the Code Club site, the Introduction to STEMNET seminar (PDF of Slides) I attended, and also backed up by Jenn Lukas’ talk at dConstruct 2012 (Audio of her talk here), the key challenge is to engage students and make coding/technology sound fun rather than a waste of time.
Caveat: This is based on optimistic idealisms and the experiences of other STEM Ambassadors in their fields rather than my own experience as I’ve not taught before, but this seems like a good set of guidelines.
- Ask questions, “Have any of you heard of XXX/seen this before?”
- Ask the children their names before they answer.
- Always accept the answer and thank the child for giving it.
- Never say, “No, that’s wrong.”
- Try to think about where the children are coming from in their responses, put yourself in their shoes.
- Keep Q and A short, 2 or 3 minutes, or 5 Qs at most. Any more and bordom/loss of focus tends to kick in.
- If after 2 or 3 attempts the answer hasn’t been given, tell the children the answer in an interesting and non-judgemental way.
- Choose children to answer from different parts of the room, so that the same child doesn’t always get there first.
- With many STEM Subjects being male dominated, try not to over compensate when girls show enthusiasm, ask a balance of boys and girls to respond.
- Use appropriate language for the age group.
- Relate the subject to things they are familiar in every day life. Perhaps also ask if they know of , someone they may know or can relate to, whose career path shows that the subject doesn’t always follow a rigid structure.
- Insist children put their hands up – don’t let them call out the answers.
- Be calm and controlled, quiet by audible, don’t whip them up into a frenzy.
- Don’t try to be cool.
- Materials and programme should speak for themselves, no gimmicks.
- Don’t join in any barracking or teasing of other children.
- If possible, leave 20 minutes at end for further questions that a student may have.
So that’s what I need to consider when planning and holding each session. From a Code Club point of view you’d expect to relate the subject matter to websites, mobile apps, and probably everyday technology and systems that are programmed. Having not seen the Code Club literature yet (something that is evolving every term) I can’t say for sure what the curriculum looks like. It’s possible that I won’t rely soly on the literature provided, but supliment it with additional content that I think is relevant. Some examples might be:
- Introducing the concept of programming via a “human computer”. Each student could be given an instruction. They then work together to produce an output. I think it’s important to introduce these concepts away from the computer first, as long as it’s fun at the same time. The basic building blocks of programming are the same regardless of syntax.
- Touch on ethical, moral and safety issues related to IT and programming. Presumably these are talked about in ICT lessons, but discussing them in a “real” context helps reinforce that understanding.
Then there’s the initial quick pitch introduction to present at Assembly. Some of the concepts from the above list apply – engage them, ask questions, relate it to things they know. Some tips are available from the Code Club volunteers page. Here’s an example of an actual presentation given to children in Assembly by one code club volunteer, it’s a model I think works well, is funny (assuming the children laughed in the right places!) and engaging.
I also came across this, which I think is a perfect example of taking the concepts away from the computer, and into a fun practical game.