alanKay+talk

Alan Kay's educational vision
- my presentation to [|VITTA Conference] - Monday 19th November, 2007


 * Slides**: [[file:alanKaySlides.odp]]

1. Big ideas (philosophy)
> Humans are natural born cyborgs (Andy Clark) > outline different attitudes to the role of technology in human development? (humanistic, soft technological determinism) > after observing Papert's use of LOGO in schools in 1968, "... this encounter finally hit me with what the destiny of personal computing really was going to be. Not a personal dynamic vehicle, as in Engelbart's metaphor opposed to IBM 'railroads', but something much more profound: a personal dynamic medium. With a vehicle one could wait until high school and give 'drivers ed', but if it was a medium, it had to extend into the world of childhood" (rationale for children's power)
 * Dramatic change is eternal (history, futures). //"You cannot step into the same river twice"// - Heraclitus
 * Computer-human symbiosis, personal computer as an amplifier of human reach, or “//augmentation of human intellect//” (Doug Engelbart)
 * Computer as medium, not a vehicle (Engelbart) or railroads (fluidity continuum from medium-vehicle-railroads)
 * Recursion: By making the parts as powerful as the whole then we avoid the tyranny of the subgoals

NON UNIVERSALS
From anthropological research of over 3000 human cultures, he presented two lists, the first were //universals//, the things that all human cultures have in common. This list included things like:
 * language
 * communication
 * fantasies
 * stories
 * tools and art
 * superstition
 * religion and magic
 * play and games
 * differences over similarities
 * quick reactions to patterns
 * vendetta, and more

He then presented a list of //non universals//, the things that humans find harder to learn. This list was shorter and included:


 * reading and writing
 * deductive abstract mathematics
 * model based science
 * equal rights
 * democracy
 * perspective drawing
 * theory of harmony
 * similarities over differences
 * slow deep thinking
 * agriculture
 * legal systems

narrative, argument, systems theory
. Since the 17th Century the most influential Western cultural expressions have been arguments, not narratives. More recent forms of argumentation defy linear representation:
 * chaos theory
 * complex systems
 * simulation modelling

Only a tiny fraction of people are fluent in these forms of communication. Children are wired for story telling but not for logic and systems theory. The computer as a medium is capable of simulating any descriptive model. Simulation is more effective learning than a maths equation and made possible through the computer. So far, this has worked for science, but not for school.

3. Some tensions or contradictions arising from the above and some possible resolutions
What is this? An attempt to iterate over some different positions about the co-evolution of technoogy with humans, the “technology and progress” debate and how this relates to child development and education. This is meant to represent some sort of progression but also with feedback loops to earlier iterations as the later ones are developed

a) tension between computers and human development
different positions taken – Damnation, Salvation, Cyborgs (Brooks, Flesh and Machines, Ch.9) resolution – develop computers as a personal meta medium for children to explore certain powerful ideas discuss – history of PC development, personal meta medium; for children; powerful ideas; concept of the future

b) tension between how children learn and the complex, non spontaneous nature of the development of advanced scientific or Enlightenment ideas
resolution – develop an honest children's version of the advanced ideas slogan - “doing with images makes symbols” (Bruner / Kay) discuss – what are powerful ideas, how do we know?, examples (laws of motion, calculus by vectors, exponential growth, feedback, system ecologies), the allegation of Schools failure, particular role of the computer in the process of communicating powerful ideas to children

c) tension between the user interface and the underlying computational model
discuss – alan kay directly involved in development of the MVC (GUI model), the first OOPs language, Smalltalk (a powerful model for complex programming) and the dynabook vision discuss – competing notions of the user, “user friendly” systems and the user as co-designer, the ethic of mutability and simplicity, recursive design resolution – Etoys incorporates features from logo, smalltalk (including late binding), hypercard, starlogo (kedama) and morphic – an integration of some of the most interesting programs over the past 35 years metaphors - cell - body, object - message

"I think there is a world market for maybe five computers," - alleged 1943 quote, Thomas Watson, IBM President
 * first iteration**: the tension between computers and human development

