One of the projects I would eventually like to attempt is a general computer literacy program. It is unfortunate that few exist, creating a situation similar to that of literacy in the Middle Ages. This article is an attempt to identify the failings of existing courses, and to create a curriculum that can produce literate individuals.
There are cultures that maintain high levels of technical literacy, and it is perhaps unfair to hold all users to such high standards. Your average person would not be expected to sit down and churn out text in the style of Tolkien, much less be able to advance to Saramago’s creative disregard for punctuation. One would, however, expect them to be able to read such texts with a decent degree of comprehension.
Herein lies the problem. The effectiveness of the average computer user is limited to predefined tasks. In some ways, the user treats the machine as they would an ATM or a kitchen appliance. The process can be reduced to a number of sequential steps, at the end of which emerges some desired result (a sheaf of cash, a loaf of bread, a piece of toast). This is at the literacy level of giving the user a book with pictures of common actions (a boy throwing a red ball) and sentences to describe them. Deviations from the script (what if the ball is blue?) lack corresponding ‘recipes’ and cause confusion (the system halts).
A contributing factor is the idea that computers are complex devices and therefore confusing. Attempts are made to hide this complexity from the user, usually by presenting them with a limited number of ‘recipes’. Marketing efforts reinforce this ‘complex, therefore confusing’ meme, which further discourages the users development. An appropriate metaphor might be taking a third-grader and telling them how wonderful it is that they no longer need to use “those horrible complex letters”, because now the microwave buttons have little pictures on them, and should they eventually want to buy a car the nice salesman will explain everything they need to know.
A suitable curriculum for computer education must prevent such harmful ideas from taking hold. It must also consider step-by-step procedures as equally dangerous. Ideally, computers would not even be used in the program. What must be taught is critical thinking, and abstract reasoning. The historical details of how protocols such as email are implemented can follow, with students drawing their own conclusions as to what is possible. Later posts in this category will attempt to build such a curriculum.