microelectronics andthepersonalcomputermnielsen.github.io/notes/kay/micro.pdf · experimental...

13
115 Microelectronics and the Personal Computer Rates of progress in microeleCtronics suggest that in about a decade many people will possess a notebook-size computer with the capacity ofa large computer of today. What might such a system do fOr them? T he future increase in capacity and decrease in cost of microelectron. ic devices wiU not only give rise to compact and powerful hardware but also bring qualitative changes in the way human beings and computers interact. In the 1980's both adults and children will be able to have as a personal pos- session a computer about the size of a large notebook with the power to handle virtually all their information-related needs. Computing and storage capacity will be many times that of current mi- crocomputers: tens of millions of basic operations per second wit! manipulate the equivalent of several thousand print- ed pages of information. The personal computer can be regard- ed as the newest example of human mediums of communication. Various means of storing. retrieving and manip- ulating information have been in exis- tence since human beings began to talk. External mediums serve to capture in- ternal thoughts for communication and. through feedback processes. to form the paths that thinking follows. Although digital computers were originally de- signed to do arithmetic operations, their ability to simulate the details of any descriptive model means that the com- puter. viewed as a medium. can simu- late any othermedium if the methods of simulation are sufficiently well de- scribed. Moreover, unlike conventional mediums. which are passive in the sense that marks on paper, paint on canvas and television images do not change in by Alan C. Kay response to the viewer's wishes. the computer medium is active: it can re- spond to queries and experiments and can even engage the user in a two-way conversation. The evolution of the personal com- puter has followed a path similar to that of the printed book. but in 40 years rath- er than 600. Like the handmade books of the Middle Ages. the massive com- puters built in the two decades before 1960 were scarce. expensive and avail- able to only a few. Just as the invention of printing led to the community use of books chained in a library. the introduc- tion of computer time.sharing in the 1960's partitioned the capacity of ex- pensive computers in order to lower their access cost and allow community use. And just as the Industrial Revolu- tion made possible the personal book by providing inexpensive paper and mech- anized printing and binding. the mi- croelectronic revolution of the 1970's will bring about the personal comput- er of the 1980~s. with sufficient storage and speed to support high-level com- puter languages and interactive graphic displays. I deally the personal computer will be designed in such a way that people of all ages and walks of life can mold and channel its power to their own needs, Architects should be able to simulate three-dimensional space in order to re- flect on and modify their current de- signs. Physicians should be able to store COMPUTER SIMULATIOI"\S generated on a high_resotution tetevision display at the Evans & Sutherland Computer Corporation show the quatity of the images it should eventually be possible to present on a compact personal computer, The pictures are frames from two dynam_ ic_simulation programs that revise an image 30 times per second 10 represent the continuous motion of objects in projected three-dimensional space. The sequence at the top, made for the National Aeronautics and Space Administration, shows a space laboratory being lifted out of the interior of the space shuttle. The sequence at the bottom, made for the U.S. Maritime Ad. ministration, shows the movement of tankers in New York harbor. Ability of the personal com- puter to simulate real or imagined phenomena will make it a new medium of communication. and organize a large quantity of infor. mation about their patients. enabling them to perceive significant relations that would otherwise be imperceptible. Composers should be able to hear a composition as they are composing it. notably if it is too complex for them to play. Businessmen should have an ac- tive briefcase that contains a working simulation of their company. Educators should be able to implement their own version of a Socratic dialogue with dy- namic simulation and graphic anima- tion. Homemakers should be able to store and manipulate records. accounts. budgets. recipes and reminders. Chil- dren should have an active learning tool that gives them ready access to large stores of knowledge in ways that are not possible with mediums such as books. How can communication with com- puters be enriched to meet the diverse needs of individuals? If the computer is to be truly "personal." adult and child~ users must be able to get it to perform \ useful activities without resorting to the services of an expert. Simple tasks must be simple. and complex ones must be possible. Although a personal computer will be supplied with already created simulations. such as a general text edi- tor. the wide range of backgrounds and ages of its potential users will make any direct anticipation of their needs very difficult. Thus the central problem of - personal computing is that nonexpens will almost certainly have to do some programming if their personal comput- er is to be of more than transitory help. To gain some understanding of the problems and potential benefits of per- sonal computing my colleagues and I at the Xerox Palo Alto Research Center have designed an experimental personal computing system. We have had a num- ber of these systems built and'have stud- ied how both adults and children make use of them. The hardware is faithful in capacity to the envisioned notebook. 3

Upload: others

Post on 26-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

115

Microelectronicsand the Personal Computer

Rates of progress in microeleCtronics suggest that in about a decade

many people will possess a notebook-size computer with the capacity

ofa large computer of today. What might such a system do fOr them?

T he future increase in capacity anddecrease in cost of microelectron.ic devices wiU not only give rise to

compact and powerful hardware butalso bring qualitative changes in the wayhuman beings and computers interact.In the 1980's both adults and childrenwill be able to have as a personal pos-session a computer about the size of alarge notebook with the power to handlevirtually all their information-relatedneeds. Computing and storage capacitywill be many times that of current mi-crocomputers: tens of millions of basicoperations per second wit! manipulatethe equivalent of several thousand print-ed pages of information.

