The Computer Science Student-Centred Instructional Continuum
The Computer Science Student-Centred Instructional Continuum (CS-SCIC) was created for professional development to help teachers understand their choices when designing learning activities for teaching programming (Waite & Liebe, 2021).
As shown in Figure 1, CS-SCIC presents teaching approaches ranging from copy code to tinkering in a simple linear form. The continuum is not meant to be followed in a particular sequence, nor does it recommend any particular approach above another. Rather, it introduces teachers to the variety of instructional approaches that are available for them to select from.
The continuum is loosely ordered by the degree of scaffolding, or support, that is provided by each approach. For example, copy code activities are very tightly controlled by the task, whereas a tinkering activity has no scaffolding apart from the constraints of the programming environment and language being used.
Scaffolding can be provided by the task, resources (e.g. help sheets), or more knowledgeable individuals (teachers, peers, and other supporting adults).
CS-SCIC is used in professional development and during lesson planning. Teachers use the continuum to reflect on each approach and to think about how tasks scaffold the learning and how this scaffolding is faded out over time.
By having a framework to describe instructional approaches, educators working in, or across schools, can verify they have the same understanding of what the different approaches look like in their context. Educators can review how they use the different approaches over time and consider what this might mean for students.
“CS-SCIC has six instructional categories:
1) Copy code: students are given step-by-step instructions to follow, e.g. copy an example program;
2) Targeted tasks: students are given a short task, e.g. fix buggy code, Parsons problems;
3) Shared coding: the teacher thinks aloud as they design and write code, sometimes called demonstrating or live coding, e.g. teacher models how to write a program;
4) Project-based: students are provided with a project goal and create a solution, e.g.create a quiz in Scratch;
5) Inquiry-based: students consider a scenario or question and create a solution, e.g. explore a set of code commands and discover ways to use them;
6) Tinkering: completely unstructured student-led exploration, e.g. explore a software”
(Waite & Liebe, 2021).
Within each instructional category, there are activities that have more or less scaffolding. For example, targeted tasks could be a set of questions to answer or a program to modify with a range of options to include.
Teachers often sequence instructional approaches to create a pedagogy pattern. For example, PRIMM is a sequence of activities used to teach programming, including stages of Predict, Run, Investigate, Modify, and Make (Sentance, Waite & Kalia, 2017). This sequence includes targeted tasks and project-based activities, and it gradually fades scaffolding from more tightly constrained activities to more open, project-based learning.
About the author
Jane Waite Researcher, Queen Mary University of London and Raspberry Pi Computing Education Research Centre