Once Moores Law was articulated (1965) then the idea that the predominant mainframes would be overwhelmed by personal computers arose. Alan Kay was one of those who had this idea (in 1967), which was quite unsettling at that time: “For the first time I made the leap of putting the room-sized interactive TX-2 or even a 10 MIP 6600 on a desk. I was almost frightened by the implications; computing as we knew it couldn't survive--the actual meaning of the word changed--it must have been the same kind of disorientation people had after reading Copernicus and first looked up from a different Earth to a different Heaven” - [|Early History of Smalltalk]

Kay was also influenced by Papert's use of logo in schools. This led onto him developing a notion of children using computers as a personal meta medium to explore powerful ideas

This thinking takes place in the context of the more general backdrop of different positions taken with respect to computers and human development – with scenarios such as Damnation, Salvation and Cyborgs as outlined, for example, by Rodney Brooks in his book, //Flesh and Machines//, Ch.9.

Alan Kay's position was similar to one articulated earlier by Doug Engelbart and J. C. R. Licklider --> computer-human symbiosis, the personal computer as an amplifier of human reach, or “//augmentation of human intellect//”. or computer as a “thought amplifier”

This is a very different (“futurist”) vision from the non vision that Schools tend to have, that computers are just tools which require skill to use, but which are subservient to the real education represented by the curriculum. However, this tension and inter-relationship between the computer and the curriculum needs to be explored in a more detailed and nuanced fashion.


 * second iteration**: the tension between how children learn and the complex, non spontaneous nature of the development of advanced scientific or Enlightenment ideas

the non universals:

 * reading and writing
 * deductive abstract mathematics
 * model based science
 * equal rights
 * democracy
 * perspective drawing
 * theory of harmony
 * similarities over differences
 * slow deep thinking
 * agriculture
 * legal systems

The non universals have not arisen spontaneously, they have been discovered by the smartest humans after hundreds or thousands of years of civilisation. Hence, it follows that children need guidance in learning them, they will not be discovered by open ended discovery learning. There is an objective need for some version of “school” - where advanced knowledge is somehow communicated from those who know it to those who don't.

The resolution of this tension is to develop an honest children's version of the advanced ideas. For some of these ideas (not all) the computer can aid this process. Which ones? The list would include the laws of motion, turtle geometry, calculus by vectors, exponential growth, feedback and system ecologies. I think this should be the starting point or at least one of the starting points about how computers should be used in schools.

Part of the discussion here is establishing that computers are not currently used to their full potential in schools. IMO once the above vision of how computers could be used in schools is understood then it becomes obvious that they are currently poorly used in schools.

This part of the discussion is still at the level of the broad overall vision.


 * third iteration**: the tension between a computer user interface and the underlying computational model

Alan Kay was directly involved in development of the GUI (MVC), the first OOPs language, Smalltalk (an object <- message model for programming complexity) the personal computer and the dynabook vision (an integration of these ideas into a meta medium for children)


 * USER INTERFACE**

What sort of user interface is suitable for learning?

We have become very used to a certain style of user interface, one which is “user friendly” and which gives us access to the function of the computer. The user friendly user interface has been designed by experts to not demand too much of the end user. Some systems take this a step further and actively discourage the user from becoming curious about how things work under the hood.

It is not just a matter of “user friendly”, in itself that is not serious grounds for complaint. It is the idea of users as users of clearly defined applications that have been developed by “experts”. In large part this state of things has arisen through commercialisation. A marketable commodity requires a clear definition. So proprietary applications are developed as a black box as an expression of “efficient software engineering”. In this commercial vision the “personal computer” is not really personal because most of its interfaces have been standardised which transforms the actors into docile agents who respond in predicatable ways to stimuli.

“my life belongs to the engineers ... we hesitate to exist” (Latour) “The self evident state of the art blinds people to other possibilities” (Andy diSessa)

If you start from a more philosophical perspective of amplifying human reach, of computer as a meta medium for expressing the creative spirit then the attitude to the user is different. The user, as well as being a user, is also a potential constructionist designer and developer who eventually will be able to create their own tools. So, the tools for exploring the system should be powerful and easily accessible. This is one of the features of Smalltalk.

The ethic is one of mutability and simplicity. Every component of a system is open to be explored, investigated, modified and built upon. The tool / medium distinction is blurred and so is a lot of other false clarity. Rather than a world of reified “experts”, “engineers”, “designers”, “end-users”, “miracle workers” and “plain folks” it would be better to blur these boundaries, particularly for learning environments.


 * ETOYS and OBJECT ORIENTED PROGRAMMING**

