Teach Computing - our focus on pedagogy
Our mission
Part of the remit of the National Centre for Computing Education (NCCE) and associated programmes is to provide professional development opportunities for teachers to strengthen their subject knowledge. However, teaching computing involves more than secure subject knowledge. Our educator community need to be equipped with strategies to teach the subject effectively, through a combination of experience and understanding of relevant pedagogical strategies.
We are committed to supporting teachers who want to understand where research has been carried out to support effective teaching and learning of computing. We have written this update to share where we are in that process, and what we are planning.
In 2019, we are focusing on sharing evidence-based practices with educators, alongside practical examples for the classroom. Our goal is to save educators time by collating and translating existing research findings and sharing what the evidence supports, as well as any limitations.
Our plans
Between now and the end of the (calendar) year, we will be developing four main initiatives to help teachers develop and iterate their practice:
- Earlier this year, we launched Research Bytes, a half-termly newsletter focused on sharing research into effective computing pedagogy. Each issue is packed with articles from researchers and educators, practical examples from the classroom, and news and updates.
- Later this year, we’ll be sharing our first pedagogy summaries for computing, including bite-sized and accessible explanations of key strategies, what the evidence suggests, and any limitations. Each strategy will come with practical examples, ready for busy teachers to use.
- We want to help teachers engage with discussions about effective computing pedagogy and will therefore be launching a podcast series in the autumn term filled with interviews, discussions, and practical tips from both researchers and teachers.
- Two online courses focusing on programming pedagogy are in the early stages of development. We will share more about this next term.
You can contribute to any of these resources by writing an article, sharing your experiences, or being a guest on the podcast — contact [email protected] if you would like to be involved.
Our approach
We’ve been researching and developing a set of pedagogical guidelines for teaching all aspects of computing. These guidelines underpin everything we do. Having drawn on current research, as well as experience, we have identified a selection of approaches that are embedded in our content and training. Some example approaches are included in the table below.
Teaching approach | What it means | Useful when... |
---|---|---|
Unplugged approaches with semantic waves | Exploration of a concept away from computers, followed by concrete application, which is then connected back to the abstract concept. | Introducing new abstract concepts such as:
|
Guided exploration | Learners have the freedom to experiment and direct their learning. Guidance is provided through generic goals, available resources, solution elements, or ad hoc support. |
|
Vocabulary, discourse, and questioning | Being consistent and correct in how we use key terminology, both in written and verbal communication. |
|
Authentic tasks | Using cross-curricular, real-world contexts for problems, scenarios, questions, and challenges. Making the tasks relevant to the learner. |
|
When teaching programming, we will be drawing on a range of approaches that are supported by research. A few examples (not an exhaustive list) are included in the table below.
Teaching approach | What it means | Useful when... |
---|---|---|
Peer instruction | Multiple choice questions are posed to pairs with the aim of forming a consensus and challenging misconceptions. |
|
Worked examples | Sample solutions are shared with learners and annotated with subgoal labels, providing a model for similar incomplete problems. |
|
PRIMM | A framework that encourages students to begin by reading code and then to Predict, Run, Investigate, Modify, and Make. (Read more here) |
|
Pair programming | Two learners work together on the same task, taking it in turns to drive or navigate. The driver controls the computing device, and the navigator provides support and direction. |
|
Physical computing | Programming computing devices to interact with the physical world, e.g. controlling lights and motors and responding to sensor input. |
|
We are just at the beginning of this area of the NCCE’s work and will be developing more resources that will help you use relevant research in the classroom. We’ll share more details on the Teach Computing blog in the coming weeks.
About the authorJames Robinson is the Senior Learning Manager at Raspberry Pi Foundation.