| TITLE PAGE | TABLE OF CONTENTS | BIBLIOGRAPHY | AUTHOR'S HOME PAGE |
Computer Magic presents a very basic model of computer processing - no difficult calculations or manipulations are required. In the context of this program, graphic output is displayed as direct evidence of flipping bits in the computer's memory; in the simple model used here there is a one to one correspondence between a pixel on the screen and a single memory address. The hardware section demonstrates how an inanimate object, the computer, can "make decisions" if its circuits are properly configured. If the circuits are not properly configured then software cannot output the correct results.
Computer Magic explores a simple mechanism by which the color of pixels can be changed. The multimedia presentation parses this behavior into four events: end user input (the graphics section), encoding information, program behavior and electronic manipulation. The subject is introduced at a familiar level through the use of a stripped down graphics drawing program. The behavior of this drawing program is simple: a mouse click will change a pixel from black to white or from white to black. The pixels are magnified to clarify their behavior even further. The user's familiarity with this initial level of abstraction gives him confidence to further explore the behavior of this system. Users are able to build incrementally on existing knowledge. The object of this model is to enable the students to envision causal mechanisms implicit in the abstractions of digital encoding, programming and logical operations; the model links these abstractions to observable causal phenomena. This step-by-step instructional design begins with the familiar and incrementally introduces new concepts. Computer Magic links the existing knowledge that users maintain about computers to the hidden processes. It is an approach which builds new knowledge based on existing intuitive knowledge. The analysis of this project addresses issues of both form and content; that is, there are issues associated with the software and testing environments which I consider to be matters of form and there are issues which relate to the project's pedagogy which are discussed as content matters. Some matters of form - interface design, for example - have affected the educational efficacy of the program.
For each activity screen there were corresponding directions. The directions could be accessed by positioning the mouse over the "Help" button. This was one part of the program that provoked negative user feedback; many people said that they would have preferred receiving the directions when each activity screen was opened. Users who began fiddling with the screens before reading the "Help" directions were lost. Users also suggested that perhaps these should have been labelled something other than "Help." The decision to present directions on top of the activity screens creates a classic interface design problem. Interface guidelines suggest that on-line help must be visible at the same time as the parts of the program it refers to. My on-line help placed windows over the screen it referred to. Since the screen design used the entire 13" screen there was simply no way to show directions simultaneously with all elements of the activity screens. I was aware of this guideline violation and I reasoned that one could quickly bring these instruction windows up or hide them by simply moving the mouse over the Help button or away from it. Apparently, this compromise did not solve the problem for many users.
Another issue not resolved to my satisfaction was the conflict between the need for linear navigation and the inherent interactivity of the medium. Although I would have preferred that users proceed through the program in a pre-determined sequence, this clashed with my desire to utilize the medium to its fullest potential. Interactive multimedia promotes non-linear navigation as one of its best features but as I added the "Map" feature I hoped that it would only be used to go back to previously explored sections, not for gratuitous jumping from screen to screen. I knew that several of the screens would seem confusing unless the user approached them from the preceding screen. The Map feature was not really utilized by students in the second phase of the project. My final analysis of this problem is that interactivity does not necessarily mandate random access. In presenting a model which relies on incremental exposition of material it is not advisable that the user be permitted to skip ahead. Perhaps this is simply an inherent paradox in using interactive multimedia for educational purposes. Educational material is sequenced so that one concept builds on another; in educational multimedia the non-linear accessibility of digital media must be sacrificed to this higher goal. One solution to the sequencing problem would be to permit the user limited access from the Map screen - only screens already visited or the next one in the sequence would be accessible. The Map should also visually reflect the progress of the user. Whatever the solution, there is a need to balance educational needs with the implicit demands of the media.
As one Exploratorium user suggested, the programming section could include several programs that users could put in order. Additional programs would be progressively longer and more complex. I'd also like to show the code of an actual program written to perform the functions described in pseudocode. Another Exploratorium user suggested that the program could show how color is encoded rather than black and white only; he was curious to see why color representations require so much more data. This would be a next logical step for this project, the subject of color encoding was mentioned in the text but it was not demonstrated with an activity. A very simple and enlightening description of how color encoding works can be found in David Macauley's The Way Things Work - it clearly demonstrates how an analog property like color can be quantified and, therefore, digitized.
Another way to take this project a step further would be to design a sort of role-playing game where the computer user assumes the role of one part of the fetch-decode-execute processing cycle. Animated characters or graphics could be used to play the rest of the parts. Role playing has been used by Intel's curriculum and others[9] to illustrate how data is processed within the CPU. This game would require that I introduce a more involved model of computing - one which involves registers, ALU (arithmetic and logic unit), clock and control unit as well as the elements I've already described. A similar scenario was described in early versions of the project outline but I eliminated it in order to focus on the simplest aspects of processing. Such a system would be challenging to represent but valuable to users who desire more information about the way data is processed.
The "Painting by Numbers" activity, whose interface proved almost unintelligible to Exploratorium users, proved extremely useful in the classroom where a different spin was put on it. In the classroom it was combined with directions from the workbook to illustrate the concept of "repetition" or "looping;" in this context it was an excellent pedagogical tool. The exercise used in the school setting probably would not have been successful in the museum environment because it required quite a bit of time and user fumbling before users arrived at the solution.
I noted that none of the users who responded to the Exploratorium questionnaire indicated that they would search out a multimedia program about how computers work in order to learn more about the subject. This suggests that as a culture we have not yet made the leap toward considering computer software, CD-ROMs or even the internet as a primary source of information - even when the subject is computer related. Why? Is this a comment on the quantity of material available? The quality of material? What is the value of developing educational software if people would rather just read a book? Perhaps it is simply due to the newness of the medium. There are probably thousands of books available on the subject of how computers work but only a handful of multimedia programs which describe the same information. Most multimedia developers are betting that a certain critical mass of titles and multimedia capable computers must be available before there can be a paradigm shift. Multimedia titles on other subjects that pose some of the same challenges as presenting computer processes - Anatomy and Physiology, for example - are beginning to attract more audience attention as titles proliferate.
One of my observations of the Multimedia Playground was the variance in audience interest between static displays, multimedia displays and live demonstrations. Different presentation media generated different levels of interest and the live performance was clearly the big winner in this category. Regardless of computer-based learning's positives - its ability to deliver self-paced instruction and support hands-on discovery learning - it is indisputable that an exciting live show can attract more attention. I'd guess that the same is true in the classroom; a dynamic teacher can always generate more excitement than a computer model.
Even given the wide possibilities for dissemination of information by various media it's likely that one thing will not change: as I observed at the Exploratorium, the preferred information delivery system is a human explainer. Of the users who had previously tried to find out more about computers, most sought a method of learning which involved human interaction: many people would rather ask a person or take a class than interact with a computer or a book. Peer collaboration, as used at the Mill Valley Middle School, appears to benefit from the best aspects of human interaction and the advantages of using specialized instructional materials. The one disadvantage of peer collaboration I noticed is the possibility of an unequal partnership. If one partner dominates the learning situation evaluation of educational benefits may be skewed; one partner's understanding - or lack of it - may be masked in an evaluation that involves both partners.
Because of the structural similarities between English and the pseudocode used in the programming activity, many students looked for meaning in the grammatical construction of a program. It is no accident that computer codes are called "computer languages." Most high-level programming languages are meant to emulate the English language but they were never meant to be grammatically correct. This desire to relate programming language to narrative language would seem to be a pitfall but I also saw how it could be a huge advantage to those who considered writing an exercise in dramatic structure and organization. Howard Gardner's discussion of multiple intelligences suggests as much and my study bears him out.
Of Howard Gardner's five different types of intelligences, two of them, Linguistic and Logical-Mathematical, have particular relevance to this project. Gardner notes that logical-mathematical intelligence would seem central to learning programming but that linguistic intelligence is also relevant. He writes, "The metaphor of the program as a story (complete with subplots) may also help certain budding programmers with a linguistic bent" (Gardner 1993, 390). The similarities between programming and poetry are implied in Gardner's description of a young poet's "mastery of syntax, the rules governing ordering of words" and "fascination with language, technical ability with words." Gardner's description also compares the procedures of language to the rules of a game (Gardner 1993, 78). Poetry demands an economy of language - each line is indispensable in this compact literary form. In contrast, a novel conveys a larger collection of ideas and themes which may bear a complex relationship to one another. Each of these literary forms can be compared to a computer program. Programming can be elegant in its economy of code; on the other hand, large applications are analogous to novels in their complexity, with multiple themes and subplots proliferating.
I found that two particular users were able to efficiently solve the programming puzzle with no programming experience. One of these users was Caitlin, a student a the Mill Valley Middle School; her technique, she said, was to analyze the program as if it were a logical story that needed to be told in a certain order. Only one other non-programmer was able to solve the problem as quickly and that user was a friend who is a professional writer. Do experienced writers and other users who are familiar with dramatic and narrative structure have an advantage in programming? Both Gardner's analysis and my study suggest this is true. This advantage could be capitalized on for teaching programming. Such an approach might prevent the gender bias associated with "logical-mathematical" subjects from affecting computer programming instruction.
I've described several aspects of the program which could stand improvement. These include interface revisions and better matching of program design to learning environment. In addition I've suggested ways of extending the program to encompass subjects that are only touched upon in the current version. In my analysis of the project I have also found clues for new research directions. Of these I am particularly intrigued by the application of story-telling and narrative structure as an alternative approach to computer programming instruction.
Many Computer Magic users reacted favorably to the program's simple approach because, they said, it made the technical concepts more accessible. This comment was made particularly in reaction to the programming activity. One reason that the programming exercise seems so accessible is that the interface does not allow for failure - anyone who tries this activity will be able to complete it; the only questions are how long it will take and whether the user will understand the activity's significance. Since accessibility is an important aspect of presenting technically challenging material, this type of interface should be the rule. The one problem with this method is that users can always solve the problem by using trial and error. I realize that in the various studies which evaluated whether learning to program helps develop problem solving strategies there is a dismissal of trial and error reasoning as a valid method of problem solving. Is trial and error always a bad strategy? After all, isn't the Scientific Method a rigorous application of trial and error methodology? Students are given mixed signals about problem solving methods: on the one hand they are asked to solve problems in the most expedient way; on the other hand they are discouraged from using techniques that will provide a quick solution. They are encouraged to systematically apply such techniques in the interests of science but when they apply similar methods to solve other, more complex problems they are accused of not thinking. Students need to be given adequate time to evaluate a problem first to determine which problem solving method is most useful; often, problem solving speed is promoted over method and this may lead to the inappropriate use of trial and error methodology. Perhaps appropriate use of trial and error reasoning should be accepted as a valid problem solving method. It seems unfair that we praise the curiosity of children but denigrate their efforts to pursue it.
Computer users, and young users in particular, receive a "don't mess with it" message about computers. The computer industry suggests that they need only know how to use one specific computer or program and that further exploration could be potentially hazardous. The embedded message is that curiosity is bad. Programs, particularly older programs, have been exceedingly intolerant of tampering; it was easy to "break" a program by simply moving a file from one directory to another. Many users are afraid to do anything that could potentially interfere with the computer's functioning; since they are unaware of how the computer actually works they adhere rigidly to the few steps and commands familiar to them. An antidote to the "no trespassing" message must be found if users are to exploit the full potential of computers.
By simply making the concepts accessible we can increase a user's confidence level. The positive effects of boosting confidence are indisputable, if unpredictable; Frank Oppenheimer, founder of the Exploratorium, saw this as an important aspect of the museum's educational value. He observed,
[A museum] can reestablish the visitors' confidence in their own ability to understand and to learn... It can engender a comfortable familiarity with aspects of culture that they may have rejected as inaccessible or as undesirable. It is hard to predict or to assess these general effects. One woman told us that after being at the Exploratorium she went home and, for the first time in her life, put a plug on a lamp cord. Nothing in the Exploratorium could have instructed her how to do so. She must have felt that since she had made sense of some of the difficult ideas in the museum, she could make sense of other things as well (Oppenheimer, 1980).
Students must be encouraged in their curiosity - they must be free to explore computer processes in a "safe" environment. Using a program like Computer Magic introduces computing concepts in a setting which poses no risk of lost work; furthermore, interfaces like the one used in programming activity build user confidence.
The tremendous growth in numbers of computers in workplaces, homes and schools has resulted in recommen dations that computer literacy be taught in the classroom. As I noted in my review of the literature, a virtual explosion of informational materials about computers appeared in the early and mid eighties but very little was published in the next decade. Clearly Intel has its own agenda in presenting such information but I am encouraged by the appearance of their curriculum close on the heels of my presentation of Computer Magic at the Multimedia Playground. The release of this curriculum and other lesson plans posted on the internet suggests that we may be entering new period of interest in this subject after a ten year lull.
Assuming that my findings are representative it seems as though schools are doing a good job of familiarizing students with the current state of technology but that students lack the most basic knowledge of what computers are. I observed a need to define all of the terms we throw about when discussing computers. Programming, input, output, digital, hardware, RAM, ROM, software - there seemed to be no general understanding of these terms among students despite the fact that they invoke these terms and use computers nearly every day. As cited in previous studies (e.g., Mawby, et. al.) this lack of knowledge produces a pattern of unrealistically high expectations of what computers can do. Similarly, students lack an understanding of how programs are constructed; they underestimate the work required to produce a slick application. When I asked students to describe the type of computer program they might create the kind of program mentioned was of the level that Microsoft might produce rather than something one programmer could write. Such expectations would be frustrated in any beginning programming class. It also seemed that with the quantity and sophistication of off-the-shelf software, there was little ambition among students to create useful programs of their own; their focus was on entertainment rather than utility. Students learning to program in the 1970s and 1980s were likely to develop programs that would be useful to them; now there are many more programs available, pre-packaged and awaiting the user's special configuration. Students today are likely to be frustrated by the difference between what they can construct from scratch and the programs that are commercially available. Why struggle to create something when one can always buy something better?
One clear benefit of learning to program is a general understanding of how programs can go wrong. All computer users have run into "bugs" in programs or experienced "crashes." An examination of programming and digital processing reveals that a program is not one solid entity but rather a complex arrangement of commands which interact with the user's input. Furthermore, many, many circuits must be activated and many bits manipulated to get a correct response from the hardware. Although this is in some ways disconcerting, it should also help ease user fears that the computer is some sort of spiteful master.
The initial question I raised was can computer science can be presented in such a way as to demystify the computer's inner workings for a broader group of computer users? Clearly the answer to this question is yes. The positive feedback I received about my program's "accessibility" demonstrated that non-technical users were excited about learning how these processes worked. It would seem that my strategy of separating computing from mathematics did make the subject more palatable to a wider audience.
What role does the presentation medium play? Is multimedia an effective tool for teaching about computers? To this question the answer is a qualified yes. The multimedia solution benefits from the current interest in multimedia and the natural curiosity users have in seeing things that are usually hidden. However, in presenting instructional material there is often a need to present information in a sequential order so that new concepts can build on existing knowledge. This need is difficult to balance with the demands that multimedia allow many paths to the same information.
Probably the most important question to answer is whether this program, Computer Magic, proved to be an effective instructional tool; did users of this program walk away with a greater understanding of the underlying concepts of computer science? My observations of student users at the Mill Valley Middle School indicated that the software aided in effective instruction. Students were able to integrate new information received from the program into their existing mental models of computer processing. The students were able to link the basic drawing program used in the project to the hidden processes of encoding, programming and logical operations. The evidence of this success was supplied when students were asked to describe their actions in relation to activities and puzzles in the program. This was also an unexpected peek at the role of metacognition in supporting learning. When students were asked to describe how they solved a problem they seemed to gain a better understanding of the significance of each problem solving activity.
As the number of computers has increased, the percentage of computer users who can program has decreased. In the past, computer users were an elite group of programmers and technicians, but trends in computer development toward "user-friendly" computers and less expensive technology has led to the current phenomenon; today the majority of users are unfamiliar with the inner workings of computers but are more and more dependent on them. Computer users are increasingly dependent on "the magicians." Howard Gardner suggested that the existence of "magicians" - a few people who know the "tricks" - is not specific to computer science, it is a property of any technological society. In a traditional society, nearly everyone has some understanding of the knowledge possessed by others; in a technological society, however, we find experts, whose particular store of knowledge proves mysterious to the average citizen (Gardner 1993, 337). For most technologies we have accepted this division between expert and ordinary user, but we should examine the powerful role of computers as cognitive aids before accepting such a division between computer experts and users.
Increasingly the computer is a necessary tool for obtaining information about a wide range of subjects; those without computer skills find themselves increasingly locked out of the richest information resources. Proficient users of the tool are content with their ability to use; they are told that further knowledge is unnecessary. But relegating the computer to the status of tool deprives users of perceiving the intellectual possibilities inherent in computer engineering and programming. The creative applications for computers arise not from the knowledge of how they are used now nor how they were used in the past; the potential of computers can only be tapped by those who have confidence in their ability to extend computer capabilities beyond current expectations. A better understanding of computing will allow us to transcend our role as passive users of information and let us become active agents in the changes that computers and telecommunications technology are making in the way we live and work. In this context I see a continuing role for educational programs like Computer Magic - although I expect that the effort to expose technical computing to a wider audience will probably remain an uphill struggle.
Copyright © 1996 by Lisa H. Weinberg