One piece of educational software that attempts to put much of this together is Etoys, which incorporates features from logo, smalltalk (including late binding), hypercard, starlogo and morphic – an integration of some of the most interesting programs over the past 35 years. Etoys is part of the OLPC project.

A slogan that helps understands some of the thinking behind the etoys user interface is “doing with images makes symbols” (Bruner / Kay)

Jerome Bruner (1960s) identified three mentalities: enactive (kinesthenic), iconic and symbolic (abstraction). The idea is that repeated doing of visual manipulations will gradually lead to the students developing abstract ideas.

Etoys is a "live" system. The code can be written and variables manipulated directly while the system is still running in front of you. This makes powerful ideas such as variables and feedback far more accessible. It has transparent parallelism (aka late binding)

Etoys represents an attempt to make an object <-- message model of programming accessible to children, a better underlying model to represent complexity than a procedural model. Some people have argued that this OOPs model cannot be taught to children but Etoys represents an attempt to show that it is possible.

In etoys the GUI consistently represents the underlying model. For example, you have drag and drop visual tiles which then spell out something like: ball's heading <-- 45 + random(90) This is like an English sentence: receives

Another metaphor here is cell biology. One kind of building block which can differentiate into all the needed building blocks. You need an evolutionary approach.

Smalltalk has a recursive design. Why divide a computer into weaker things such as data structures and procedures? Instead why not divide it up into little computers?

The foundational premises of Smalltalk are:
 * everything is an object
 * objects send and receive messages
 * objects have their own memory
 * every object is an instance of a class
 * the class holds the shared behaviour of its instances
 * to evaluate a program list control is passed to the first object and the remainder is treated as its message

Alan Kay regrets the terminology, object orientated, thinking later that message orientated would have expressed it better

**important dates, influences and partial biography for alan kay**
1958 ARPA established in response to Sputnik (1957) 1963 Sketchpad: A man-machine graphical communication system (Ivan Sutherland) – masters / instances, (Kay doesn't see this until 1966) 1965 Moores law first articulated 1966 joins Uni of Utah (ARPA, pioneering research into computer graphics) 1966 Simula – procedural language for controlling Sketchpad like objects (“This was the big hit and I've not been the same since ... an entirely new way to structure computations”) 1969 ARPANET (packet switching network) 1967-69 The FLEX machine, a first attempt at an OOP based personal computer 1967 personal computer idea – putting a room sized computer onto a desk (EHST, 72) hears Minsky's on Piaget, Papert, critique of School – computers offer new ways of dealing with complex systems 1968 visits Papert, Feurzig, Solomon to see children using logo in schools – develops personal dynamic medium (not vehicle) idea, which had to extend into childhood (EHST, 73) 1969 Kay PhD thesis, Uni of Utah, FLEX OOPs (The reactive engine) really understands LISP (EHST, 74) 1972 Kay Manifesto: A Personal Computer for Children of all ages (ACM Conference Paper) 1970 - 1979 Xerox PARC Smalltalk-71, Smalltalk-72, Smalltalk-76 1980-84 Atari video games 1983 first TCP/IP wide area network 1985-95 Apple Vivarium, Los Angeles Open School (a “magnet” school), Hypercard multimedia authoring (4 predefined objects: stack, card, field, button) 1987 logo backlash, Papert's technocentrism article 1989-91 Tim Berners Lee creates the world wide web (HTML, HTTP, URL) 1992 interim dynabook $700 (EHST, 2) 1995 ? 1996 Squeak released 1996-2001 Walt Disney Imagineering 2001- now Viewpoints Research Institute 2004 Turing Award (ACM, Association of Computing Machinery) 2005 The Squeak Foundation – Stephane Ducasse 2006 Etoys included in OLPC Vivarium: enclosure for keeping plants and animals alive in their natural habitat in order to study them – children design and development of complex ecoogical simulations Spreadsheet observer model (watching the state of other objects) 7.1



reference (annotated):
[|The Computer Revolution Hasn't Happened Yet] (2004 video, his ACM Turing Award speech) (unfortunately this link is currently broken, I've report it to the ACM site administrator - Bill 14Nov07)

