In our recent article published in the British Journal of Educational Technology (Lindberg et al 2018), we present the results of a review on how programming has been approached by K-12 curriculum developers around the world, and what games can offer to programming education. In this blog post, we establish a wider context to the study, summarise the findings and provide afterthoughts.
Today, computer programming is widely recognised as a core competency skill in various fields of work. For example, biology is becoming increasingly intertwined with computer science, which has led to the emergence of the field of bioinformatics. As another example, data analysts need to master programming skills to efficiently handle huge quantities of big data. We can expect this trend to accelerate, as the adoption of machine learning and artificial intelligence (AI) is transforming job descriptions. For example, Brynjolfsson et al (2018) suggested that concierges, mechanical drafters, undertakers, credit authorisers and brokerage clerks are among the jobs most vulnerable to machine learning. Consequently, the next generation of workers will need to learn programming in order to develop, configure, maintain or simply understand the technologies that surround them.
As programming becomes more widely required, the need for people possessing these skills increases. According to a European study, there could be over 800,000 ICT job vacancies by 2020 within the EU alone (Balanskat and Engelhardt 2015). Several countries, particularly within the EU, have reacted to the increasing need for programming talent and updated their curricula with programming skills in mind.
Programming has been considered somewhat of a challenging topic to teach, even at the university level. Teaching programming to young elementary and secondary school students will certainly bring up challenges similar to those encountered with university students (Jenkins 2002), with the students’ youth perhaps intensifying them. There exists an ever-increasing set of tools, such as the graphical programming environment Scratch (Resnick et al 2009), designed to make programming education easier. Moreover, an increasing number of digital games are using programming concepts as a significant part of the gameplay, with the aim of helping players learn difficult concepts in a fun way. However, many of these are not freely available, and it is difficult for educators to confirm what programming concepts these games utilise and how they adhere to the requirements of their curricula.
In our review article (Lindberg et al 2018), we analysed the curricula and guidelines of seven EU and non-EU countries (Australia, Estonia, the UK, Finland, France, Israel and the US) that have adopted programming education for elementary and secondary schools. We also surveyed 29 accessible digital games that utilise programming in some form, and made an attempt to categorise their suitability for different age groups. These results are likely to be of interest to educators and curriculum developers who seek to gamify programming education.
As computer scientists we are thrilled to witness programming fulfilling its promise of becoming a 21st-century literacy skill. But will programming sustain its status as the de facto method of working with computers for decades to come? We do not think so. Already, research results such as the DeepCoder (Balog et al 2017) demonstrate that an AI can be taught to write code. We cannot predict the future, but we need to start discussing the direction in which programming education is headed.
This blog post is based on the article ‘Gamifying programming education in K‐12: A review of programming curricula in seven countries and programming games’ by Renny S N Lindberg, Teemu H Laine and Lassi Haaranen, which is published in the British Journal of Educational Technology and is free-to-view for a time-limited period, courtesy of the journal’s publisher, Wiley.
Balanskat A and Engelhardt K (2015) Computing our future : Computer programming and coding Priorities, school curricula and initiatives across Europe, Brussels: European Schoolnet. http://www.eun.org/resources/detail?publicationID=661
Balog M, Gaunt A L, Brockschmidt M, Nowozin S and Tarlow D (2017) ‘DeepCoder: Learning to Write Programs’, in Proceedings of the International Conference on Learning Representations 2017: 1–20
Brynjolfsson E, Mitchell T and Rock D (2018) ‘What Can Machines Learn, and What Does It Mean for Occupations and the Economy?’, AEA Papers and Proceedings 108: 43–47. https://doi.org/10.1257/pandp.20181019
Jenkins T (2002) ‘On the difficulty of learning to program’, Proceedings of the 3rd Annual Conference of the LTSN Centre for Information and Computer Sciences, 2002: 53–58
Lindberg R S N, Laine T H and Haaranen L (2018) ‘Gamifying programming education in K-12: A review of programming curricula in seven countries and programming games’, British Journal of Educational Technology. https://doi.org/10.1111/bjet.12685
Resnick M, Maloney J, MonroyHernández A, Rusk N, Eastmond E, Brennan K, Millner A, Rosenbaum E, Silver J, Silverman B and Kafai Y (2009) ‘Scratch: Programming for All’, Communications of the ACM 52(11): 60