The personal computer can be regard-ed as the newest example of humanmediums of communication. Variousmeans of storing. retrieving and manip-ulating information have been in exis-tence since human beings began to talk.External mediums serve to capture in-ternal thoughts for communication and.through feedback processes. to form thepaths that thinking follows. Althoughdigital computers were originally de-signed to do arithmetic operations, theirability to simulate the details of anydescriptive model means that the com-puter. viewed as a medium. can simu-late any othermedium if the methodsof simulation are sufficiently well de-scribed. Moreover, unlike conventionalmediums. which are passive in the sensethat marks on paper, paint on canvasand television images do not change in

by Alan C. Kay

response to the viewer's wishes. thecomputer medium is active: it can re-spond to queries and experiments andcan even engage the user in a two-wayconversation.

The evolution of the personal com-puter has followed a path similar to thatof the printed book. but in 40 years rath-er than 600. Like the handmade booksof the Middle Ages. the massive com-puters built in the two decades before1960 were scarce. expensive and avail-able to only a few. Just as the inventionof printing led to the community use ofbooks chained in a library. the introduc-tion of computer time.sharing in the1960's partitioned the capacity of ex-pensive computers in order to lowertheir access cost and allow communityuse. And just as the Industrial Revolu-tion made possible the personal book byproviding inexpensive paper and mech-anized printing and binding. the mi-croelectronic revolution of the 1970'swill bring about the personal comput-er of the 1980~s. with sufficient storageand speed to support high-level com-puter languages and interactive graphicdisplays.

Ideally the personal computer will bedesigned in such a way that people of

all ages and walks of life can mold andchannel its power to their own needs,Architects should be able to simulatethree-dimensional space in order to re-flect on and modify their current de-signs. Physicians should be able to store

COMPUTER SIMULATIOI"\S generated on a high_resotution tetevision display at the Evans& Sutherland Computer Corporation show the quatity of the images it should eventually bepossible to present on a compact personal computer, The pictures are frames from two dynam_ic_simulation programs that revise an image 30 times per second 10 represent the continuousmotion of objects in projected three-dimensional space. The sequence at the top, made for theNational Aeronautics and Space Administration, shows a space laboratory being lifted out ofthe interior of the space shuttle. The sequence at the bottom, made for the U.S. Maritime Ad.ministration, shows the movement of tankers in New York harbor. Ability of the personal com-puter to simulate real or imagined phenomena will make it a new medium of communication.

and organize a large quantity of infor.mation about their patients. enablingthem to perceive significant relationsthat would otherwise be imperceptible.Composers should be able to hear acomposition as they are composing it.notably if it is too complex for them toplay. Businessmen should have an ac-tive briefcase that contains a workingsimulation of their company. Educatorsshould be able to implement their ownversion of a Socratic dialogue with dy-namic simulation and graphic anima-tion. Homemakers should be able tostore and manipulate records. accounts.budgets. recipes and reminders. Chil-dren should have an active learning toolthat gives them ready access to largestores of knowledge in ways that are notpossible with mediums such as books.

How can communication with com-puters be enriched to meet the diverseneeds of individuals? If the computer isto be truly "personal." adult and child~users must be able to get it to perform \useful activities without resorting to theservices of an expert. Simple tasks mustbe simple. and complex ones must bepossible. Although a personal computerwill be supplied with already createdsimulations. such as a general text edi-tor. the wide range of backgrounds andages of its potential users will make anydirect anticipation of their needs verydifficult. Thus the central problem of

- personal computing is that nonexpenswill almost certainly have to do someprogramming if their personal comput-er is to be of more than transitory help.

To gain some understanding of theproblems and potential benefits of per-sonal computing my colleagues and I atthe Xerox Palo Alto Research Centerhave designed an experimental personalcomputing system. We have had a num-ber of these systems built and'have stud-ied how both adults and children makeuse of them. The hardware is faithful incapacity to the envisioned notebook.

3

Page 2: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

116

I. I

a

-II

-t

I.

,.....A'

I

II

Page 3: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

size computer of the 1980's, although itis necessarily larger. The software is anew interactive computer-language sys.tem called SMALLTALK.

In the design of our personal comput-ing system we were influenced by re-search done in the late 1960's. At thattime Edward Cheadle and I. working atthe University of Utah, designed FLEX,the first personal computer to directlysupport a graphics. and simulation-ori.ented language. Although the FLEX de-sign was encowaging. it was not com.prehensive enough to be useful to a widevariety of nonexpert users. We then be.came interested in the efforts of Sey-mour A. Papert. Wallace Feurzeig andothers working at the Massachusetts In-stitute of Technology and at Bolt. Ber-anek and Newman. Inc.. to develop acomputer-based learning environmentin which children would find learningboth fun and rewarding. Working with a

..

large time.shared computer. Papert andFeurzeig devised a simple but powerfulcomputer language called LOGO.Withthis language children (ranging in agefrom eight to 12) could write programsto control a simple music generator. arobot turtle that could crawl around thefloor and draw lines, and a televisionimage of the turtle that could do thesame things.

After observing this project we cameto realize that many of the problemsinvolved in the design of the person-al computer. particularly those havingto do with expressive communication.were brought strongly into focus whenchildren down to the age of six wereseriously considered as users. We alsorealized that children require morecomputer power than an adult is willingto settle for in a time-sharing system.The best outputs that time-sharing canprovide are crude green-tinted line

--

117

drawings and square. wave musicaltones. Children, however. are used tofinger paints. color television and stereo-phonic records. and they usually find thethings that can be accomplished with alow.capacity time.sharing system insuf-ficiently stimulating to maintain their in-terest.

