September 14, 2009

Re-reading "Mindstorms" (S.Papert)

Seymour Papert's book "Mindstorms" has been one of my favorite books ever since I read this book almost 10 years ago. I’ve been fascinated with the philosophy of Papert about learning and education, including key concepts of “object-to-think-with” and “debugging”.

Today, however, I would like to take up another minor parts of this book, but which seems to be important to consider, rather than the explicit key concept as above.

"The idea of programming is introduced through the metaphor of teaching the Turtle a new word." (p.12)

This statement implies quite important thought about the relationship between children and computer agent such as "Turtle" in LOGO. Providing this kind of tools, children can obtain not only tools to manipulate but also "buddy" whom they need to teach. Like a children’s play with dolls, robots, and stuffed toys, children can replace the standpoint between themselves and their computer agent, and empathize with the agent. They can be, so to speak, a big sister or a big brother of the agent.

This situation is very interesting, because children play both roles of "learner" and "teacher" at the same time. Borrowing the phrase of this book, it looks like the situation as follows.

"Novice is not separated from expert, and the experts are also learning" (p.179)

I think that the possibility of this nesting structure of learning and teaching should be considered more seriously.

The thought just described seems be true in the light of my own experience. When I was junior and high school student, I really enjoyed to making programs like games, tools for developing it, and some kind of artificial intelligence. My start point was to make games such as action games to go to a goal, puzzle games including competition with a computer player, and conversation game with computer agent. For me, thinking about the algorithm for thinking of characters in games was really attractive, and I felt that I needed to teach a lot of things for the characters to think and act in their world, which is an artificial world in games. I tried to make them more intelligent to overcome the human players, including me, in order to make the games more interesting and difficult. At that time, I thought of myself as a robot designer like the future-type doctor in cartoon, and was getting to empathize each of computer agents.

With these experiences, I became to read books about Artificial Intelligence and also tips for smart thinking, and implemented it to my computer agents. This was my exploration with "object-to-think-with". Then, as an aside, I studied Artificial Intelligence, especially neural network and distributed AI, when I was university student, and wrote my doctor’s thesis about modeling tools for multi-agent social simulation. Furthermore, I have been teaching complex systems with multi-agent modeling and simulation in university. So I could say that my current profession is based on these experiences. I thus learned a lot from my learning experience with "object-to-think-with".

- Seymour Papert, "Mindstorms: Children, Computers, and Powerful Ideas", Second Edition, Basic books, 1993

Making Process of Learning Patterns

Learning patterns are developed by the really active and creative collaboration for one year at Learning Patterns Project, Keio University. I would like to briefly overview the making process of our pattern language.

In the first half of the process, we started some survey and brain storming about the knack of experienced learners. Again and again we conduct both of divergent thinking and convergent thinking. Sometime we thought in the view related to curriculum, sometimes in the view of campus life. The pieces of idea about effective and creative learning were organized and categorized over the discussion. Summarizing the idea, the candidate of patterns were emerged.

In the latter half of the process, we wrote the detail of patterns and held the workshop to improve the patterns more than twenty times. Drawing the illustration of each pattern was proceeded in parallel, so sometimes the illustration help to shape the contents of the patterns. We always spend six hours a week for workshop to improve a patterns. This phase was a precious experience for us but also really hard task because of no end is in sight.

Here, we shall explain the style of this workshop, because it is very important for improvement of pattern languages. We learned the workshop style explained here is in the Conference on Pattern Languages of Programs (PLoP), which is annually held both in United States and Europe. Our method to improve a pattern language is a variation of the method which is sophisticated in the area of software design. The pattern communities have developed the way to improve and approve the patterns, which this process is also a kind of creative collaboration and it is depend on mutual approval.

The participants of the workshop consists of authors of patterns which are taken in the workshop and some volunteers. Participants are required to read all papers in advance, which are including some patterns respectively. Then in the workshop, they spend one and half hour to talk about each paper. Most interesting rule of the workshop is that the author should shut his / her mouth, instead of giving a presentation or explanation. Only other participants except the author allow to talk about the proposed patterns. The author has responsibility to write down the comments for improving the patterns.

The reason why the author ought not to say something is related to the thought that pattern language is "language" to use. Therefore It is necessary for the pattern language to be understandable for the various readers. Through such a process, the author can know which part of description is mistakable for others, and also get more appropriate or attractive words, explanation, and examples. Furthermore it is another important rule of workshop that they can say only positive comments including the clue to improve the pattern. This rule works well to drive the participants into good collaboration. Like this, the proposed pattern language in this paper has been improved through such a workshops in our project.