Linux Today: Linux News On Internet Time.

More on LinuxToday

Computers and Networks and Cars, oh my...

Dec 28, 1998, 00:24 (15 Talkback[s])

WEBINAR: On-demand Event

Replace Oracle with the NoSQL Engagement Database: Why and how leading companies are making the switch REGISTER >

by Zygo Blaxell

(Using the automobile as an analogy, Zygo Blaxell argues that the important educational object is not learning the operational techniques of a particular operating system but learning what is really happening when computers are used. He calls this goal "information technology literacy".--Editor)

"Computer literacy" is irrelevant. Computers are not interesting in and of themselves except to a handful of their users, and those users will educate themselves whether they get help from public education or not.

"Internet literacy" (or "information technology literacy" or "network literacy") in general is a lot more important. Most computers these days are being used to create, store, retrieve, search for, and communicate information more than for any other purpose--except possibly entertainment. Most of the economic impetus behind computing has been and will be for its side-effects: orders placed, advertisements transmitted, business operations completed, customers entertained, research materials collected, and so on. That means networking, multimedia, and databases, not simulations or programming. That doesn't mean that people won't be doing simulations or programming on computers, but the number of computers doing that kind of "real computation" will be dwarfed by the computer of computers doing computationally uninteresting stuff in the same way that microprocessors in embedded systems outnumber desktop microprocessors by about six to one.

I have grown weary of the argument "cars are complex devices, but no mandatory training is required in order to operate a car due to its intuitive and familiar interface. By analogy, no mandatory training is required for information technology, specifically computers, if it has an intuitive and friendly interface." This argument is based on an absurd premise.

Cars are complex devices used in a complex environment. Most governments require some level of certification for all operators of motor vehicles on public roads, which may include mandatory training and almost always includes some kind of examination. Other users of public roads, such as pedestrians, also require a minimum level of competency to avoid dangerous situations that arise as a result of motor vehicle traffic. I for one received such training many times during elementary school. I know people who did not have such training and I routinely pull them bodily out of the path of moving traffic at intersections.

In addition to this legally-required, minimum competency, most drivers understand issues such as basic maintenance schedules and performance monitoring related to cars. The drivers that don't understand these concepts drive cars that eventually die because they haven't had oil changes in 60,000 miles and the driver didn't notice the "check oil" warning light, the horrible noises the engine was making, or the smells, or the temperature gauge running at twice the normal engine temperature. Many people don't actually know how to do an oil change, only that it needs to be done; many of us prefer give the actual job to a mechanic.

Once you've figured out how to operate a car, you have to master the environment you drive it in: full of other drivers with varying levels of competence, full of hidden and overt physical dangers, and full of social and political issues related to how to drive from where you are to where you want to go, where to park your car legally when you get there, why you can't drive on sidewalks even though they are unobstructed, and why you don't go as fast from point A to B if you drive during rush hour. By understanding these issues, drivers have an improved overall driving experience, avoid being an inconvenience to others, and even materially improve the safety of the whole motor vehicle environment. However, you will learn nothing about these issues if you only learn auto mechanics or motor vehicle operation skills.

These are all concepts that anyone reading this can probably understand. Even those who do not have direct exposure to cars can probably understand the fundamental concepts from second-hand experience. Cars and car-related activities are ubiquitous within Western culture. Cars are usually accurately portrayed in popular media (except perhaps for a few high-speed chase scenes where the laws of physics get slightly exaggerated). Cars are easy to understand in a direct physical way: they are essentially big steel boxes on four wheels. Most people who are exposed to cars daily know everything that is significant to know about them by the time they reach adolescence, including a rudimentary understanding of the user interface. By the time a new driver sits in the driver's seat for the first time, they have learned all the background and are mostly concerned with infrequently used safety procedures and practical driving technique. They are not struggling to understand basic concepts like starting the engine or even what an engine is.

Cars have little in their interface that is intuitive. It may be easy to figure out how to activate the turn signals, but it is not entirely clear what turn signals are for unless you have some kind of experience with other drivers in traffic. To the uninitiated, a turn signal is a blinking light that appears to be unrelated in any way to the act of conducting the vehicle through a turn. Indeed, a bit of empirical testing will show that a turn signal in no way materially affects a properly functioning car's ability to drive in a curved path; nonetheless, turn signals are in fact an important and necessary part of safe driving in traffic. Other parts of a typical car are equally confusing: the pedals on the floor tend to be unlabeled; the instrumentation on the dashboard is littered with symbols that have to be learned and understood before they are meaningful; the placement of that instrumentation and the subset of instruments available varies from vehicle to vehicle with no industry-standard layout; the order of required operations for leaving a parking space is often undocumented in the vehicle owner's manual and is certainly nowhere to be seen within the car itself. One car may have an interface similar to other cars, but that is not "intuitive." In fact, given no prior knowledge of motor vehicles, it's difficult to see at first how a car could move you from one place to another at all, unless you actually saw one moving.

Computers are complex devices in a complex environment too. I believe that they are more complex than cars in environments more complex than any highway system, but I won't try to push that concept very far when there's a much more significant one: Computers are "new," and we're not "ready" for them yet.

Computers are far from ubiquitous in real life or in popular culture. Computers in the popular media are often portrayed in a grossly distorted fashion, totally unlike any practical computer in real life. It is difficult to find anyone in real life who truly understands a given computer system, and much harder to get them to explain it in a short period of time. This explanation is often the equivalent of trying to explain traffic regulations to people who do not drive: while they might understand the general concepts, the information will seem irrelevant to them, and without a framework in which to fit the individual pieces of information, even a simple explanation turns into a confusing jumble.