Since LOGOwas not designed with allthe people and uses we had in mind, wedecided not to copy it but to devise anew kind of programming system thatwould attempt to combine simplicityand ease of access with a qualitative im-provement in expert-level adult pro-gramming. In this effort we were guided.as we had been with the FLEX system.by the central ideas of the programminglanguage SIMULA.which was developedin the mid-1960's by Ole-lohan Dahland Kristen Nygaard at the NorwegianComputing Center in Oslo.

Our experimental personal computer

I

II

II

il

EXPERIMENTAL PERSONAL COMPUTER was built at the Xe-rox Palo Alto Research Center in part to develop a high-level pro-gramming language that would enable nonexperts to write sophisti.cated programs. The author and his colleagues were also interestedin using the experimental computer to study tbe effects of personal

computing. on learning. The macbine is completely self-contained,consisting of a keyboard, a pointing device, a high.resolution picturedisplay and a sound system, all connected to a small processing unitand a removable disk-file memory. Display can present tbousandsof characters approaching tbe quality of those in printed material.

4

Page 4: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

118

is self.contained and fits comfortablyinto a desk. Long-term storage is provid-ed by removable disk memories that canhold the equivalent of 1.500 printedpages of information (about three mil.lion characters). Although image dis-plays in the 1980's will probably beflat.screened mosaics that reflect lightas liquid-crystal watch displays do. vi-sual output is best supplied today by ahigh.resolution black-and-white or col.or television picture tube. High-fidelitysound output is produced by a built-inconversion from discrete digital signalsto continuous waveforms. which arethen scnt to a conventional audio ampli-fier and speakers. The user makes hisprimary input through a typewriterlikekeyboard and a pointing device called a

,U\III'1i I4wd..t ,Iklt'.1..}t..ut.,,\j,"10111..1....

:\\Aw.hXI

mouse. which controls the position ofan arrow on the screen as it is pushedabout on the table beside the display.Other input systems include an organ-like keyboard for playing music, a pen-cillike pointer, a joystick. a microphoneand a television camera.

The commonest activity on our per-sonal computer is the manipulation ofsimulations already supplied by theSMALLTALKsystem or created by theuser. The dynamic state of a simulationis shown on the display, and its generalcourse is modified as the user changesthe displayed images by typing com-mands on the keyboard or pointing withthe mouse. For example. formatted tex-tual documents with multiple typefacesare simulated so that an image of the

II1",,'''"1111'''''11''''''111111''''11101

I

I 11111!Ij 11111111

I

i ",It II

I II jl1""d 1",11".f~. I .Ii. ill"

n)) ,.,,,11,1,,1' II.

lnw: M,dnllli<u h.'4"'u," R,", Aflod-RII;' R,.h, (lIi'

Mli,d"I<d

J\1 K.tJ'

"'n~ l~'r"r... 'N.oyI " I\.I~.. ,.,. ~4'!H.

1'11\'!.,ltl..Or.-j"f..! . ,'.' : 1..( ~to '.. ~ 1. ,'.

IX)J J /\1:,',