Perhaps the most disturbing "trend which became reality" over the last 25 years has been a recharacterization and professing of the various computing fields as though Computer Science and Software Engineering have actually been invented and can be taught in ways that parallel fields such as physics and structural engineering. This is "science & engineering envy" pure and simple!

The result is that so much of what is taught in high schools and universities looks backwards—not for historical interest, which is almost absent, or even to great ideas of the past—but (a) to emphasize what all too often have been workarounds for what we don't yet know how to do, and (b) to substitute vocational training for real knowledge and perspective.

One of the most interesting characteristics of computing in the best universities of the 1960s was that the professors told the students that nothing much of importance was known, and it was the duty of all to try to invent a real computing science and software engineering. This was a very healthy attitude and led to many good starts towards qualitatively better approaches to our exciting area of interest. Just as "civilization" is not a place or state, but a process of people who are trying to be more civilized, real computing is the process of people trying to make a better notion of computing. The most progress will be made by young people who have been encouraged to criticize old conceptions and invent new ones with an elevated notion of what constitutes a high threshold for a good idea.

It is the duty of all enfranchised computerists to help this happen. Since our paths of thinking are so conditioned by the early environments we put so much effort into learning, it is of critical importance to pay the highest attention to the introductions to our field for children, young adults and college students. This talk is about how we might introduce computing to beginners to help them see the real beauties and possibilities of our field in a way that will both get them fluent in the small amount of good stuff that is known, and most importantly to encourage them to make qualitative improvements in computing. ([|abstract] )

[|Tracing the Dynabook: A Study of Technocultural Transformations] (PhD Dissertation) by John W. Maxwell This pulls together a lot of scattered information about Alan Kay into one place, very valuable from that point of view. Start with Chapter 4 to obtain an overview of Alan Kay's educational vision. Maxwell correctly stresses the importance of a historical perspective, going back to the 1960s, in order to understand how educational computing got to the place it is now.

[|The Early History of SmallTalk] by Alan Kay [|The Early History of SmallTalk] (more readable better layout version) by Alan Kay Describes how some of the early important ideas came about - OOPS, the personal computer, iconic programming. Very rich ideas, densely packed in this article. Quite demanding but very rewarding.

[|Steps Towards the Reinvention of Programming] by Alan Kay and team (NSF grant, 2006) ... the exciting possibility of creating a practical working system that is also its own model – a whole system from the end-users to the metal that could be extremely compact (we think under 20,000 lines of code) yet practical enough to serve both as a highly useful end-user system and a “system to learn about systems”

[|The 40th Anniversary of the Dynabook], video presentation by Alan Kay (November 5, 2008) Alan Kay, Chuck Thacker, Mary Lou Jepsen and Steve Hamm (moderator) at the Computer History Museum (one hour 45 minutes), 5th November, 2008

Alan Kay outlines the history from 1958 (John McCarthy) through the personalities and inventions to circa 1972. The Dynabook plan (not yet realised):
 * 1) What are powerful ideas?
 * 2) How can they be learned with the aid of computing media?
 * 3) Can this work with human mentors?
 * 4) Can it work with computing mentors?

I have transcribed a section of this talk which relates to OLPC issues, [|here]

[|Grand Challenge: Make It Happen In The Best Possible Way] by Alan Kay Internet: "Engelbart's Dream" of many groups in close collaboration, much of it real-time and immersive requires a peer-peer and distributed solution

Personal Computing: Beyond the simple ideas of using the computer as a metamedium to simulate old media and create media that can only exist on a computer lies a more profound idea: that real computer literacy is learning how to shape and understand computer stuff itself

Teaching Real Computer Literacy to All: Sustained Relationship" Programming: sustainable "dynamic relationships" must be added to dynamic objects in order to allow complex combinations of them to be more simply stated and controlled Adaptable User Interfaces and Knowledge-That-Teaches: a vision where knowledge we come across adapts itself to the level of the person who finds it

Dynamic Math for An Entire System: Windows (60 million lines of code) compared to Squeak (220,000 lines and falling)

[| Lisa Rein's Tour Of Alan Kay's Etech 2003 Presentation] Contains a wide variety of videos illustrating the early history of computing (Ivan Sutherland's Sketchpad, Doug Englebart's GUI) as well as video of Alan Kay's own presentation of Etoys / Squeak and Croquet

