This week the UK announced that it will scrap its failing IT education program.
In a speech, the education secretary will say the existing curriculum in Information and Communication Technology (ICT) has left children “bored out of their minds being taught how to use Word and Excel by bored teachers”.
Instead he will, in effect, create an “open source” curriculum in computer science by giving schools the freedom to use teaching resources designed with input from leading employers and academics, in changes that will come into effect this September.
The announcement follows pressure from businesses critical of a shortage of computer-literate recruits.
As a professional computer engineer I welcome this news and hope that any replacement program is better able to foster understanding and enthusiasm regarding computers, and ultimately to lead more people into what is a deeply satisfying and rewarding career. Before we talk more about education I will take a few moments to show how and why I see this career as so important.
As an HPC (High Performance Computing) Engineer, I write scientific software that is used on the world’s most powerful supercomputers. In 2008 I ran the first program to achieve 1 PetaFlop on an open supercomputer (meaning one quadrillion calculations per second). The technical challenges that were required to make that program work were huge and I will discuss in a later blog post, but the techniques and methods I used were the same I use and develop on a day-to-day basis. The world’s most computationally demanding science is run on our systems and this requires unprecedented advancements in computer software in order to even run correctly. Now, although I work at the extreme end of computing, I believe that the challenges and rewards that my team and I face are fairly typical for a career in Computational Sciences and even for Computing in general. The most important contributing factor to this comparison is also the most commonly misunderstood – computer programming is not a pure technical science but a blend of technical and creative expertise, and so “Super-nerds” with massive technical knowledge and no people skills do not make the most successful computer engineers. To design a technical solution from scratch requires a vast range of problem-solving, creative and inter-personal talent. So those kids with a strong technical basis combined with highly imaginative faculties and good interpersonal skills are the ones most suited to a career in technical computing. It is also important to point out that those skills are transferrable and those of us that can demonstrate them remain in high demand, seen here for my specific technical field and here more generally in Britain. Generally, computer engineers are well paid professionals (especially in the US) and technical entrepreneurs among the best earners in the world.
Now, I am the first to admit that this is not the sexy job that I dreamt of during my teens but, since Nirvana already had a guitarist and since my musical skills were vastly inferior to my technical ones (as it panned out at least), here I am. Many people like myself realize after significant scientific training that they are better suited to computer sciences than to science itself, but when the former can be used to advance the progression of the latter it then it is even more rewarding. It is perhaps surprising that I didn’t envisage a career such as this, because in hindsight I can see somewhat clearly that I and my peers were primed to engage with technology and to ‘program’ rather than ‘use’ computers from a very early age. In the 1980’s we were on the brink of a technological revolution though we were not aware of it at the time. “IT” was a term that didn’t appear until much later, and professional computer programmers were extremely rare. Parents were utter digital illiterates, which was a source of great amusement to us kids who seemed innately able to program the new devices. And the nature of those devices themselves was I believe, partly responsible for the technical priming of a generation. At that time every school in Britain (where I grew up) owned at least one BBC micro – a programmable and hardy system that was built entirelyfor the education of children. In my school we had a single unit that was permanently positioned on a giant trolley and was shared between all classes in the school. One afternoon every two weeks it would be the turn of my class to have the computer! The BBC micro was an inherently programmable computer and all kids needed a few commands in order to be able to do
anything. I am not pretending that many children were skilled programmers but that that the lack of any significant user-interface instilled a closer relationship to the hardware from the outset. At my home, like millions of other 80’s homes we had a ZX spectrum – possibly the most programmable home computer ever made. Even just to load a computer game one would have to write the following command into at the cursor
This simple command told the system to load from an external storage device an unknown program. One would then sit for several minutes watching pretty borders sparkle to the accompaniment of strange sounds, as the compuer “loads” a program from external storage (tape) into physical memory (around 64k at the time). The only magazine I have ever subscribed to in my life for a long period of time was called “Input” and was a computer programming magazine that included full code listings for the Spectrum, the Amstrad, the BBC micro,
Acorn Electron etc. Here you could write graphics programs, system software for controlling peripheral devices and even games for your home computer. I spent hundreds of hours typing the listings word-for-word and then modifying slightly the eventual code to understand what was happening in the machine. My main preoccupation was games, but these tech experiences at a young age taught me about programming languages and machine code, and unquestionably conditioned me to be comfortable with programming computers over simply navigating user-interfaces. There was something we were getting right with computers and kids back in the eighties, and I would like the opportunity to thank whoever it was that pushed out the BBC micro programme into British schools.
But I keep hearing that children are even more “digitally literate” than of 25 years ago – What does that mean? Programming of computers is no longer required to make them work correctly. Apple have made such enormous advances in user-interface design (and even Microsoft computers work pretty well these days) which places a hugely insulating layer of well-running and intuitive software between the user and the computer . “Digitally literate” may be more accurately described as a “digital comfort” with machines or as a literacy with the specific styles of user-interface that are used on modern machines and the web. Very little awareness of computer programs is gleaned from a modern computer experience without digging, and even less awareness of the hardware underneath that is performing the transactions.
Does this “comfort” translate into a prospering market of professional computer scientists? No, in fact worryingly computer science admissions at university are drastically down. In the US, the 2000s saw a 70% decline in computer science college graduates, and this was mirrored in the UK. No employer ever hires a person based on their ability to use Facebook, and knowledge of Word or Excel at a base level is considered so trivial and ubiquitous that it has little if any bearing on recruitment. In other words, the IT skills that our youngsters have been taught either at school or by themselves yield little in terms of job prospects and even littler with respect to life-skills. Perhaps even more devastating is the effect that attempts to “teach” IT can have on the enthusiasm of children to engage with computer science. To teach a modern child how to use an application (which is what IT education has amounted to) is like asking the child to re-learn how to dress in the morning and is certain to induce apathy and cycnicism with respect to the subject. To confuse Microsoft Word with Computer Science is to confuse boiling the kettle with particle physics.
So I welcome the news that the UK has scrapped its computer education programme and I hope that what replaces it will develop real skills as well as real technical ambition in our kids. But what do we replace it with? The technical specifics of this are less important than the empowering of children to be able to actually do things with computers. HTML5, Ruby on Rails, Cloud computing, graphics. Highly accessible frameworks exist for each of these that could be used very easily to empower children to actually create cool things that they can show other people. I find it very hard to imagine that a child who has just learned to write a small fun application on her own android phone would not find this deeply amusing and stimulating. Only when we have a generation of children able to build tools that confuse their parents, and when those children are familiar with the workings of a computer as opposed to the specific layout of its user-interface, then we will once again be primed for a generation of entrepreneurs capable of revitalizing a country through the emergence of a “digital economy”.
I do not want to see any child in the UK or elsewhere be taught how to use Microsoft Word ever again! This is waste of time and resources, is an insult to the intelligence and creative potential of children and most importantly is wasted opportunity for technical and economic flourishing.