The buff cardboard box was put on the table with a flourish. Out of it came a green circuit board covered in weird black boxes and bits of copper wire. “It’s a computer,” said my mum. I remember looking at her blankly as she explained that we could tell it what to do. An hour or so later, having fiddled around entering “0”s and “1”s into a keypad, following the interminable instructions, we finally saw the red display light up. “Hello,” it said.
The reward-to-effort ratio was singularly underwhelming.
But 30 years later I still remember it and also the simple programming we did on a cream-coloured box called a BBC Micro at school. The result was a rudimentary understanding of the building blocks of a computer’s brain.
Respect. She’s not an IT professional, she’s a successful columnist and associate editor at a national newspaper. Yet she wrote a program when she was a child. Not just any program, but one in the lowest possible level: the machine language of ones and zeros. I had a similar experience when I was a teenager in the early 90s. It took me two months to write the Assembly code for a rotating cube, with all the horrible trigonometry required to hide the non-visible edges. Unlike her, I was overwhelmed when I finally got it to work and I fondly remember it as one of my most rewarding accomplishments. Although at university I realised that I’m not cut out to be a professional programmer (having previously been scarred for life by GW-BASIC), the concepts stayed with me forever and I feel privileged to be able to understand how programs work and how a computer does what it does. And probably so does Eleanor Mills.
Today’s teenagers are certainly very comfortable using computers, but are they really computer-literate? The answer is no, at least for the vast majority of them.
They may spend days and nights blasting mutants away or exploring fantasy worlds, but they have little idea how a computer actually operates. Some of them even apply to Computer Science degree courses, not knowing what to expect and without ever having written a line of code in their whole lives. Many of them don’t even understand basic concepts such as the need to update your Windows or run a firewall. Let alone code.
Enter Raspberry Pi, the computer which its creators hope will get young people interested in programming again. It’s a small board which is a fully functioning computer in itself. The main driving forces behind it are Eben Upton of Broadcom and David Braben of Elite fame.
At £22 for the Model B, you can’t go wrong. It features 256MB of RAM, two USB ports, an Ethernet port and HDMI video output that can connect directly to a TV. It runs a version of Linux, although I guess you could run other operating systems on it. Once you’ve connected the necessary peripherals to it (display, keyboard, storage etc), it allows you to do pretty much everything an average computer does: email, browse the web, listen to music and watch films.
But because it’s so tiny it has the potential to be used for other interesting projects: homebrew portable entertainment systems, voice management systems (“press one for me, press two for my wife”) and many more. Someone is already planning to use it as an encrypted chat server in countries where free speech is repressed. I’m sure that people will eventually make it interface with Lego Mindstorms robots, and it will most definitely also end up being used for security cracking: a disgruntled employee unscrews the network printer and hides a Raspberry Pi in it, intercepting and wirelessly transmitting the office’s network traffic for long after he’s left the company. For information security professionals, myself included, it’s certainly a concern.
When the Model B went on sale earlier this month, demand was so high that the retailers’ websites crashed. At some point they were receiving 700 orders per second. It’s safe to assume that all that hysteria wasn’t driven by hordes of schoolchildren desperate to start coding. It was by people who are either programmers/IT professionals already or just wanted a collectable piece of computing history. Although the Raspberry Pi is a great product and a milestone in computing history, I am not totally convinced it will help solve the programming skills problem, even if many schools buy it.
Most children in the western world already have access to computers which are many times more powerful than the Raspberry Pi. Those who are curious and intelligent enough will already have experimented with programming on their existing computer. These children will never starve. But it’s not entirely clear why the rest would be fascinated by a small board without a case, and why it would inspire them to write programs for it. Bizarrely, an unnamed Middle Eastern government wants to order one for every schoolgirl in the country.
Perhaps it will inspire some children, and maybe it will make a difference in terms of computer access in poorer countries where the hundred-dollar-laptop didn’t. But it’s not going to create the thousands of young programmers its creators hope for, at least not in developed countries with all their online distractions. For that to happen, we have to have a fundamental culture change. We have to foster a culture where technical excellence and ingenuity are admired and rewarded, not moronically dismissed as “geeky stuff”. Some countries do have this culture to an extent – Germany, the Netherlands and Finland among others. On the other hand, France, with its puffy idées hautes obsession and the English-speaking world with its lawyer-doctor-accountant definition of a “respectable profession” will carry on needing to import foreign technical talent for decades to come.