
"I wish I were Dave Grohl" I declared to my poker buddies, mostly just to fill the time having once more crashed out early and handed over yet another of my hard-earned tenners to our head of maths. None of them responded, so I continued to sit and watch in quiet awe of the Foo Fighters frontman executing textbook rock-star poses in front of thousands of delighted fans at some festival on MTV.
Why is Grohl one of my idols? He's a rock legend, was part of arguably one of the most important bands of the 90s, and then went on to various projects creating some really great music along the way. According to Google search he is also the most famous "Dave" in the world and the "nicest guy in rock".
Back in the real world, another legend has a new project. David Braben co-wrote the classic game
Elite way back in the early 80s and has now designed the
Raspberry Pi, a cheap and cheerful computer-on-a-USB-stick that will cost about 15 quid.
The Raspberry Pi is an attempt to lower the barrier of entry for kids to become programmers.
Eben Upton, who founded the project, says in the Observer:
"While a lot of homes have a computer these days, kids aren't encouraged to start messing around with programming languages on these family machines. No one wants their home PC going into meltdown. A useful analogy might be that you wouldn't let your children take the family car apart, but you might be happy to let them loose on a bike – so the Raspberry Pi is the computer equivalent of that cycle.
You can program it using scripting languages like Python, or compiled languages like C and C++. You could write a game of a similar level to Angry Birds or Quake 3...
We need to convince the government that programming should be more prominent in the curriculum."
This will sit nicely with
Google chairman Dr Eric Schmidt, who was in town this week singing a similar tune:
It's not widely known, but the world's first office computer was built in 1951 by Lyons' chain of tea shops. Yet today, none of the world's leading exponents in these fields are from the UK...
I was flabbergasted to learn that today computer science isn't even taught as standard in UK schools... Your IT curriculum focuses on teaching how to use software, but gives no insight into how it's made.
It seems to me that these commentators are making the following three points:
- The UK needs to produce more computer programmers
- Cheap hardware will encourage kids to "tinker" and learn to program
- Computer science should be part of the National Curriculum
I'm not sure any of these make sense, and I'll treat them one at a time.
1. The UK needs to produce more computer programmers
We are actually producing a lot of programmers. In fact, according to UCAS, computer science was the fifth largest subject in the UK university system in 2010:
| Rank | Subject | Acceptances | % change | Applicants | % change |
| 1 | Law | 16,931 | -3.4% | 94,231 | 3.1% |
| 3 | Psychology | 16,063 | 4.9% | 93,845 | 16.2% |
| 5 | Computer science | 11,605 | 1.3% | 55,259 | 11.2% |
| 8 | English studies | 10,092 | -2.8% | 60,882 | 5.7% |
| 11 | History | 8,616 | 1.4% | 50,215 | 6.8% |
| 18 | Mathematics | 7,276 | 5.2% | 40,972 | 8.9% |
| 42 | Physics | 3,657 | 2.9% | 20,372 | 11.9% |
So we have plenty of computer science undergraduates at university and lots of competition for places with nearly 5 applicants to every place available. Do we really need more than 11k per year?
2. Cheap hardware will encourage kids to "tinker" and learn to program
The Raspberry Pi is clearly an amazing development, and I love it. I love what the project is doing and what they are trying to achieve - but is this a silver bullet that will inspire a generation of coders in the same way that the BBC Micro did for David Braben and so many others in the 80s?
As a kid having your very own machine to play with, break, and fix for hours on end is clearly better than sharing the family PC. However, in three years of doing computer science at university I didn't meet anyone who had caused their computer to "meltdown" through their coding efforts.
What's more important to my mind is not the hardware, but the software. The Raspberry Pi's processor can't run Windows, instead the FAQ page suggests that only Ubuntu or Debian Linux will be supported at first. Using a free OS means the cost barrier is kept low for our wannabe geeks, but whilst Linux distributions such as Ubuntu are much more stable these days, they are still more complicated to install and maintain than, say, Windows or Mac OS. This may put kids and/or schools off before they have even started.
It's not a deal-breaker, especially if the project develops a distro tailored for the Pi, or even starts shipping units with this pre-installed. But one did not have to set up a BBC Micro in this way - it had an OS and a nice accessible programming language (BBC BASIC) ready to go straight out the box, which helps explain why this computer led to so many people "tinkering" with coding. Users purchased Beebs to do other things - be it business, education, or games - then started playing around with creating their own inventions. Why would anyone other than an established geek buy a Raspberry Pi? I certainly don't anticipate many school network managers queuing around the block to purchase machines that don't fit the standard model of a PC, no matter how cheap they come (they'll just get nicked for a start).
3. Computer science should be part of the National Curriculum
This bit really baffles me. It just does not make sense to force every child through programming on the national curriculum. Imagine the reaction if my man Dave Grohl proclaimed: "It's an outrage that the country who gave us Jimmy Page, Eric Clapton and Brain May does not teach every kid how to play the electric guitar as standard"?
Don't get me wrong, I think there are huge problems with the ICT curriculum, and agree that merely teaching kids to use Office is not what the subject should be.
However, coding on the curriculum is never going to happen for the simple reason that we don't have the teachers to deliver it. I have not had the opportunity to meet vast numbers of fellow ICT teachers, but the majority that I do know come from backgrounds other than computer science and have little or no programming experience.
Even if we did magic up extra teachers, the kids would hate it. Programming is often a slow, tedious process with endless hours of debugging and battling with incomprehensible error messages before getting to the point where it "works". Whilst environments such as Scratch are already used in some schools to ease kids into developing simple code, for me the gap between this and "real" programming is too big and it would be a disservice to students to have them believe otherwise.
Adding programming to the curriculum would not even necessarily lead to more computer scientists. Look at the numbers studying maths and sciences at university - both compulsory to age 16, but have far fewer undergrad students than computer science.
Finally, it seems terribly old-fashioned to think that the way to get kids into something is to ask teachers to light the spark. Most programmers, like most guitar players, started in their bedrooms with no formal tuition and took it from there. I don't see any reason to change this, especially with the dawn of the Internet and open-source software kids can "learn on the job" and contribute to real projects without ever having to get dressed.
We could certainly encourage more students in terms of after school clubs and extra support, but this is crucially different to crowbarring coding into an already crammed curriculum, which would not even serve the purpose Google and others want. Sorry Eric.
c
Image from Galaxy fm on Flikr