It is difficult to "explain" a computer at all. Most of what a computer does is invisible and abstract in the extreme. The only effect that the user has on the machine at all is the tiny part of the system that is exposed by its user interface, and many user interfaces are designed to hide as much information as possible from the user. It is possible to explain some of the abstractions within a computer system efficiently using a graphical interface, but graphical interfaces cannot efficiently handle all of the possible--or even typical--abstractions within a computer system.

There are people whose only exposure to a desktop computer occurs when they are in their local bank branch, cashing cheques at the human teller booth. Even this is not direct exposure, because the interaction with the computer is mediated by a trained human operator. Such people are totally unreachable by task-oriented computer training because these people simply do not understand what a computer is for, or why they would want to use one. When they are finally confronted by a computer, their first question is not "How?", but "Why?"

Even if computers are in fact easier to use than cars, the cars still win on total usability simply because cars have effective training infrastructure and experience already in place and computers do not.

Computers, for some reason, cause people to lose their basic common sense. People seem to expect that they can make effective use of a computer without any prior training. People expect that "the computer" will solve all of their problems for them--automatically. This notion is completely absurd on its face.

There is nothing that a user interface can do in the short term to assist a user who does not understand the basic concepts of manipulating information, yet for some reason modern computer interfaces are intended to do exactly this. Cars do not routinely distract a driver with animated paperclips that indicate when turn signals should be used in traffic. Drivers do not demand this kind of feature because it is entirely useless when it's not measurably counterproductive. But for some reason this is accepted as normal when it comes from a computer.

We cannot be effective users of information technology, or information itself, if we do not have a basic understanding of what it is that we want to do with the information, what a machine can do for us, and how to put human and machine together to get a job done. No amount of fine-tuning a GUI, springing "helpful" information on an unsuspecting user, or training in the finer points of Bourne Shell syntax or vi command keys will help if the underlying concepts required to understand the human relationship with the machine are not already familiar to the user. Without question, it is necessary to educate people, especially children, in the basic concepts of information and the technology that manipulates it.

What form this mandatory education should take is the important (and often heated) discussion. I feel it should provide a student with sufficient knowledge to understand general concepts like storage, data formats, networks, and so on. A student should be answering questions like:

  • "What does it "mean" to send an email or publish a web page?"
  • "Why can't the person receiving it read a file in Word 97 format?"
  • "How much storage capacity does my computer have, how much have I used, how much do I have left, and how much will my next task require?"
  • "How do I find out who is responsible for the content at a particular URL? Should I trust them?"
  • "Why should I be aware of the security risks inherent in operating a publicly accessible web server?"
  • "What is privacy and how is it threatened when I use a computer?"
  • "How do I find other ways to use a computer to do my work more effectively, such as by automating tasks or customizing system components?"
All of these are questions I was asked almost every single week while I was doing full-time tech support for corporations of all sizes. These are questions that will not significantly change with the next generation of technology, because the next generation of technology will not eliminate the basic problems from which the questions arise (replacing disk drives with some new kind of storage media doesn't mean we will ever stop running out of disk space, and "Word 98" can be substituted into the second question without altering the answer to the question). These are all questions that have to be answered before we get to the stage where we are trying to figure out which menu the "Preferences" dialog box is hidden under or what configuration file needs to be edited.

When driving a car, we must determine where the car is now and where the destination is in relation to the car before we can drive from point A to point B. When operating a computer, we must determine what we have, what we want, and how the machine can help us get it. The sooner the concept is introduced, the more natural it becomes, and we can then take advantage of the utility of the machine more than it takes advantage of us. Learning how to do any of these tasks with any particular computer is irrelevant trivia--the software will change every few years anyway, and so will the user interfaces. Pen-based computing, anyone? How about speech recognition? Which icon is your floppy drive today? The true constants in information technology are the end goals of the users, because the users do not re-invent themselves every three years. It's the concepts that are important, the value propositions, the social and political issues, not the technical details. The important parts of this material can be taught without touching a computer in the classroom at all.

"Which operating system" is therefore a bad question. I think that what Martin Vermeer was saying in Unix as an element of literacy about using an operating system people have almost no knowledge of is a good point, in that it teaches students how to cope with new implementations of familiar abstractions, and from there allows a student to learn what is abstract and what is mere implementation. A student must learn that a floppy drive is a floppy drive, whether it appears in the user interface as "/dev/fd0", "/dev/floppy", "/D0", ":0", some kind of icon, or "A:". At the same time, there are wildly different ways to look at a floppy disk--it can be a simple container for data, a swiss-army knife of useful software tools, a secure portable private data storage device, or a transport vehicle for viruses. If you don't know what a virus is, in terms of where they come from, how to avoid them, and what one can do to your happy little virtual world, then all of the other information isn't going to help you.

If one of the operating systems taught to the student is available on computers that the student has access to, then the student gets a short-term benefit, but not an essential one. The essential benefit is that part of the education that lets a student answer the questions that arise because humans are using networks of computers, not because of the software that happens to run on them.

I'd support training on two operating systems as different as Win95 and Unix, or Unix and MacOS, or MacOS and Win95, or WinNT and QNX, to reinforce the idea that there is more than one way to solve any particular problem. But I wouldn't choose any one OS over any other OS. The concepts that are necessary in a mandatory education program on information technology are already implemented in every OS worth speaking of.

Zygo Blaxell is a "Linux Engineer" at Corel Corporation in Ottawa, Ontario, Canada. He was one of the first 50,000 Linux users, and has found a home for Linux in a variety of IT jobs at large and small organizations too numerous to mention.