XIIWXr...,..,.; ,.,'.'11",.",. ',,'. ',,''''c-I.,

_I.'

t-".

1>.ll"

:. ,~ $

:-.Ir.r 1.,...

"WINDOWS," display frames within tbe larger display screen, enable the user to organize and~it information at 5e1leralle1leb of refinement. Once tbe windows are c:reat~ they o1lerlap ontbe screen like sheets of paper, When a partiBlly c:01ler~ window is select~ with the pointingde1lic:e, Ibe window is r~isplay~ to o1lerlap the other windows. Images with nrious degreuof symbolic conlenl c:an be display~ simultaneously. Such images include detailed halftonedrawings, analogical images sucb as graphs and symbolic: images suc:b as numbers or words.

finished document is shown on thescreen. The document is edited by point-ing at characters and paragraphs withthe mouse and then deleting. addingand restructuring the document's parts.Each change is instantly reflected in thedocument's image.

In many instances the display screen istoo small to hold all the information auser may wish to consult at one time.and so we have developed "windows."or simulated display frames within thelarger physical display. Windows orga-nize simulations for editing and display.allowing a document composed of text,pictures. musical notation. dynamic ani-mations and so on to be created andviewed at several levels of refinement.Once the windows have been createdthey overlap on the screen like sheets ofpaper: when the mouse is pointed at apartially covered window. the window isredisplayed to overlap the other win-dows. Those windows containing usefulbut not immediately needed informa-tion are collapsed to small rectanglesthat are labeled with a name show-ing what information they contain.A "touch" of the mouse causes themto instantly open up and display theircontents.

In the present state of the art softwaredevelopment is mueh more diflicult

and time-consuming than hardware de-velopment. The personal computer willeventually be put together from more orless standard microelectronic compo-nents. but the software that will give lifeto the user's ideas must go through along and arduous process of refinementif it is to aid and not hinder the goals of apersonal dynamic medium.

For this reason we have over the pastfour years invited some 250 children(aged six to 15) and 50 adults to try ver-sions of SMALLTALKand to suggest waysof improving it. Their creations. as imagoinative and diverse as they themselves.include programs for home accounts.information storage and retrieval. teach-ing. drawing. painting, music synthesis,writing and games. Subsequent designsof SMALLTALKhave been greatly influ-enced and improved by our visitors'projects.

When children or adults first encoun-ter a personal computer, most of themare already involved in pursuits of theirown choosing. Their initial impulse is toexploit the system to do things they arealready doing: a home or office managerwill automate paperwork and accounts.a teacher will portray dynamic and pic-torial aspects of a curriculum. a childwill work on ways to create pictures andgames. The fact is that people naturallystart to conceive and build personaltools. Although man has been charac-terized as the toolmaking species. tool-making itself has historically been the

5

Page 5: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

province of technological specialists.One reason is that technologies fre-quentlyrequire special techniques, ma.teria]s. tools and physical conditions.An important property of computers.however. is that very general tools forusing them can be built by anyone.Thesetools are made from the same ma-terialsand with the same efforl as morespecific creations.

Initially the children interact with ourcomputer by "painling" pictures anddrawing straight lines on the displayscreenwith the pencillike pointer. Thechildren then discover that programscan create structures more complexthanany they can create by hand. Theylearn that a picture has several represen-tations, of which only the most obvi-ous-the image-appears on the screen.The most important representation isthe editabJe symbolic model of the pic-ture stored in the memory of the com-puter. For example, in the computer animage of a truck can be built up frommodels of wheels, a cab and a bed. eacha different color. As the parts of thesymbolic model are edited its image onthe screen will change accordingly.

Adults also learn to exploit the prop-erties of the computer medium. A pro-fessional artist who visited us spent sev-eral months building various tools thatresembled those he had worked with tocreate images on paper. Eventually hediscovered that the mosaic screen-the

indelible but instantly erasable storageof the medium-and his new ability toprogram could be combined to createrich textures of a kind that could not becreated with ink or paint. From the useof the computer for the impoverishedsimulation of an already existing medi-um he had progressed to the discoveryof the computer's unique properties forhuman expression.

O ne of the best ways to teach nonex-perts to communicate with com-

puters is to have them explore the levelsof abstraction at which images can bemanipulated. The manipulation of im-ages follows the general stages of intel-lectual growth. For a young child an im-age is somelhing to make: a free mixtureof forms and colors unconnected withthe real world. Older children createimages that directly represent conceptssuch as people, pets and houses. Lateranalogical images appear whose form isclosely related to their meaning and pur-pose, such as geometric figures andgraphs. In the end symbolic images areused that stand for concepts that are tooabstract to analogize, such as num-bers, algebraic and logical terms andthe characters and words that consti-tute language,

The types of image in this hierarchyare increasingly difficult to represenl onthe computer, Free.form and literal im-ages can be easily drawn or painted with

UllIl.

!Z<11T<u--..--..--lU~k

n __

d\~lil'li(,1I-kx: li<lm.~I(-tivity--TJ----------

Tl~ ~- --.-.

)«I-t-j< 11;(), 1lI\'l~-I~J?l.~ .. 11. Sill .. 1t1t!.--- .-.,f! \.Iilll 1')Hk sl.l}"

,f! 1.lillt hld.p' IIlId. sl.l}',f! "i< f'le 1« Iii, II: t 11111III!,k eI, 11.1 t( .: ele I,f!

!''',j1<: t 11111:'tfL

('] iV", \ib +-:.iJe.+. :, ~d_(w

!I IiI IIIUl.'

SII.

l1'-J..'

,I,c'w

'1t\.l

'.l.I}<

<.:.1,:'.1.,;

_..~_.~--"-~..

SMALLTALK is a new programming language developed at the Xerox Palo Alto ResearchCenter for use on the experimental personal computer. It is made up of "activities," computer-

like entities tbat can perform a specific set of tasks and can also communicate with other actlv.itles in the system. New activities are created by enrlcblng eJl:is!ing families of activities withadditional "traits," or abilities, whicb are defined in terms of a method to be carried out. Thedescription oftbe family "box" sbown bere is a dictionary of Its traits. To create a new memberof tbe family boJl:, a message is sent to tbe trait "new" stating the characteristics of tbe new bOJl:

in terms of specific values for tbe general traits "location," "angle" and "size," In tbis eJl:ample

"new" has been filled In to specify a bOJl: located in the center of tbe screen wltb an angle ofzero degrees and a side 100 screen dots long. To '"'show"

tbe new bOJl:,a member of tbe curve-drawing family "brusb" is given directions by tbe open trait '"'shape." First tbe brush travels tothe specified location, turns in the proper direction and appears on the screen. Then it draws asquare by traveling the distance given by "size," turning 90 degrees and repeating these actionsthree more times. The last trait on the list is open, indicating that a numerical value is to besupplied by the user when tbe trait is invoked by a message. A bOJl: is "grown" by first eras-

ing It, increasing (or decreasing) its size by tbe value supplied in tbe message and redisplaylng It.

6

119

lines and halftones in the dot matrix ofthe display screen with the aid of themouse or in conjunction with programsthat draw curves, fill in areas with toneor show perspectives of three.dimen-sional models. Analogical images canalso be generated. such as a model of asimulated musical intrument: a time-se-quenced graph representing the dynam4ic evolution of amplitude. pitch varia-tion and tonal range.

Symbolic representations are partic-ularly useful because they provide ameans of handling concepls that are dif-ficult to portray directly. such as gener-alizations and abstract relations. More.over, as an image gets increasingly com-plex its most important property. theproperty of making local relations in-stantly clear. becomes less useful. Com-munication with computers based onsymbols as they routinely occur in natu-rallanguage. however. has proved to befar more difficult than many had sup-posed. The reason lies in our lack ofunderstanding of how human beings ex.ploit the context of their experience tomake sense of the ambiguities of com-mon discourse, Since it is not yet under-stood how human beings do what theydo. getting computers to engage in simi-lar activities is still many years in thefuture. It is quite possible, however. toinvent artificial computer languagesthat can represent concepts and activi-ties we do understand and that are sim-ple enough in basic structure for themto be easily learned and utilized by non.experts.

The particular structure of a symboliclanguage is important because it pro-vides a context in which some conceptsare easier to think about and expressthan others. For example. mathematicalnotation first arose to abbreviate con-cepts that could be expressed only asungainly circumlocutions in natural lan-guage. Gradually it was realized thanheform of an expression could be of greathelp in the conception and manipulationof the meaning for which the expressionstood. A more important advance camewhen new notation was created to rep-resent concepts that did not fit intothe culture's linguistic heritage at all,such as functional mappings. continu-ous rates and limits.

The computer created new needs forlanguage by inverting the traditionalprocess of scientific investigation. Itmade new universes available thaLcouldbe shaped by theories to produce simu-lated phenomena. Accordingly symbol-ic structures were needed to communi.cate concepts such as imperative de-scriptions and control structures.

Most of the programming languagesin service today were developed as sym-bolic ways to deal wilh the hardware-level concepts of the 1950's. This ap4proach led to two kinds of passive build-ing blocks: data structures. or inert con.

Page 6: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

120

Pictorial Effect Commentary

C box new named "joe"!box:Joe D

oo

An offspring of the family "box"is created and is named "joe,"

C joe turn 3D!ok The box Joe receives the

message and turns 30 degrees.

C Joegrow-IS!ok Joe becomes smaller by 15 units.

C joeerase!ok Joe disappears from Ihe screen.

C joe show!ok o Joe reappears.

C box new named "jlll"!box:JiII A new box appears.

CJillturn-IO!ok Only Jill turns. Joe and jiU are

Independent activities.

C 1 tolO!Interval:1 2 3 4 5 6 78 9 10 An Interval stands for a sequence

of numbers.

g forever!Interval:1 2345678910 1L Forever is the Infinite interval.

It must be terminated by hitting anescape key.

C 1 to10doOoeturn.20)!ok Joe spins.

