“Everyone should learn to code.” We keep hearing and reading this sentence time and again over the past few years. Coding can be incredibly rewarding and many education experts refer to it as the new lingua franca, but is it really a 21st-century passport to success? To what extent can coding help bridge the existing skills gap and boost creativity in kids?
A primary school teacher, a journalist, an ICT and educational policy specialist and a university professor share their thoughts on whether or not it’s important for everyone, kids and adults, to be coders.
From Technology Consumers to Change Makers
Mr. Jack Lawicki
Grade 5/6 Teacher at Kingswood Primary, Melbourne
Should All Students Learn How to Code? Pros and Cons
Senior ICT and Education Policy Specialist of The World Bank (Washington, D.C.)
In countries like Estonia and the UK, primary school students now find that coding is part of the national curriculum. Recognizing the increasing importance of coding skills, and IT jobs more broadly, to their national economies, policymakers in many other countries are considering national coding education efforts of their own.
Should all students learn how to code?
Proponents often make one or more of the following arguments in support of educational coding initiatives:
1. Coding education will help student acquire vocational skills that are immediately relevant to today’s job market.
Look at all of the IT-related jobs available in the world, advocates say. Shouldn’t our schools be specifically preparing our students to compete for them? Critics respond that many related efforts are a waste of time in practice because: they focus on developing largely mechanical processes that are easily learned in other venues; they are largely concerned with “job-relevant” skills of today, not tomorrow; initiatives of this sort are largely driven by the business sector (a group that they view with great suspicion); and many efforts have little pedagogical value in and of themselves. (Often cited with particular disdain are projects purportedly about coding but which amount to little more than learning how to use basic office tools such as word processors and presentation software.)
2. Coding helps develop important logic and problem-solving skills.
Few would argue against the notion that, when taught well, education in coding can help develop important logical thinking and problem-solving skills. In response, critics argue that coding courses have no monopoly on the development of such skills, and that in fact such skills should be embedded throughout an entire curriculum, not the focus of a single school subject.
3. Understanding coding helps students better understand the nature of the world around them, and how and why increasing parts of it function as they do.
There tends, I find, to be less disagreement on this count, although it is perhaps worth noting that many critics of educational coding efforts may perhaps not fully grasp the import of this argument. Those that do recognize this may still argue that there is an opportunity cost here: If you add coding to the mandatory curriculum for all students, what comes out?
4. Teaching students to code can serve as a gateway to subsequent study of STEM (science, technology, engineering and mathematics) topics, and hopefully to jobs and careers in related fields.
This may be true, some critics argue, but is this really the “best” gateway? If coding is not well taught, might it in fact dissuade some students from further study of STEM topics, and thus decrease the likelihood that they pursue STEM-related careers? Is coding education in schools indeed a gateway to coding, or is it in practice just “edutainment”, something to do with all the computers that schools have purchased and still haven’t figured out how to use productively?
5. Being able to code enables new avenues for creativity and creative expression.
Efforts to teach coding skills to young students through the use of tools like Scratch, or as part of robotics courses or initiatives to promote “making”, are often citied as compelling examples of what (good) coding education efforts may comprise. Here again, many critics may laud such efforts but still argue that, even if you concede that coding is a new literacy in our increasingly technology-saturated world, it is still worth asking two rather basic questions before moving ahead with new, large-scale, mandatory educational coding initiatives. How are we doing with the old, basic literacies of reading, writing and arithmetic? Shouldn’t we ensure that these fundamental “literacy skills” are in place before we start tacking new ones on to our already bloated curricula?
Where a great teacher is working with and supporting an eager, motivated student as she learns to code, it's hard to argue against doing more of this sort of thing. Educational “success”, after all, is largely a function of tapping into a learner’s inherent curiosity (and not stifling it!). If we are talking about a situation where a dis- or slightly interested learner is made to learn and practice by rote a number of rather basic commands and actions related to “how to make a computer do something”, especially by a teacher who herself does not know the subject well and where that “something” largely relates to how to do things like change font sizes in PowerPoint - well, that is something that perhaps no one should have to learn in school as part of the official curriculum. There is of course space in between these two extremes where things get a little more interesting, and complicated.
When considering that broad middle area, I guess I'd tend to view things a bit like artificial intelligence pioneer Roger Schank who says that "Any cognitive scientist worth his salt knows that it isn’t subjects like algebra or chemistry that matter. It is cognitive abilities that are important." The same holds, I would argue, when it comes to coding.
As an extracurricular or enrichment activity in education systems that are already doing a good job in promoting the development of basic literacy skills, the introduction of efforts to promote coding in schools seems rather reasonable, especially where such efforts help engage or energize otherwise disinterested learners - particularly where such students may not, for reasons of bias, discrimination or stereotyping, be considered (or even consider themselves) as candidates to learn such things. In places where there are still great struggles to help students develop basic literacy skills, however, especially in many middle and low-income countries, it should not be surprising if many policymakers consider educational coding efforts to be, as one such official recently put it to me, a “luxury” that they “cannot afford right now”.
Whatever the situation or context, I suspect that how a person answers many of the questions posed in this essay is probably colored quite a bit by how she views the process of education, and the activity of learning, more broadly.
Mike Trucano (@trucano) is a Senior Education Specialist at The World Bank. The views expressed here (which are adapted from a longer essay that will run on the World Bank’s EduTech blog), are those of the author alone, and do not represent the views of the World Bank.