As more and more schools start teaching computing explicitly in one form or another to all students, the focus moves from advocacy, getting computing for all into schools, towards pedagogy – how best to teach it. There are a number of pedagogical approaches and cognitive strategies that have been promoted, but I would like to look at just one which I have found effective over the years. I think it would be fair to say that many teachers of ICTs are self-taught, and perhaps for this reason, the discovery method is still remarkably popular. The influence of Seymour Papert’s Constructionism, allied with Constructivist learning principles has made direct instruction far less prevalent in the computer class than in perhaps any other classroom. Nevertheless, a lack of direct instruction, I believe, threatens to undo many of the benefits of a discovery learning framework.
Discovery learning is predicated on setting problems which will allow students to learn through grappling with trying to find solutions, drawing on their past learning and knowledge. But there is the danger that no learning will take place at all if there is no scaffolding of the discovery process, and ironically, the greater the reliance on student-centered learning, the greater the need for directed teacher interventions. The greatest weakness of the discovery method is encapsulated in the scholar’s dilemma. How do you discover something that you don’t know exists? You need a more experienced other to, at the very least, nudge you in the right direction.
Teachers who use discovery learning, need to be careful to make sure that students have the tools they need to learn something from problem-based approaches. This scaffolding can take many forms, but without it, learning is a very hit and miss affair. Teachers need to adopt a range of strategies to scaffold the kind of knowledge that will feed into problem based learning activities. For example you can carefully guide students through base skills and knowledge needed, and then set more open-ended projects that build on this learning. Or you can set open-ended projects and make knowledge available where needed as students explore what they need to discover to solve the problems set. Alternatively you can pursue a mix of these approaches, giving some instruction up-front, and then supplementing knowledge where it is needed.
But another approach is also possible. If students are working in groups, you can use a jigsaw technique. Students can be split into expert groups and work on guided assignments so that they become experts in one aspect of the overall task. Groups are then formed by taking a member from each expert group so that each group has multiple experts in different aspects applicable to the task. They then teach each other what needs to be known to perform the task. For example, if a project uses spreadsheets, one expert can be trained in formatting cells, another in creating formulae, another in functions, one in graphing, and so on. When they combine they should be able to tackle a task which requires all these skill sets, and students should learn from each other.
An alternative approach is to have groups work on sub-tasks which combine to solve a larger problem. Each group works on a task which, combined, comes together to provide an elegant solution. For example one group might work on moving a robot, another on the operation of its crane, and so on. These approaches do, however, require different students receiving different instructional input. This can be achieved using a flipped classroom model. Even when I cover material in class, I make a video of the content and post it on my Learning Management System so that it accessible to everyone, even if a student did not do that particular task at the time.
Having said this, managing different instruction for different students is a logistical problem. I prefer to have a wide range of tasks and either allow students to choose tasks they wish to pursue, or to focus tasks around building capacity for particular projects. An example would be the task below. By preparing task cards which set out the brief for any task, but also includes a hint about how to proceed, students can work at their own pace, or use the tasks to build up the skills needed to tackle larger projects. The task card may include very detailed steps to follow, or simply hints.
I have gamified the tasks, which is not necessary, but does, I believe, add a certain something. If you allocate Experience Points (XP) for completing tasks you can use the number of XP earned to unlock larger projects or challenges much in the way that XP allows characters to level-up in RPGs. This ensures that students complete as many tasks as possible, hopefully accumulating base skills needed for the challenges and projects. Because the hints and instructions are on the the reverse side of the task card, as a teacher you do not need to do a great deal of whole class instruction. Jigsaw groups, or sub-task groups can work relatively independently, typically after a whole class session when introducing a new application. If students are still stuck I am able to answer individual queries in class, and there are always the videos as back-up.