g forever do Ooeturn 11.jlll luro-13)!ok A simple parallel movie of joe

and ill! spinning in oppositedirections is created bycombining forever with aturn request to both joe and Jill.

SMALLTALK LEARNING SEQUENCE teaches students the ba-sic concepts of the language by having them interact with an alreadydefinedfamily of activities.FIrst. offspringof tbe family box are cre-

ated, named and manipulated, and a second family of activities called"inlerval" is introduced. Offspring of tbe interval and box familiesare tben combined to generate an animalion of two spinning boxes.

7

Page 7: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

I

I .. if 1I

In il'

I' ! I'

I'I Ii

'

! r~ft;-,~-f>\-;;;..,';r'\.''l'lPJ;;;;----

121

HELICOPTER SIMULATION was developed by a lS_year-oldstudent. The user directs the helicopter where to gowitb the pointing

device, wbich controls the position of the black arrow on the screen.The window at the top sbows the changing topography of the terrain

struction materials. and procedures. orstep-by-step recipes for manipulatingdata. The languages based on these can.ccpts (such as BASIC. FORTRAN. ALGOLand APL) follow their descriptions in astrictly sequential manner. Because apiece of data may be changed by anyprocedure that can find it the program-mer must be very careful to choose onlythose procedures that are appropriate.As ever more complex systems are at-tempted. requiring elaborate combina-tions of procedures. the difficulty of get-ting the entire system to work increasesgeometrically. Although most program-mers are still taught data-procedure lan-guages. there is now a widespread recog-nition of their inadequacy.

A more promising approach is to de.vise building blocks of greater generali-ty. Both data and procedures can be re-placed by the single idea of "activities."computcrJike entities that exhibit be-havior when they are sent an appropri-

ate message. There are no nouns andverbs in such a language. only dynami-cally communicating activities. Everytransaction, description and controlprocess is thought of as sending mes-sages to and receiving messages fromactivities in the system, Moreover, eachactivity belongs to a family of similaractivities. all of which have the abilityto recognize and reply to messages di-rected to them and to perform specificacts such as drawing pictures. makingsounds or adding numbers. New fami-lies are created by combining and en-riching "traits:' or properties inheritedfrom existing families.

A message-activity system is inherent-ly parallel: every activity is constantlyready to send and receive messages, sothat the host computer is in effect divid.ed into thousands of computers. eachwith the capabilities of the whole. Themessage-activity approach therefore en-ables one to dynamically represent a

system at many levels of organizationfrom the atomic to the macroscopic. butwith a "skin" of protection at each quali-tative level of detail through which ne-gotiative messages must be sent andchecked. This level of complexity can besafely handled because the language se-verely limits the kinds of interactionsbetween activities. allowing only thosethat are appropriate, much as a hor.mone is allowed to interact with only afew specifically responsive target cells.SMALLTALK.the programming system ofour personal computer. was the firstcomputer language to be based entirelyon the structural concepts of messagesand activities.

The third and newest framework forhigh-level communication is the' observ-er language. Although message-activitylanguages are an advance over the data.procedure framework. the relationsamong the various activities are some-what independent and analytic. Many

.;~--

ClRlTIT.DRAWING PROGRAM that was developed by a IS-~ear_oldboy enables a user to construct a complex circuit diagram by

