Teach Secondary Issue 14.7

Terminal decline? RobWraith looks at whether the rise of AI should prompt us to reconsider our approach to the teaching of coding – and if so, how... I t’s now beenmore than 30 years since a powerful consensus first emerged across the education and technology sectors that ‘ Everyone should learn to code ’. It was hailed then as an essential skill for the 21st century – a valuable process that would teach you how to think. Schools duly began to introduce programming classes, since an understanding of coding seemed to be the passport to a range of lucrative careers open to anyone able to master the likes of Python, C++ or Java. Fromcraft to discipline However, the developments we’ve seen in artificial intelligence technologies, and increasing access to themhas shaken the very foundations of that old model. The astonishing rise of generative AI in recent years – to the point where it’s now capable of producing functional, complex code from simple, natural language prompts – has led some to wonder whether there’s now any use in learning programming languages at all. On the one hand, yes – we do need to reconsider our previous approach to the discipline of coding. The end results of coding are still as omnipresent as they ever were, if not more so. The operating systems in our phones, the apps that run on them, the websites and social media platforms we all use; we’re well past the point where coding has become an essential component of the modern world that we simply can’t do without. At the same time, though, we’re currently witnessing the practice of creating code evolve from being a manual craft to a calculated discipline . The rise of AI hasn’t made programmers and developers obsolete; if anything, it’s enabled some to automate the more monotonous aspects of coding, and elevate the very best to a status comparable to that of an architect or creative director. This will, however, entail revising howwe think about coding as a taught discipline. It may be that we see a shift away from the memorisation of coding syntax, and towards making students more aware of the underlying principles of computational thinking and system design, while treating AI as a powerful collaborative tool, rather than a replacement. Core coding skills It’s easy to see why perspectives are shifting. With tools such as Copilot and ChatGPT now able to automate repetitive coding tasks, produce reusable code and offer solutions to intricate challenges, some people are starting to question whether human programmers are still required, and whether careers in coding are even viable any more. However, this viewpoint overlooks what coding truly certain dataset – all will be utilising computational thinking in some capacity. AI can certainly help to complete some steps of those different tasks, but the chemist’s initial decomposition? The strategic design of that algorithm? Those are still human tasks that require a certain level of knowledge and experience to complete. The art of debugging As anyone who has ever written code will know, a significant portion of development time is spent on debugging, and finding and fixing errors. And if you think AI-generated code will be immune from bugs, think again. I’ve seen this for myself, having previously used AI to develop a mobile app. represents, and the essential role it continues to play within STEMdisciplines. As AI becomes ever more integrated into development processes, the core skills that coding cultivates are becoming more critical, not less. While the naming conventions might vary, the elements that make up computational thinking (see panel) are foundational to all STEMdisciplines. A chemist ‘decomposing’ a chemical reaction; an engineer designing a complex circuit; a data scientist analysing a AI-generated code can not only introduce errors, but subtle, complex errors that are especially difficult to detect. The ability to read, analyse and critically evaluate code is therefore still very much a crucial skill for – at least inmy case – getting a mobile app to perform as intended. Debugging code requires knowledge, logic, experience and a good understanding of the systems or applications being developed. This is an investigative process that AI is more than capable of assisting with, but one that it can’t lead, since arriving at the correct answer will involve first asking the right questions. Invisible force In STEM fields, coding isn’t some abstract exercise, but rather a primary tool for discovery and innovation. Its use is woven into the very fabric of modern science and engineering. Contemporary scientific research would be impossible without coding. Biologists use Python scripts from libraries like Biopython to perform bioinformatics tasks, such as “Ifyou thinkAI-generated codewill be immune from bugs, thinkagain” 70 teachwire.net/secondary

RkJQdWJsaXNoZXIy OTgwNDE2