Macau Matters | Teaching Kids Coding

Richard Whitfield

I recently read with interest that from the beginning of 2017 eight year olds in Victoria Australia will be taught coding. Every senior primary student in Victoria will have courses where they will design robot vacuum cleaners to clean their classrooms. And junior secondary students will have classes where they learn to identify and fix security flaws in software. As part of the state’s new compulsory digital curriculum students are expected to code, gather and interpret large datasets and design Websites, Apps and Games that solve real-world problems.

It all seems very ambitious and is consistent with similar trends occurring in many other developed countries which have been experiencing declining enrollments in STEM (Science, Technology, Engineering and Maths) subjects for years.

Having worked as a computer programmer, systems analyst and computer software/hardware project team leader, and having taught programming to university engineering students for several years, I am quite dubious about these initiatives and do not believe that they will work as intended.

There is much more to effective computer hardware and software based product development than “coding”. You need to understand markets and customer needs, technology and systems design, project management and especially how to develop and guide project teams. None of these knowledge areas and skills, including coding, are part of the education and training of school teachers. Anybody with the skill-sets needed to teach these “coding” courses can make a lot more money and have a much more interesting working life applying them, rather than teaching them to children. Without sufficient numbers of well trained teachers these initiatives are doomed.

Also, “Coding” is a relatively easy and short lived skill – during my working life I successively taught myself about eight of them, from Assembler to Fortran and C, and to SQL and HTML, and I learned to use several computer operating systems and software development systems. Much more difficult and important is understanding and analyzing working processes, systems thinking and the selection and development of algorithms and database structures. And then there is a broad spectrum of inter-related knowledge and skills for managing teams that are absolutely essential. All these are much more important and broadly useful than simple “coding”.

It never ceases to amaze me how little school children learn about teams and effectively working in teams, and yet when they reach university and in their subsequent working lives team skills are core to their success. I have been involved in several research projects which concluded that teamwork is a fundamental skill for our modern world, and it is something that must be taught, and the earlier the better.

Thinking logically to understand problems and processes is also key to many life situations and yet it is rarely touched on in schools, and even in university studies. Teaching, misguidedly in my opinion, is far to often focused on stuffing people’s heads full of useless facts. Because of their poor educational preparation, even good students, flounder as soon as they hit unstructured real- world problems.

I fully agree that the world needs many more good STEM graduates and that interest in these fields is best developed during primary and secondary schooling. I also agree that schools in Macau should be changing in this direction. But, for heaven’s sake do not fall into the trap of thinking that teaching “coding” is the solution.

We need primary and secondary education to focus much more on developing young people’s team skills, and we need them to learn how to deal with novel and unstructured real-world problems, not to simply learn how to calculate the time taken to fill a bucket when water is pouring into it at one speed and leaking from it at another, or teaching the meaning of printf(stdout, “hello world”);

Categories Opinion