Computer programming in schools… Can we avoid coding ourselves into a corner?

The push for Swedish schools to teach students to code computers is now in full swing. This year, the Swedish government announced key changes to its requirements for the teaching of ‘digital competence’ in schools. This shift includes provision for programming to be introduced at all grade levels, becoming “a distinct feature of several different subjects in primary schools, especially in technology and mathematics”.

Sweden is by no means alone in these ambitions. Indeed, countries around the world are rushing to introduce computer programming, coding and software development into the curriculum. Increasing numbers of teachers are being trained to teach computer science in primary and secondary classrooms. Well-funded organizations such as Code.Org and Code the Future are offering outside-school tuition and resources. There has been a surge of interest in low cost mini-computers such as the Micro:Bit and Raspberry Pi, alongside programming languages such as Scratch and Python. Coding has quickly become part of the global educational agenda.

UnitedSoybeanBoard (CC BY 2.0

At first glance, it might seem that there is little to disagree with. After all, coding is fun, intellectually challenging and in tune with current educational preoccupations with all things ‘STEM’ (Science, Technology, Engineering and Mathematics). These are skills that one would expect to be important for future employment. Coding also fits neatly with the rising prominence of Silicon Valley thinking and ‘geek culture’. Crucially, coding offers a possible means of addressing the perennial ‘crisis’ of schools failing to meet contemporary economic and societal needs. For all these reasons, most people consider coding in the classroom to be a ‘no brainer’.

Yet as these plans begin to be put into practice, there are signs that things are not quite as straightforward as we might like to think:

  • First is the problem of what is actually being taught. There are various flavors and forms of ‘coding’, but the type that is filtering down to many classrooms is a rather bland, generic and simplistic form of engaging with the subject. As one IT industry insider recently observed, many schools are delivering superficial forms of ‘pop computing’, based around “watered down content and using simple coding apps” that only offer “quick experiences of drag-and-drop code entertainment”. Moreover, while there might seem to be much conceptual overlap between programming and other school subjects such as math, there is little empirical evidence for sustained transfer effects between learning programming and other domains. Similarly, as Laura Pappano recently noted, “there is no reliable research showing that computing makes one more creative or more able to problem-solve”. A recently published randomized control trial found that after-school coding clubs in the UK had no impact on computational thinking as measured by the BEBRAS assessment, but did significantly improve coding competency. Thus, concern is growing that the kinds of forms of coding being introduced may have little potential for developing general skills or creating learning transfer to other subjects, and that they may end up eating into the limited time for other core school subjects.
  • Second is the problem of how coding is actually being taught. Some ‘new’ computer science subjects have been criticized as narrowly technical and procedural (echoing the distinction that Mike Trucano makes between ‘learning to code’ as opposed to ‘coding to learn’). There are growing reports of teachers and students struggling with coding and programming, particularly in primary schools. Many adults have been shocked to find students getting bored with what they find to be not such a ‘fun’ activity after all. As Mitch Resnick (the MIT professor involved in LOGO and the child-oriented Scratch programming environment) argues, “if you present just logic puzzles, it’s like teaching them writing by only teaching grammar and punctuation.” How ‘best’ to teach coding at scale across entire school systems is a challenging (and as yet unanswered) question that will require considerable time and effort to resolve.
  • Third is the problem of securing the scale of funding and resourcing required to match the considerable hype. Achieving system-wide school change takes more than promises and enthusiasm, and policymakers have struggled to commit to coding in schools on a substantial level. Even President Obama’s much-touted promise in 2016 to commit $4billion of federal funding for computer science education in US schools was never realized. Countries such as Sweden need to learn from the mistakes made in countries such as England that drastically underfunded teacher professional development in how to teach new coding curricula. One year after England’s new computing curriculum came into effect in 2014, over 40% of primary teachers reported not having had adequate professional development and nearly one third reported lacking the ability to teach the new subject matter. Governments around the world are finding that rewriting their national curriculum documents is the easy part. Achieving genuine systemic change requires sustained resourcing commitments over long periods of time.

Despite these limitations, the coding bandwagon rolls on relentless. This puts the educational technology community in a bind. On one hand, it is pleasing to see ‘our’ area finally getting some mainstream attention and love. Coding has certainly pushed ‘Ed-Tech’ agendas to the forefront of the popular and political consciousness.  On the other hand, there is growing danger that this hype and effort will end up repeating previous Ed-Tech failures and disappointments. This is not the first time that educational technology has enjoyed a brief moment in the limelight, only to be met by practitioner indifference and lack of sustained funding and policy commitments. Anyone familiar with the history of computers in schools can be forgiven for suspecting that this current Ed-Tech ‘moment’ may not end well.

So, what can be done? For us, this is an area of ‘digital education’ that is in urgent need of more open debate and realistic discussion. Most people, ourselves included, are not against the idea of coding being part of schools per se. Yet all the recent developments just outlined have certainly occurred with undue haste and little (or no) critical scrutiny. As such, it seems imperative to reclaim the topic of ‘coding in schools’ as a site of balanced conversation, consideration and choice – moving past the hype and fears that currently surround it.

So what might be done? This is certainly a topic that needs to be better problematized, questioned and productively challenged. There are many different ways that coding might be part of schooling, many different rationales and approaches. One might propose, for example, a completely different version of ‘coding in schools’ that fosters critical understandings of the politics and social power of programming and algorithmic culture. Perhaps, as a recent article in Wired reasoned, coding classes should be seen as a vocational option likely to lead to the twenty-first century equivalent of a skilled job in a car factory, as opposed to a fast track to becoming the next Mark Zuckerberg.

These are all debates that a country such as Sweden needs to be pursuing. It is time that some simple but direct questions are addressed – not least:

Why exactly are we doing this, and what do we want to result?

Most importantly, how might we initiate a more thoughtful, nuanced debate about the pros and cons of what is clearly not a straightforward development? Now the curriculum changes have been finalized, the challenge of coding in schools has only just begun.


Neil Selwyn, Guest Professor, Professor Monash University

Thomas Hillman, Associate Professor

5 reaktioner till “Computer programming in schools… Can we avoid coding ourselves into a corner?”

  1. There is no fast track to becoming the next Mark Zuckerberg. Any more thean learning Biology will fast track you to becoming the next Darwin.

    Digital literacy and digital citizenship are of course important both for those who can code and those who cannot. But surely a separate issue. Everyone will use the web but only a small number of people will code.

    Describing coding as fun is a mistake. Some people enjoy it .. more will not

    1. Hi Niall,

      Thanks for the comment and for the very apt analogy between coding/Zuckerberg and biology/Darwin!

      A lot of people are arguing that having some ability to code is necessary to be digitally literate and to fulfil their idea of what digital citizenship is. It all depends on how you define what a person needs to meet for an, as yet, poorly defined standard of literacy and citizenship.

      Similarly, it is quite common to see coding in schools be promoted as a way to make other subjects like math more engaging or fun. As you point out this might be a mistake.

      The problem here is that lots of people want to have coding in school, but there isn’t a particularly clear idea of why or how.

  2. Personally I don’t think you need to be able to code to be digitally literate. Like you don’t need to know the principles of the internal combustion engine or even how to repair your car to be a good motorist

  3. As a former teacher in Programming I am delighted reading some reflections of what is the outcome when vocational skills become mandatory in school. We need to present the didactics of the subject. I think it is strange when a government believe the skills of a vocation holds the silver-bullet making future citizens aware of technology push in society.

    I agree with you: it will probably boil down to the way teachers teach the content. Teachers are in desparate need of some profound knowledge to accomplish what is expected by the new syllabus. In conclusion, we agree, but still we stand in classroom and we are expected to raise a tech-generation to the standards of a critical dimension of technology in society. What do you suggest? Should we conclude it is all a huge mistake, again as we did during the 80s?

    1. Thanks for the comment Lennart! I think that voices from vocational education are sorely missing in the discussion around programming in schools. In the effort to try to justify the idea of teaching some programming to everyone, the reality that programming is actually a vocation for some may be getting to somewhat lost. Like the Wired article we mention in the post, I think that an important part of the puzzle is considering that programming is more and more becoming a kind of skilled trade in the same sense that being an electrician or machinist can be understood.

      The question of what we do to avoid the mistakes of the early 80s is a big one. I think that one of the problems in the 80s was that the goals for having computing and programming in schools were not clearly defined. I don’t think that we need a single essential goal for all areas of schooling, but we need to have a better understanding of what kinds of things we want students to be able to do and understand about computing. At the moment, I think that there is a real danger that we are headed for yet another ’if you build it they will come’ field of dreams situation where we build the baseball ground, but none of the players show up in the end.

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *