Should we all be learning to code?
Picture credit: Photobank gallery / shutterstock
"I liked writing computer programs, now called 'coding', when I had the time to enjoy it and do it well and that is what drives me to go back to it, but I know many people who studied at the same time as me who hated coding and could not wait to stop having to do it", writes Rose Luckin.
The benefit of understanding computer science, including coding is that it gives you the power to build things, like apps, rather than merely use them; to make things happen, rather than have them happen for you without understanding how or why; and to be part of a vibrant global community of people who like to code and work together to change the way that we interact with our technology.
However, it isn’t for everyone and does not necessarily need to be. We certainly need a more technologically literate population, as noted by the Foresight Wider Implications of Science and Technology Report and the Royal Society report into the teaching of computing in schools. There is insufficient technological literacy to enable us to recognize and exploit the significant technological advances being made, but is everyone learning to code the answer?
The importance of being able to program has been confirmed in the UK through the introduction this autumn of a new computing curriculum to replace the old ICT curriculum. We all recognize that this means that we need to make sure that we have a teaching workforce who are equipped to teach such skills and that it needs a place within the curriculum and the school day. However, this is not a once and for all task, as is exemplified by the outdated and obsolete ICT curriculum. The field of computing and programming changes at great speed and those who are part of it can be part of these changes. This dynamism and evolutionary speed means that the normal educational frameworks need adjusting to accommodate teaching a fast-moving, flexible and massively authored curriculum. It also has to be said that teaching, both the fundamentals of computer science, including programming is difficult, extremely difficult. Of all the teaching experiences I have had, the teaching of programming to undergraduates was the hardest subject area I have ever had to tackle. I wonder therefore how we really will maintain and support an expert computing teaching community.
There is of course a great role for technology itself to support the training and CPD of teachers and indeed to support the teaching of programming. For example, technology can provide a communication environment in which facilitators guide and link discussions so that teachers share ideas, questions and probe more experienced, knowledgeable colleagues beyond their home workplace. But to build these sorts of networked forums through which teachers may form learning communities, they need to be provided with:
- funding for teacher time buy-out and small operational costs;
- support for the roles of leading and co-ordinating facilitators, and
- encouragement for self-organising communities, such as TeachMeet.
There also needs to be an acceptance that the benefits may not be immediate – teachers and managers find it difficult to integrate technologies into their teaching context. Their attitude and confidence with technology impacts on uptake and innovation, and school leaders need to accept the possibility of some initial ‘failure’, and provide systematic mechanisms for dissemination by innovative teachers.
Technical skills alone are not enough
There is much more of importance that needs to be understood if people are to be able to build and use technology effectively and exploit its benefits for good. Students need to understand how people interact with and use their technologies to best effect. This is an interdisciplinary enterprise that includes social sciences as well as computer science. In order to build engaging applications of technology that are suitable for their purpose, students need to learn about the motivational and subjective experience of developing and using technology as well as the objective. Without this attention to Human Computer Interaction there is a risk that students will be unable to apply their new found technical prowess in ways that are effective for society.
An article by Rose Luckin, Professor of Learner Centred Design at the London Knowledge Lab. Her research applies participatory methods to the development and evaluation of Technology for learning. This work is interdisciplinary and encompasses education, psychology, artificial intelligence and human-computer interaction (HCI). She investigates the relationship between people, their context, the concepts they are learning, and the resources at their disposal.
- Computing our Future - A report by European Schoolnet on computer programming and coding skills in national, regional or school curricula in 20 European countries.
- eu.Code.org website by European Coding Initiative
- Grand Coalition for Digital Jobs by European Commission
The views expressed in this article are of the author only and they do not reflect the official opinion of the European Commission.