Teaching Computing in Schools

Why is the computing curriculum in schools so bad? The subject is not a recent addition. Computer Science has been a subject for class 10 and 12 in most boards for at least 15–20 years. From class 1–8, many schools have one or two periods set aside each week for ICT.

One problem is the name: “computer science” is interpreted as the study of computers. The emphasis is on dissecting a computer and memorizing terms such as CPU, RAM and hard disk, reducing the subject to a taxonomy of body parts.

Computing, or computational thinking, is a much better term for what we should be teaching. Computing is about problem solving. At its core is the idea of an algorithm — a systematic description of how to solve a problem. Woven into this is the notion of efficiency — how much time does it take, what resources do you need, can you make the process simpler, faster, more robust?

The study of programming should teach all of this. Unfortunately, school level programming is presented in the same unsatisfactory way as science experiments. Rather than showcasing experimentation as a route to discovering knowledge, students are encouraged to fudge results to match the theory taught in class and note them down in copybook perfect journals. Likewise, programming is reduced to a set of 10 or 12 standard problems for which “ideal” solutions are to be memorized and reproduced in an exam.

Given all this, it is not a surprise to hear from students that they regard computer science on par with biology — just a lot of facts to be memorized. This is also a sad commentary on the way biology is taught, but it certainly shows that we are doing grave injustice to the subject of computing.

Why do we need to formally teach computing in school?

First, the idea of an algorithm is something that everyone needs to understand. Ask someone for directions to reach their home and you realize how ill-trained people are in providing precise
instructions. Mundane tasks like opening a bank account become complex nightmares because the instructions provided are incomplete and confusing. This in turn is because these instructions have been drafted by people untrained in basic algorithmic thinking.

Computer literacy is also essential in today’s world. This goes beyond the mechanics of using word processors and spreadsheets. We have to make students use these tools to construct coherent
documents and effectively collect and organize data. We also have to teach them about security, privacy and ethics, to be safe and responsible citizens in the Internet driven world we live in.

It is clear that the school curriculum is too crowded to add new subject material. However, the time already allotted for ICT in junior classes can be productively restructured to teach computational thinking side by side with computer literacy. At senior levels, there are natural links to mathematics and science. Much of school mathematics involves executing algorithms — long division, taking square roots, computing gcd and lcm. We need to integrate these concepts with what is taught as ICT or Computer Science, rather than organize subjects in silos, disconnected from each other.

With some planning, we can definitely convey the essential ideas of computing to all school students without drastically disrupting the existing system. All we need is some open mindedness and vision among school teachers and administrators.

Leave a Reply