Last week I attended the EduTech Africa 2019 Conference in Johannesburg and would like to wrap up my thoughts on the conference with a few observations. Now that the dust has settled the thing that sticks out most in my mind is the clear recognition of the rise of Computer Science as a K-12 academic discipline. The government’s commitment to rolling out IT as a subject, and the focus on coding across all age groups has established a clear sense that Computational Thinking and Computer Science belongs in the core curriculum in all schools. The big question is then how we get there. The announcement recently that PISA Assessments, which offers international benchmarks in Maths & Science, will now include Computational Thinking and Computer Science is confirmation of this. Most of the talks I attended addressed the issue of how best to teach Computer Science in some form or other. Passionate teachers shared their best practice, and their failures. So, the coda to my reflections on the conference is really to address that question. Is there a best method to teach Computer Science?
NS Prabhu (1990) in answering the question of whether there is a best method of teaching or not, concluded that the key factor in teaching success lay with the teacher’s sense of plausibility, the teacher’s sense of self belief that what they are doing makes sense, how passionate they are. There is clearly a great deal of plausibility around the teaching of Computer Science at the moment. Obstacles are being dealt with as opportunities, and there is a very real sense that inventiveness and creativity can overcome the constraints of budget and lack of training.
The clear consensus amongst teachers seems to be that physical computing forms the best approach. Most presentations highlighted the use of coding in conjunction with 3D printing and robotics. My very first exposure to teaching computing was with Seymour Papert’s (1980) logo system. I did not have the turtles, using only the computer interface, but I tried to make it more concrete by using physical cards with shapes students had to emulate. Computer Science is a very abstract subject and needs to be concretised for students as much as possible. The cost of all the kit needed to do this is prohibitive.
But I digress, back to best methods. Another strong thread in the conference was computing for problem solving. I have to say that I am a little dubious about the whole Computational Thinking leads to better problem solving generally. I believe it leads to better problem solving in computational contexts, but transfer of skills from one context to another is always problematic in my view. Nevertheless, I do believe that students should be given real world problems to solve as far as possible and Computer Science teachers are leading the way in envisioning how coding could form a central plank in cross-disciplinary problem solving exercises. There was a great deal of talk at the conference about the need for teachers to “come out of their silos.” There is certainly no need for CS teachers to set projects divorced from the real world, or set problems narrowly about computers.
The final method that was raised at the conference was unplugged computing, an approach which involves modelling algorithmic thinking without a computer. For example students might be asked to write code to control a class-mate acting as a robot to perform a certain task. A talk by a primary school teacher on coding in the junior years had us all playing rock, paper, scissors. I’ve forgotten why, but it was great fun!
In the end, my take-away from the conference was to think about the best approaches for my own classes. And most particularly how to integrate all three of these approaches better. To my mind this is the best sort of take-away!
Papert, S, 1980. Mindstorms : Children, Computers, and Powerful Ideas. Basic Books. https://dl.acm.org/citation.cfm?id=1095592.