selecting components from a "menu" displayed at tbe bonom of tbe

screen. The components are then p~itioned and connected with the

8

Page 8: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

122

1

below as the belicopter flies oYer it. (Actual terrains were obtainoofrom La/ldsor maps.) A tbird window keeps track of tbe helicopter's

concepts. however. are so richly inter-woven that analysis causes them virtual.ly to disappear. For example. 20th-cen-tury physics assigns equal importanceto a phenomenon and its context, sinceobservers with different vantage pointsperceive the world differently. In an ob-server language. activities are replacedby "viewpoints" that become attachedto one another to form correspondencesbetween concepts. For example, a dogcan be viewed abstractly (as an animal),analytically (as being composed of Of-gans. cells and molecules). pragmatical-ly (as a vehicle by a child), allegorically(as a human being in a fairy tale) andcontextually (as a bone's way to fertilizea lawn). Observer languages are justnow being formulated. They and theirsuccessors will be the communicationvehicles of the 1980's.

Our experience, and that of otherswho teach programming. is that a firstcomputer language's particular style

mg~~=:J .,,

I'I,

altitude, direction and speed. The variety of events tbat can be simu_lated at tbe same time demonstrates tbe power of parallel processing.

and its main concepts not only have astrong inftuence on what a new pro-grammer can accomplish but also leavean impression about programming andcomputers that can last for years. Theprocess of learning t~ program a com-puter can impose such a particular pointof view that alternative ways of perceiv-ing and solving problems can becomeextremely frustrating for new program-mers to learn.

At the beginning of our study we firsttimidly considered simulating featuresof data-procedure languages that chil-dren had been able to learn. such as BA-SICand LOGO.Then. worried that the im-printing process would prevent strongerideas from being absorbed. we decidedto find a way to present the message-ac-tivity ideas of SMALLTALKin concreteterms without dilution. We did so bystarting with simple situations that em-bodied a concept and then gradually in-creasing the complexity of the examples

to flesh out the concept to its full gener-ality. Although the communication likemodel of SMALLTAI.Kis a rather abstractway to represent descriptions. to oursurprise the first group and succeedinggroups of children who tried it appearedto find the ideas as easy to learn as thoseof more concrete languages.

For example. most programming lan-guages can deal with only one thing at atime. so that it is difficult to representwith them even such simple situations aschildren in a school. spacecraft in thesky or bouncing balls in free space. InSMALLTALKparallel models are dealtwith from the start, and the childrenseem to have little difficulty in handlingthem. Actually parallel processing is re-markably similar to the way peoplethink. When you are walking along astreet. one part of your brain may bethinking about the route you are tak-ing. another part may be thinking aboutthe dinner you are going to eat, a third

pointing device, An additional menu can be generated on the screenby pushing a button on the pointing dtVice; Ihis menu supplies solid

and open dots and lines of various widths. In the sequence shownhere two components are selected and added to a circuit diagram.

9

Page 9: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

-,I

~I I

-. .

,"...0,"" "."- 114.'...".............;i "',.""'"

I

-

123

1

~f1'i~t-Oq,.!

,j

.

I

I

I

J1

HORSE-RACE ANIMATION sbows tbe tapabllities of tbe experi-mental personal computer for creating dynamic halftone images. ThepOS!ijble range of such simulations is limited only by tbe versatility oftbe programming language and the imagination of the child or adult

user. In tbis sequence, Images of borses, riders and background arecalled up Independently from tbe storage files and arranged for tberacing simulation witb the pointing device. A single typedcommandthen CaWie5 the two borses and riders to race eacb other across screen.

10

Page 10: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

1 124

pari may be admiring the sunset. andso forth.

Another important characteristic ofSMAlLTALKis the classification of ob.jects into families that are generaliza-tions of their properties. Children readi-ly see themselves as members of thefamily "kids." since they have commontraits such as language. interests andphysical appearance. Each individual isboth a member of the family kids andhas his or her own t1leaning for theshared traits. For example. all kids havethe trait eye color. but Sam's eyes areblue and Bertha's are brown. SMALL.TALKis built out of such families. Num.ber symbols. such as 2 or 17. are in.stances of the family "number." Themembers of this family differ only intheir numerical value (which is theirsole property) and share a common def-inition of the different messages theycan receive and send. The symbol of a"brush" in SMALLTALKis also a family.All the brush symbols have the ability todraw lines, but each symbol has its ownknowledge of its orientation and whereit is located in the drawing area.

T he description of a programminglanguage is generally given in terms

of its grammar: the meaning each gram-matical construction is supposed to con-vey and the method used to obtain themeaning. For example, various pro-gramming languages employ grammati-cal constructions such as (PLUS3 4) or 3ENTER4 + to specify the intent to addthe number 3 to the number 4. Themeaning of these phrases is the same,In the computer each should give rise tothe number 7. although the actual meth-ods follpwed in obtaining the answercan differ considerably from one typeof computer to the next.

The grammar of SMALLTALKis simpleand fixed. Each phrase is a message toan activity. A description of the desiredactivity is followed by a message thatselects a trait of the activity to be per-formed. The designated activity will de.cide whether it wants to accept the mes-sage (it usually does) and at some latertime will act on the message. There maybe many concurrent messages pendingfor an activity. even for the same trait.The sender of the message may decideto wait for a reply or not to wait. Usual-ly it waits, but it may decide to go aboutother business if the message has in.voked a method that requires consider-able computation,

The integration of programming-lan-guage concepts with concepts of edit-ing, graphics and information retrievalmakes available a wide range of usefulactivities that the user can invoke withlittle or no knowledge of programming.Learners are introduced to SMALLTALKby getting them to send messages to al-ready existing families of activitIes, such

"';.

MUSIC CAN BE REPRESENTED on fhe personal eomputer in the form of analogical im_ages. Notes played on the keyboard are "captured" as a time.sequenCed score on the display.

-- - .- -- -.--.-- ............. ............................ a....__.. ..a ..

..aa..a._a'.

Pit< h'~ Sirek h Bre.u..Syn< AMH('II' ~~~ (.!uit C<1'Y Shih t:V

MUSICAL SCORE sbown here was generated as musie was played on the keylroard. The sim_plified notation represents pitch by ;ertical placement and duration by hori:i:ontal length. Notescan be shortened, lengthened or changed and the modified piece tben played back as music.

11

Page 11: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

.... .....

. .... .. ... ..... ,.... ....

. .... .. ... ... ............ .........~..

..... .. .. ............ . .. .......... ..... ..... ... ...........

..... .. .. ............ . .. ............ .... ...... . ... ..........12

as the family "box," whose membersshow' themselves on the screen assquares. A box can individually changeits size. location. rotation and shape. Af.ter some experience with sending mes-sages to cause effects on the displayscreen the learner may take a look at thedefinition of the box family. Each fami-ly in SMALLTALKis described with a dic-tionary of traits, which arc defined interms of a method to be carried out. Forexample. the message phrase "joe grow50" says: Find the activity named "joe,"find its general trait called "grow _"and fill in its open part with the specificvalue 50. A new trait analogous to thosealready present in the family definition(such as "grow" or "Iurn") can easily beadded by the learner. The next phase oflearning involves elaboration of this ba-sic theme by creating games such asspace war and tools for drawing andpainting.

T here are two basic approaches topersonal computing. The first one.

which is analogous to musical improvi-sation, is exploratory: effects are causedin order to see what they are like anderrors are tracked down. understoodand fixed. The second, which resemblesmusical composition. calls for a greatdeal more planning, generality andstructure. The same language is used forboth methods but the framework isquite different.

From our study we have learned theimportance of a balance between freeexploration and a developed curricu-lum. The personal computing experi-ence is similar to the introduction of apiano into a third-grade classroom, Thechildren will make noise and even musicby experimentation, but eventually theywill need help in dealing with the instru-ment in nonobvious ways. We have alsofound that for children the various lev-els of abstraction supptied by SMALL-T LK are not equally accessible. Thecentral idea of symbolization is to give asimple name to a complex collection ofideas. and then later to be able to invokethe ideas through the name. We haveobserved a number of children betweenthe ages of six and seven who have beenable to take this step in their comput-er programs, but their ability to lookahead. to visualize the consequences ofactions they might take. is limited.

Children aged eight to 10 have a grad-

DISPLAY FONTS can be designed on per_sonat computer by constructing them from amatrix of black-and-white squares, When thefonts are reduct'd, they approach the quatityof those in printed material, The image of apointing hand shown here is a sym bot in S'tAU-

TAL" represel1ting the concept or a literat word,such as the name associated with an activity,

125

ually developing ability to visualize andplan and are able to use the concept offamilies and a subtler form of naming:the use of traits such as size, which canstand for different numerical values atdifferent times. For most children, how-ever, the real implications of furthersymbolic generality are not at all obvi-ous. By age 11 or 12 we see a consider-able improvement in a child's ability toplan general structures and to devisecomprehensive computer tools, Adultsadvance through the stages more quick-ly than children, and usually they createtools after a few weeks of practice. It isnot -known whether the stages of intel-lectual development observed in chil-dren are absolutely or only relativelycorrelated with age, but it is possiblethat exposure to a realm in which sym-bolic creation is rewarded by wonderfuleffects could shorten the time requiredfor children to mature from one stageto the next.

The most important limitation on per-sonal computing for nonexperts appearswhen they conceive of a project that,although it is easy to do in the language.calls for design concepts they have notyet absorbed. For example, it is easy tobuild a span with bricks if one knows theconcept of the arch. but otherwise it isdifficult or impossible. Clearly as com-plexity increases "architecture" domi-nates "material." The need for ways tocharacterize and communicate architec-tural concepts in developing programshas been a long-standing problem in thedesign of computing systems. A pro-gramming language provides a contextfor developing strategies. and it mustsupply both the ability to make toolsand a style suggesting useful approachesthat will bring concepts to life.

We arc sure from our experience thatpersonal computers will become an inte-gral part of peoples' lives in the 1980's.The editing. saving and sifting of allmanner of information will be of valueto virtually everyone. More sophisticat-ed forms of computing may be like mu-sic in that most people will come toknow of them and enjoy them but onlya few will actually become directly in-volved.

H ow will personal computers affectsociety? The interaction of society

and a new medium of communicationand self-expression can be disturbingeven when most of the society's mem-bers learn to use the medium routinely.The social and personal effects of thenew medium are subtle and not easy forthe society and the individual to per-ceive. To use writing as a metaphor.there are three reactions to the introduc-tion of a new medium: illiteracy. litera-cy and artistic creation. After readingmaterial became available the illiteratewere those who were left behind by the

Page 12: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

126

new medium. It was inevitable that afew creative individuals would use thewritten word to express inner thoughtsand ideas. The most profound changeswere brought about in the literate. Theydid not necessarily become better peo-ple or better members of society. butthey came to view the world in a wayquite different from the way they hadviewed it before, with consequences thatwere difficult to predict or control.

We may expect that the changes re.sulting from computer literacy will be asfar-reaching as those that came from lit-eracy in reading and writing. but formost people the changes will be subtleand not necessarily in the direction oftheir idealized expectations. For exam-ple. we should not predict or expect thatthe personal computer will ['oster a newrevolution in education just because itcould. Every new communication medi-um of this century-the telephone. themotion pic(ure. radio and television-has elicited similar predictions that didnot come to pass. MilJions of uneducat-ed people in the world have ready accessto the accumulated culture of the centu-ries in public libraries. but they do notavail themselve-s of it. Once an individu-alar a society decides that education isessential. however. the book. and nowthe personal computer. can be amongthe society's main vehicles for the trans'-mission of knowledge.

The social impact of simulation_thecentral property of computing-mustalso be considered. First. as with lan-guage. the computer user has a strongmotivation to emphasize the similaritybetween simulation and experience andto ignore the great distances that sym-bols interpose between models and thereal world. Feelings of power and a nar-cissistic tascination with the image ofoneself reftected back from the machineare common. Additional tendencies areto employ the computer trivially (simu-lating what paper. paints and file cabi-nets can do). as a crutch (using the com-puter to remember things that we canperfectly welJ remember ourselves) oras an excuse (blaming the computer forhuman failings). More serious is the hu-man propensity to place faith in and as-sign higher powers to an agency that isnot completely understood. The factthat many organizations actualiy basetheir decisions on-worse, take their de.cisions from---computer models is pro-foundly disturbing given the currentstate of the computer art. Similar feel-ings about the wriuen word persist tothis day; if something is "in black andwhite." it must somehow be true.

If you like to draw. do not automatedrawing; rather. program your personalcomputer to give you a new set of paints.If you like to play music. do not build a"player piano": instead program your-self a new kind of instrument.

A popular misconception about com.puters is that they are logical. Forthrightis a better term. Since computers cancontain-arbitrary descriptions. any con-ceivable collection of rules, consistentor not. can be carried out. Moreover.computers' use of symbols, like the useof symbols in language and mathemat.ics. is sufficiently disconnected from thereal world to enable them to createsplendid nonsense. Although the hard-ware of the computer is subject to natu-rallaws (electrons can move through the

circuits only in certain physically de-:1ned ways). the range of simulations thecomputer can perform is bounded onlyby the limits of human imagination. In acomputer. spacecraft can be made totravel faster than the speed of light. timeto travel in reverse.

It may seem almost sinful to discussthe simulation of nonsense. but only ifwe want to believe that what we know iscorrect and complete. History has notbeen kind to' those who subscr!be to thisview. It is just this realm of ...apparentnonsense that must be kept open for thedeveloping minds of the future. Al-though the personal computer can beguided in any direction we choose. thereal sin would be to make it act like amachine!

t"!

K~'Q<I'\<U:-' 1'''I<'IIILf,I, I"iul :!d.~ ~illl Zh!1M l'OHliu,.

((',l"""IUf.I'I"inl~~'_1n1.W,W.,Zlutlill'It. d..

1"11111'..1'l_illT '>t'Jt~ ,"1Ii1

l6tj l't6. IJ(I1,lill'((-,'''nuII.I,IIll'lf.11: IZ",,"t!. tHIll. .L

1.L_\

1

Children who have not yet lost muchof their sense of wonder and fun

have helped us to find an ethic aboutcomputing: Do not automate the workyou are engaged in. only the materials.

INTRICATE PAlTERNS un be generated on the penonal computer with very compact de.scriptions in S:'IALLTALK.They are made by repeating, rotating, scaling, superposing and combin.ing drawings of simple geometric shapes. Students wbo are learning to program fint create in.teresting free-form or literal images by drawing them directly in the dot matrix. of the displayscreen. Eventually they learn to employ tbe symbolic images in tbe programming language todirect tbe computer to generate more complex imagery than they could easily create by hand.

13

Page 13: Microelectronics andthePersonalComputermnielsen.github.io/notes/kay/micro.pdf · EXPERIMENTAL PERSONAL COMPUTER was built atthe Xe-rox Palo Alto Research Center inpart todevelop ahigh-level

127

The Author

ALAN C. KAY is a principal scientistand head of the Learning ResearchGroup at the Xerox Palo Alto ResearchCenter. He received his B.A. in mathe-matics from the University of Coloradoat Boulder and. after a short career as aprofessional jazz guitarist. studied com-puter science at the University of Utah,obtaining his Ph.D. in 1969. He then be.came a research associate and lecturerat the Stanford University Artificial In-telligence Project. He moved to Xeroxin 1971. "I have always been equallyattracted to the arts and the sciences." hewrites. "Eventually I discovered that the

world of computers provides a satisfy.ing environment for my blend of inter-ests."

Bibliography

TOWA.RDS A THEORY OF INSTRUCTION.Jerome S. Bruner. Belknap Press ofHarvard University Press. t 966.

ARTIFICIALINTELLIGENCE.Seymour A.Papert and Marvin Minsky. CondonLectures. Oregon State System ofHigher Education. 1974.

PERSONALDYNAMICMEDIA. Alan C.Kay and Adele Goldberg in Comput-er, Vol. 10. No.3. pages 31-41:March. 1977.