Developing coding, or programming, skills is about learning to take greater control of some of the key channels of self-expression, communication and creation in the digital era. Consequently, code literacy is seen by some researchers as one of the core digital literacies. When students develop an ability to code, they are no longer limited by the restrictions of commercially available web platforms and apps, or the design templates offered by those platforms and apps; are able to exercise more control over their own self-expression and communication online; and are able to contribute as creative producers and not just consumers in the digital ecosystem.
Though there has long been interest in computer programming and the associated theories of computation (Papert, 1980), Wing (2006) is widely considered to have reignited the current interest in computational thinking for K-12 education, or “CT for all” (Grover & Pea, 2013). This movement is based on several “big ideas” about computing. First, computing is considered a creative human activity. Second, abstraction reduces information and detail in order to focus on concepts relevant to problem solving. Third, data and information facilitate the creation of knowledge. Finally, computing enables innovation in other fields. Given the role computing plays in students’ lives today, computational thinking is an important skill for the 21st century (Wing, 2006; Yadav, et al., 2014).
Source: Deschryver, M.D., & Yadav, A. (2015). Creative and computational thinking in the context of new literacies: Working with teachers to scaffold complex technology-mediated approaches to teaching and learning. Journal of Technology and Teacher Education, 23(3), 411-431.
It has been suggested that it is important to begin introducing learners to computational thinking from an early age:
As computational devices, and the algorithms that drive them, become more pervasive in children’s lives, it becomes necessary to empower all children with the understanding and confidence not only to navigate their environment but to shape it.
Source: Manches, A., & Plowman, L. (2017). Computing education in children’s early years: A call for debate. British Journal of Educational Technology, 48(1), 191-201.
Learning computational thinking & coding
Computational thinking > For practical exercises on computational thinking, see Code.org’s Computational Thinking. CS Unplugged provides free paper-based resources for teaching computational thinking. You might also like to check out the Bebras initiative, or the Blockly Game.
Coding > Basic computer programming for children (from kindergarten to grade 3) can be practised on the CodeSpark Academy (The Foos) site. Based on a simplified programming language, Scratch Jr helps children (aged 5-7) learn coding before they graduate to the main Scratch site. Raspberry Pi is a small computer which can be used by children to learn programming. If students have access to iPads, they can start with the Osmo attachment which involves adding an external camera to track building blocks assembled into command sequences, while the Swift Playgrounds app uses similar commands but on the iPad screen. The Mozilla X-Ray Goggles browser extension allows users to see the code underpinning any section of any website, and to see how it would look if that code were altered; this is a great way of demonstrating to students the power of coding.
Robotics > The link between learning about computational thinking/coding and learning about robotics has become firmly established in education. From a young age, students can begin to learn coding by programming actions into simple robots such as the Bee-Bot robots (which have an accompanying Bee-Bots app that can be used by young learners instead of, or in addition to, the robots themselves); or the Ozobot robots (which can be programmed through OzoBlockly). Some of the most popular robots for learning coding are to be found in the lists below:
- Best Robots Toys that Teach Kids Coding and STEM Skills (Cameron LeBlanc, 2019)
- The Best Robot Toys for Kids to Learn to Code! (Katie Victoria, 2019)
- The 20 Best STEM Toys That Teach Kids to Code (Mary Giles & Marisa LaScala, 2019)
Wider initiatives > Global initiatives which help participants to learn coding include Codecademy (which offers interactive programming courses) and Mozilla’s Webmaker programme (which focuses on web literacy and design). CoderDojo is an international movement of school- and community-based coding clubs.
More > For more resources, see Common Sense Media’s (2016) Cool Tools to Help Kids Learn to Code, Common Sense Education’s (n.d.). Hour of Code, Common Sense Education’s (2019) Best Apps and Websites for Learning Programming and Coding, and the full Code.org website. Professional development MOOCs for educators, with a particular focus on the Australian Digital Technologies Curriculum, are available through the CESR (Computer Science Education Research) Group at the University of Adelaide, while the Australian Digital Technologies Curriculum is helpfully unpacked into its 10 major components on the Australian Computing Academy’s Unpacking the Curriculum webpage.
Latest on TwitterMy Tweets
- A Year Like No Other December 24, 20202020 Wrap-up Perth, Australia 24 December 2020 As for many other people, 2020 started off for me with a spate of cancellations or postponements of conference and seminar presentations, thanks to the unfolding COVID-19 pandemic. As the year wore on, however, conferences began to move online, and experiments began in how we can build online […]