KidSim: End User Programming of Simulations

Allen Cypher and David C. Smith, Apple

Seminar on People, Computers, and Design
Stanford University May 19, 1995


KidSim is an environment that allows children to create their own simulations and video games. They create their own characters, and they create rules that specify how the characters are to behave and interact. KidSim is programmed by demonstration, so that users do not need to learn a conventional programming language or scripting language. Informal user studies have shown that children are able to create simulations in KidSim with a minimum of instruction, and that KidSim stimulates their imagination.

We will demonstrate the system, discuss its design, and show some worlds that children have built.


Allen Cypher is a Research Scientist at Apple Computer, Inc. His main interest is in end-user programming -- giving all computer users capabilities that have traditionally belonged to programmers. Allen is a co-inventor of KidSim. He also created the Eager system, which observes a users' actions and creates programs to automate repetitive activities. He edited the book "Watch What I Do: Programming by Demonstration", published in 1993 by MIT Press.

While on the Xerox "Star" project, David Canfield Smith invented icons and the desktop metaphor for computer interfaces, today used by 100 million people. For the past several years at Apple, Dave has worked on educational software, particularly on finding a way for children to program computers. KidSim(tm) is the culmination of that work. Dave's research interests include human-computer interaction, educational software, programming language design, programming environments, end-user programming, and getting rid of the "priests" of computing. The unifying theme behind his work for the past twenty years has been the attempt to make computers more accessible to ordinary people.


Titles and abstracts for all years are available by year and by speaker.

For more information about HCI at Stanford see

Overview Degrees Courses Research Faculty FAQ