A related note on why European (and other) research plans will fail because of the lack of a suitable lower level education system Unjamming the education pipeline: Thoughts on educational prerequisites for an ambitious European research initiative.
It seems that the politicians and educators have screwed up much more than the teaching of computing.
Look at this lament by a disgusted teacher of physics
Some comments on his posting.
(Added comments on a letter by Mike Fourman.
A response to some comments by Peter Hodson.
See also ZDNet.co.uk article http://news.zdnet.co.uk/itmanagement/0,1000000308,39284764,00.htm)
In case you missed it, Nigel Shadbolt, in his capacity as President of the BCS, appeared on the Today programme this morning presenting material that CPHC has put together about the decline in applications for undergraduate places in Computer Science. The URL is ... http://news.bbc.co.uk/1/hi/technology/6155998.stm
One thing that bothers me is that nobody seems to want to expose the main causes of the problem. This helps to make it clear how huge the task of fixing it will be. About 35 years ago it was clear to some people that teaching programming could have profound educational importance in stretching minds in new ways, including enabling kids to learn how to design, implement, test, debug, analyse, document, compare and criticise *working* systems that create and manipulate structures of many kinds. Everyone could start learning this, though not everyone would wish (or be able) to progress far beyond the early stages. I argued that 'programming' should join the three 'R's to form the five 'R's in a basic general education. (Nigel was one of the people who understood that in the 1970s and helped to launch the teaching of AI in Psychology, later killed off by the British Psychology Society, alas.) A few schools started doing things inspired by that idea in the late 70s (including Marlborough college in the UK, which copied the AI teaching stuff we developed at Sussex). Later, in the early 80s(?) the BBC micro, in the hands of gifted teachers was an excellent tool for that purpose (despite using BBC Basic as the programming language -- at least it had procedures with local variables, instead of just GOTO and global variables). There used to be sunday morning programs on BBC2 showing some of the amazing things being done in schools with those machines -- involving girls as well as boys. Then what happened?
During the next few decades people (politicians, industrialists, parents, and badly mis-informed teachers) started saying (and/or believing) that kids should learn to use computing tools they are going to need in their jobs. So schools started using PCs running windows and children had to learn to use word processors, databases, spread sheets, then later web browsers and email systems. CS academics did not bother much about what was going on in schools because they thought they could start bright students off without any prior computing training. But they did not appreciate the dreadful long term effects of their non-intervention. As a result of the change towards teaching only *use* of tools most of the bright learners decided that computing was just a collection of boring but useful tools and not a suitable subject to study at university. I first discovered that when the very bright daughter of a professor of computer science told me why she would not dream of doing CS at university. I think she thought of it as analogous to doing a degree in cooking. I've since learnt that that is a common attitude among bright schoolkids. And now a whole generation (or two?) of learners have been taught the wrong things and a huge amount of human potential has been wasted. A typical computer scientist's response is to say, 'look at these really fun mind-stretching teaching tools/environments we have developed -- lets put them into schools'. But that completely fails to address the enormity of the problem of how to get the right things taught in *thousands* of primary and secondary schools where there are very few teachers capable of doing the required kinds of teaching, and where the infrastructure for collaborative learning and teaching of computing is not available. (The emphasis in schools on *personal* computers, helped not only to support teaching with the wrong sort of content but also ruled out successful deployment of network based computing, with all the benefits of file-sharing, easy software maintenance, lower hardware costs, etc., which many of us used successfully from the mid 1970s for teaching in universities, on VMS then Unix.) A possible *partial* solution would be to set up a national (or international) education-server perhaps something like google's spreadsheet-server, on which centrally supported computing packages of many kinds could be installed, including of course compilers/interpreters for useful programming languages for teaching beginners at various levels, along with facilities for sharing files so that teachers and learners can collaborate. If user programs were run in a protective sandbox (i.e. protecting other users) and teachers and learners could all add new stuff to be used by other teachers and learners that might help to reduce the problem of lack of local expertise. (This would require a carefully designed file access control system to support sharing of various kinds, e.g. between teachers, between students in a school, or in a class, between students in different schools using the same material or developing joint projects, etc.) Likewise, if all the backing up, software maintenance, etc. were done centrally, that, along with growing patterns of mutual support, would remove a huge part of the problem of supporting good educational environments at every school, including those with no expertise. Existing networked technology in schools might be a starting point for accessing browser-based courseware, though for some things they would need to support something like ssh in an xterm window (e.g. putty on windows -- trivial if linux is already being used locally.) [I still think kids should learn to compose their own well formed programming constructs using a text editor, and not just fill slots in templates or move things around with a mouse: those strategies designed to make things 'easier' detract from the process of developing expertise in designing new structures for which there are not yet templates and may also interfere with full understanding of what's going on. A text editor running on the remote machine as part of the development environment can have useful advantages compared with a local editor combined with 'select and paste'.] Of course shared machines accessed remotely also have problems (though nowadays nothing like the old time-sharing problems: internet services depend more and more on time-sharing as the processing moves from local machines to remote servers, e.g. banking, ordering, tax forms, wikis, etc.). Apart from problems of security and access control there are also problems of limiting the ability of some users to interfere with others. Maybe google would help with some of the technology, since they must have addressed this in connection with their spreadsheets run remotely? There would still be *huge* bootstrapping problems because of the lack of suitable teachers, and the need to convince politicians, teachers, parents, industrialists, etc. that it is *stupid* to insist on teaching children to use tools that are thought to be relevant to jobs instead of teaching them new ways to think, learn, communicate, solve problems, etc. -- especially as the tools required can and do change, sometimes quickly. (They can then learn the tools later, with a much deeper understanding. We don't teach physics by getting kids to fly boeing 747s even though they come from Seattle.) The cultural bootstrapping problem (lack of relevant expertise among teachers) could be addressed partially if computing academics, PhD students, and maybe good undergraduates, all round the country were involved (voluntarily) in helping schools to learn to use the facilities, at least for the first few years, until an adequate body of expertise built up in schools, after which the level of university support could decline. Of course, it would take a generation for new graduates with a deep understanding of the issues to enter the teaching professions, with the ability to teach computing really well. But I don't see any short-cuts to undo the damage of nearly three decades. Ideally something like this should be accessible world wide, especially to support learning in developing countries. I am not recommending a single physical education server, but a virtual, networked server. Instead of setting up a new *monolithic* central facility there should be a distributed server, all accessible initially via a common web address but supported by a variety of machines in CS or education departments or other such places, offering different kinds of support for learning and teaching, and guaranteeing to provide a level of service (including both hardware management and software updates and backups!) such as we do for our own staff and students anyway. This still leaves open a lot of management issues, e.g. about how to decide who can and who cannot access the system (why exclude individual adult learners who want to learn OU style, but with a self-constructed syllabus?), what they are entitled to, whether there should or should not be charges (definitely not initially -- or it will never get off the ground), how to authenticate applicants, etc. how to develop approved curricula, etc. I estimate that it will take at least five years to get to the point where such a service is widely used in all schools, all round the country, not because of technical obstacles, but because of political, management, and social obstacles to be overcome. It is essential for anything like this to work that the *assessment* issues all be postponed until the *educational* requirements have been understood and addressed. Certification and assessment form a tail that can break the educational dog they wag. (For more on all that and some of the history see my lament here: http://www.cs.bham.ac.uk/research/projects/cogaff/misc/dscedu.html As I point out there: it is not just a problem for the UK: the same mistake seems to have been made in many countries -- perhaps all, as far as I know. )
Michael Fourman, Head of the School of Informatics, University of Edinburgh, was interviewed on this topic by Radio Scotland, ("Good Morning Scotland" 06.56 17th November) and made some similar comments about the need to introduce new ways of teaching computing. To listen to the interview (only available for about a week after the event) go to [Alas no longer available]. In an email message Michael Fourman wrote: We are also working in Scotland to establish a School Curriculum that will have potential to engage bright sparks and kindle future interest. We have tried this before, unsuccessfully; but now hope that the climate is improved, and that our smaller country may have less inertia than the UK as a whole.My comment on this (19 Nov 2006):
I guess the Scots are also more likely to take on board the fact that there is no point producing a new curriculum if there will be neither the infrastructure in schools to support it nor the teachers available to teach it. Perhaps Scotland can provide a model of how to address that problem, either using the networked mechanisms I proposed, or something better. He also stressed the need to ensure that industry hears the positive message - that we are well-placed, in the UK, to produce tomorrow's innovators, while at the same time ensuring that government understands that things could be much better. Even if they do understand the message, they are not in a position to produce any changes quickly because you cannot undo 25-30 years of bad management and missed opportunities in a short time. .......... I hope that some educators will discover that in comparison with the obvious economic advantages of a skilled IT workforce there may actually be some *intrinsically* worth while educational goals that have nothing to do with current economic and industrial needs, but which can be seen in the centuries old tradition of education that stretches minds, including providing new powers of analysis and explanation that can lead not only to clever and useful new inventions but also improved understanding of existing systems (e.g. human minds, social systems, biological mechanisms, educational processes). The invention of writing, and then later printing, made a huge difference to what was possible in educational processes (in addition to having many useful technological applications). Likewise the invention of computing could have made at least as big a difference, but didn't (except for a tiny minority of lucky indviduals -- and I don't just mean computer scientists) because almost everyone got side-tracked into thinking about applications instead of what is valuable in itself. If we find ways to provide deep and powerful ways to enhance old educational systems, then the applications will look after themselves, without our having to second-guess technological developments and requirements when we design school curricula. Our predictions are likely to be proved wrong by the time school-leavers are in employment, anyway.
Peter Hodson drew my attention to the fact that there is a much broader problem than the teaching of computer science afflicting education in the UK. Student numbers applying for other science subjects have been going down also. He pointed out that in the last few years there has been a very worrying and increased drift towards 'softer' subjects among school leavers, following the preference for softer options recently made available at school. My colleagues tell me that it is not even true any more that many of the very brightest students want to do traditionally intellectually challenging humanities subjects, so there is now a separate more general problem than the CS or science problem. The CS problem has been noticeable for much longer. E.g. after we introduced an AI half degree around 1993 we talked to applicants for that and for our more 'traditional' degrees. When we asked them why they were applying, the CS/SE applicants typically talked about job prospects, whereas the AI applicants talked about how they had started to learn about AI (e.g. by reading magazine articles) and thought it sounded fascinating. They had not learnt about it in schools. If CS were taught properly in schools it too would be fascinating to bright students, and not just a means of getting a job. The effects of that were specially noticeable both in the rapid expansion of CS and in the aftermath of the burst dot-com bubble about five years ago. (Not just in the UK of course.) But, as you say, there have been more general changes affecting the quality of education in this country, driven partly by well-meaning but ill-informed politicians, though there may also be more general cultural pressures, including what looks to me like a growing addiction for junk information, which parallels the junk food addiction problem. One produces a loss of physical agility, the other a loss of mental/intellectual agility. (Peter rightly also drew attention to features of today's education system which is aimed at underpinning a 50% participation rate in HE, and the extent to which that has influenced the capability of the process to stretch and challenge the brightest. This links up with arguments about top up fees, the 50% target, and the need for a 'joined up' strategy for higher education, discussed here http://www.cs.bham.ac.uk/~axs/gov/ ) Peter asked whether I have a clear vision of how to fix the general problem --which I seemed to think I had. That's a deep and difficult problem, and nothing I wrote was aimed at solving that, though I have a, possibly misguided, hope that part of the remedy could be new forms of education where the learner is more in control, a possible result of the provision of 'education servers' as learning environments. (This is how we used to teach AI for several years when I was at Sussex.) So, I can at most claim to have identified some necessary conditions for change regarding CS (i.e. doing something about the need to support thousands of teachers who are not currently able to deliver the sort of new curriculum that might help to change attitudes to the subject). I certainly cannot claim that anything I've suggested would be sufficient. My main point was merely that the problem was now much deeper than a need to change the school curriculum. I hope someone has better ideas for dealing with the more general problem and producing a sufficient solution. If not the future is very depressing. I suspect this is connected with the view about science expressed by Blair in a recent new scientist interview. He made it clear that until recently he was not at all interested in science and did not think it important, until he suddenly discoverd that it could help the economy especially 'the private sector'. I wonder if there's any chance that his successor will have a better understanding of these matters. I guess we should not be surprised that someone who doesn't value science for its own sake is so inept at distinguishing good from bad evidence. Aaron