Computing education is not working. This has been pointed out time and time again by people in all corners of the many computing-related industries, and yet nothing is changing.
I noticed that most of the perspectives from this seemed to be coming from people who had either left the education system, or were at the other end as teachers. I want to share my perspective as a 14-year-old school pupil.
Firstly, computing education is not taken nearly as seriously as it should be. For the first two years of secondary school, Computing is taught less than any other subject, tied only with business management. While they will study Maths and English for 3 and a half hours per week, a first or second year student will study computing for less than half an hour per week.
The reason for this decision eludes me, but I imagine that it comes from the lack of respect that is given to the subject. I once heard the thought that if an 8-year-old is capable of using PowerPoint, why should they take Computing any further? This opinion is ridiculous - who is going to create the next version of PowerPoint?
In first year, Computing is barely worthwhile. Students are taught how to turn on the computer, log in, and open Microsoft Word and PowerPoint. That is, from what I can see, the whole curriculum.
After a year of this, you begin your second year of computing education by learning how to use Microsoft Paint.
At this point, after over a year of computing education, I would be surprised if more than a handful of students had learned anything.
Things do begin to improve. You are taught how to use Scratch, which is a very basic (drag-and-drop) form of programming that can be used to make simple games. It is a very common tool not just in schools, but in the various organisations that have sprung up to try to make up for the lack of proper computing education in schools.
There is nothing inherently wrong with Scratch, but it begins to get very repetitive and most students get frustrated with it after they encounter its limits.
In addition, it is simply too little, too late. Most students already have the impression that Computing is the act of using Microsoft Word and PowerPoint and Paint, and it has already put them off continuing the subject.
Second year also includes a basic overview of the components inside a computer, but there is little explanation of what they do, and almost no explanation of how they work, leaving it a dreary task of memorising some names and numbers.
Most students will not take computing any further than this, having been put off by the weeks of learning nothing and becoming evermore frustrated.
Third year, for those who have the perseverance to continue with Computing, begins with yet more Scratch. Most of the work seems to be very similar to last year’s. Some key concepts, such as loops and variables, are introduced, but are lost in a sea of boredom.
The amount of effort given by pupils at this stage is probably very low, as boredom has eroded eagerness. The few concepts that are being taught are not being taken in because students are not paying enough attention to notice their introduction.
After this, video creation is introduced. It is fun to cut up pieces of paper and have a large Pac-man game on the floor, and filming it is also very enjoyable. But the actual computing part of it, editing the video, is not. My school, and I would guess most others, still uses Windows XP. I can understand why this decision has been made, but it does not stop the ensuing frustration as students discover how limiting Windows Movie Maker is.
Seeing the quality of their work so low puts students off, and the sad thing is that it is not their fault. One student brought in his MacBook and used iMovie to create his video, and the result was something that looked good and that he could be proud of.
Of course most schools (mine included) cannot afford to replace all of their computers with Macs, and they shouldn’t be expected to, but something needs to be done to prevent even more loss of faith in Computing.
The next topic covered is Web “Design”. This is where you are taught exactly the opposite of what a web developer would recommend. Basic HTML is covered, as well as a WYSIWYG application called KompoZer. Since this is the first time most students will have seen any kind of plain text language, KompoZer probably is necessary to get the ball rolling. But what shocked me was the techniques being taught to create the web pages.
<small>* tags, the
bgcolor attributes, jump links using
<a name="">, embedding Windows directory paths in links to images, and, worst of all, the dreaded tables for layout.
We thought all of these techniques died out in 2001, but they are still being taught!
Of course, some of this might seem simpler than teaching basic CSS, which is of course another language, but I can’t imagine that it would be more difficult than understanding the hell that is tables for layout, which I am sure most students will never understand.
There is also another limiting factor here, and that is that is Internet Explorer. Schools like Internet Explorer. I don’t quite understand why. Nor does anybody else. There are often requests from students to install Google Chrome, and the question “Why not?” is never answered.
This is a prime example, beyond any other I have seen, of Internet Explorer holding back the web.
Internet Explorer 8 is the last version will run on XP. It is a sad thing that the easy way out for teachers is saying that rounded corners are not possible on the web without images, rather than explaining browser versions and support and CSS3. At this level, students should not have to worry about any of that, but they should still be able to use the tools they see in use on other websites.
It’s similar to the Windows Movie Maker problem, except that the solution is much simpler. Web browsers are free. Most people already use Google Chrome at home, and would welcome its introduction into schools. In addition, students could be taught to create higher-quality websites of a standards compliant nature, rather than using techniques we thought died out ten years ago.
This is just about the end of Third Year computing. Students have still learned very little and what they have learned, they have learned how to do the wrong way.
In the next year students are introduced to programming. This is good. Too bad it’s Visual Basic.
There is nothing wrong with Visual Basic, but it does not seem to be a very friendly beginner language. Nor is it like any other commonly-used languages. If C or Java were taught instead, it would be very easy for students to adapt to other languages like PHP in future if they decided to continue along this track, as all those languages are very similar.
Also, as usual, the version of Visual Studio is hugely out-of-date (15 years). Visual Studio is the last piece of software that should be out-of-date as Visual Basic is not backwards compatible. I cannot hand in to school a program I created in my even fairly recent version of Visual Studio at home because it simply will not run at school.
But let’s just place all that aside. Let’s say that Visual Basic 6.0 is perfectly good, and it should be very possible to teach programming using it.
Basic concepts such as loops and user-defined functions are not introduced at this level, so the programs created are almost useless.
Again, we have the Windows Movie Maker problem. If a student cannot take pride in the work they produce, how can you expect them to take an interest in the subject?
From a student’s perspective, if it has taken four years to learn how to produce a program to add two numbers together, the gap to becoming a software developer creating useful applications looks enormous.
There is also some more coverage of computer hardware. Most of the information is correct, well-taught and useful, but on the other hand, does it really matter today what a Zip drive is? Or was?
Not having reached it yet, I don’t know what comes in Computing after this, so I can only comment on the first four years of a student’s secondary school computing education.
So what could we improve upon? How could we change computing to make it more interesting, more educational and more enjoyable?
Computing needs to be taught more from the beginning. Yes, Maths and English are arguably more important, but is French really important enough that there should be six times as much French teaching as Computing?
Relatively up-to-date software is essential. I know it is expensive, but teaching the way we used computers before any of the students were born is worse than not teaching Computing at all.
Teachers need to be educated as well as students. One of the reasons I believe that tables for layout are being taught is that that is all teachers are familiar with. We need up-to-date education for teachers retraining them in computing of the modern age. The Computing landscape changes so quickly that this would need to be completely redone very regularly.
Students are more intelligent than you think. The reason you may have opinions to the contrary is, in my mind, because the students you have experienced have not been stimulated enough. We all have the power to do great things and express ourselves, but creativity and boredom do not blend.
Finally, computing needs to be considered a “real” subject. The people who change the world today are not politicians, they are programmers. Anybody with a keyboard and an Internet connection has a voice. We need to be teaching people how to use computers to their benefit, and teaching PowerPoint alone just isn’t cutting it.
Yes, I know
<small> is still valid in HTML5.