Current Computer Science and Electronics student at the University of Bristol (just started)
Really long comment thread; and I have a lecture soon so sorry if I am repeating points that have already been made.
I did not do Computer Science (or anything like it) at GCSE or A-Level, my school didn't offer them; so it is kinda nice that we are being gently introduced to programming. I am so sorry to all of you who spent your childhoods programming in your bedroom but I didn't. When you start university you have people with vastly different backgrounds and educations who are all at different standards which is why the first year does not count towards your final grade so that everyone can be brought up to the same standard.
Secondly, I spent my gap year working in the IT department for a stockbroker and most of the problems I faced required little knowledge of the inner workings of a computer. Mostly I required a knowledge of people and the software they were using. Furthermore I picked up any knowledge I needed along the way; when I joined the company I had never used a server, or AD or a BES, nor had I ever written any HTML. By the end I was managing our corporate website and all the company blackberry devices. I feel that their will always be an element of on-the-job training with IT as there are simply too many different operating systems etc to teach them at university.
Moreover, one of the first things we were told when we rocked up to our first programming lecture was that it was almost impossible to teach programming; their aim was to provide an environment where we could teach ourselves. So far I have been happy with the teaching I am receiving; but I'm only a month in so we will have to see. Btw we are learning C atm.
The teaching at my school, on the other hand was horrific. I did my A-level Physics coursework research essay on how a cpu works and was appalled by the fact that my teacher could not explain what a transistor was. The IT teaching at the school consisted of the the ECDL (european computer driving license) which was a complete waste of time.
BUT most students going through the education system will only ever use Word, Excel, email and the like and so have no need for an in-depth knowledge of computer. Have a go at CS degrees, CS A-level and GCSE but ICT teaching in schools is mainly for the masses (as has just been mentioned, I believe).
Did have more to say but the aforementioned lecture is approaching so I better go;