[|Predicting the future] by Alan Kay Great article which examines a variety ways in which the future becomes blocked. Includes elaborations of some quotable quotes from Alan Kay, Marshall McLuhan and others (and some brand new ones from Kay): Kay: the best way to predict the future is to invent it Point of view is worth 80 IQ points the biggest thing we need to invent is the invention of the future itself the weakest way to solve a problem is just to solve it

McLuhan "I don't know who discovered water, but it wasn't a fish." "Innovation for holders of conventional wisdom is not novelty but annihilation." "We're driving faster and faster into the future, trying to steer by using only the rear-view mirror." "The 20th century is the century in which change changed."

Whitehead: "the greatest invention of the 19th century was the invention of invention itself"

Marvin Minsky: "You don't understand something until you understand it more than one way."

[|A conversation with Alan Kay] ideas about scientific culture versus pop culture (why pop culture flourishes), why Smalltalk and LISP are better than Java (the VM is written in itself) and implications about programming and UI that flow from the notion that change itself is eternal

[|Our Human Condition "From Space"] If the maps in our heads are unlike "what's out there" then we are at best what Alfred Korzybski termed "unsane"

[|Interview: Alan Kay still waiting for the revolution] Computers could be used as a "thought amplifier" (eg. model the exponential growth of a contagious disease) but there are underlying problems of (1) the poor maths / science knowledge of most adults; (2) Schools preoccupied with vocational training, which is now even rampant in elementary schools. So, although everyone is happy with students busily using computers in school very little of importance is actually happening.

[|A Personal Computer for Children of all ages] by Alan Kay (1972) Alan Kay's original articulation of his educational computing "manifesto"

[|Alan Kay Quotes] The quotes are a good introduction to the richness of Alan Kay's thinking

[|Design Principles Behind Smalltalk] by Daniel H H Ingalls (1981) This one outlines social principles, language, communicating objects, organisation, user interface and the future

NOT INTEGRATED BUT INTERESTING

HARDWARE Burroughs B5000 from the early 1960s, which the establishment hated ... the original machine had two CPUs, and it was described quite adequately in a 1961 paper by Bob Barton, who was the main designer ... Neither Intel nor Motorola nor any other chip company understands the first thing about why that architecture was a good idea ... there’s approximately a factor of 1,000 in efficiency that has been lost by bad CPU architectures ...The myth that it doesn’t matter what your processor architecture is—that Moore’s law will take care of you—is totally false. [|A conversation with Alan Kay]

WHY SMALLTALK AND LISP ARE BETTER THAN JAVA We looked at Java very closely in 1995 when we were starting on a major set of implementations, just because it’s a lot of work to do a viable language kernel. The thing we liked least about Java was the way it was implemented. It had this old idea, which has never worked, of having a set of paper specs, having to implement the VM (virtual machine) to the paper specs, and then having benchmarks that try to validate what you’ve just implemented—and that has never resulted in a completely compatible system. The technique that we had for Smalltalk was to write the VM in itself, so there’s a Smalltalk simulator of the VM that was essentially the only specification of the VM. You could debug and you could answer any question about what the VM would do by submitting stuff to it, and you made every change that you were going to make to the VM by changing the simulator. After you had gotten everything debugged the way you wanted, you pushed the button and it would generate, without human hands touching it, a mathematically correct version of C that would go on whatever platform you were trying to get onto. The result is that this system today, called Squeak, runs identically on more than two dozen platforms. Java does not do that. If you think about what the Internet means, it means you have to run identically on everything that is hooked to the Internet. So Java, to me, has always violated one of the prime things about software engineering in the world of the Internet.

Point of view is worth 80 IQ points.
 * explanation** 1: At PARC we had a slogan: "**Point of view is worth 80 IQ points**." It was based on a few things from the past like how smart you had to be in Roman times to multiply two numbers together; only geniuses did it. We haven't gotten any smarter, we've just changed our representation system. We think better generally by inventing better representations; that's something that we as computer scientists recognize as one of the main things that we try to do.


 * another explanation**: what is special about the computer is analogous to and an advance on what was special about writing and then printing. It's not about automating past forms that has the big impact, but as McLuhan pointed out, when you are able to change the nature of representation and argumentation, those who learn these new ways will wind up to be qualtitatively different and better thinkers, and this will (usually) help advance our limited conceptions of civilization ([|source])