Sugar Etoys
This documentation is in process and will be added to through the month of November 2006.
Introduction to Squeak Etoys on the BTest OLPC XO November 2006 Build
Viewpoints Research Institute
Etoys on OLPC XO
This experimental system for the BTest build was done to test a wide range of Etoys facilities on the XO, including: screen size and legibility, sound and dynamic graphics generation, use of the camera, keyboard, and tablet (especially for painting and pointing), external devices (such as physical world sensors), collaboration & mentoring, etc. One of the main new facilities supplied here that will be fleshed out considerably in future builds is a comprehensive attempt to provide an interface and material that can help children learn Etoys without requiring expert adults to help them.
This document will cover the Etoys facilities provided in this experimental build, and we at Viewpoints Research Institute (a nonprofit research organization devoted to helping children learn to think), invite users and testers to email us with comments, questions and complaints at XOetoys@squeakland.org .
Status of this BTest-1 Version of Etoys
We plan to make the Etoys user interface use as many of the OLPC "Sugar" UI conventions as possible. The latter are still being designed, so there is currently not a lot of coherence with Sugar, and Etoys thus uses its own UI conventions (which are explained below). The very high resolution and unusual color gamut of the XO display required some new design, fonts, resizing, etc. The slower speed of the XO required some optimizations and a few simplifications.
This version of Etoys was adapted from the standard multilingual system that is already used in many places in the world (and is discussed at Squeakland Website and in the book "Powerful Ideas in the Classroom" by B.J. Allen-Conn and Kim Rose. For convenience, we will give a gist of this material here using screen shots from the actual XO Etoys version and examples on the BTest-1 machine.
Introduction To Etoys
Etoys is an authoring system, primarily aimed at children, in which a wide variety of dynamic media can be created and programmed/scripted, shared and collaborated. Much of the use of Etoys has been as a vehicle to help children learn "powerful ideas", especially in science and mathematics.
The main ancestors and influences of Etoys were Logo, Smalltalk, Hypercard, and StarLogo. This version was designed primarily for 9-12 year olds, but has been used successfully with younger and older children. We are in the process of making a multiple user-interface system that will better cater to the needs of young children (especially those who don't yet read) and older children who can handle many more operations and complex planning.
Etoys has been freely available on the Internet since 1998 and works on all the standard platforms (and many nonstandard ones). Etoys is localizable, and there are versions in German, French, Spanish, Japanese, Korean, Chinese, Swahili, etc. The Etoys home website is web address of Squeakland , and this contains quite a bit of material about the use of Etoys, the philosophy of education employed, and many examples done by children, teachers, and parents. Etoys is currently in more than a dozen countries and has been quite successful.
Etoys Media
Etoys has many scriptable media objects, and the children can create more. These include: drawings & paintings, text (including ability to do extensive layouts), pictures (BMP, JPEG, GIF, PNG), animations, movies (MPEG), sound (MP3), sound recorders, sound synthesis (sampling, FM, etc.), MIDI player and editor, "books" (like Hypercard stacks), enriched webpages, etc. These are all WYSIWYG (what you see is what you get) intermixable and authorable via direct manipulation and scripting.
Educational Uses of Etoys
Etoys as an environment for education was originally inspired by the ideas of Seymour Papert (who was influenced by Piaget), Montessori, Dewey, Vygotsky, and Jerome Bruner. The basic theory is that children learn ideas best if they can encounter, play with and construct the ideas kinesthetically, visually & sonically, and symbolically. The ideas often need to be put into representations that are better matched to the cognitive abilities of the children in their current stage of development.
For example, the calculus is the idea that many changes are gradual enough to allow the change to be expressed in terms of nearby properties of time and space. This "mathematics of change" is often represented using algebraic symbology and analytic geometry in cartesian coordinates, and the learning of these representations usually delays the introduction of calculus to high school or later.
But Papert pointed out that since children are already in a world of change and are coping with it, especially by moving themselves around, making simple plans, etc., they should already have gained intuitive knowledge that could be used for learning the "mathematics of change" in terms that relate directly to their own experience. In the world of their experience there are no cartesian coordinates and so the mathematics of vectors and what is called "differential geometry" (which were invented to avoid needing coordinates) is likely to be more suitable. Where, for example, in cartesian coordinates a child would have to learn about <math>a^2+b^2=r^2</math> to make a mathematical representation of a circle, a much younger child can easily make one by walking in a circle and then thinking about what they had to do: go a little, turn a little, over and over.
child walking in circle
The Etoy scripts can go over-and-over by clicking the little clock on them, and so the mathematical expression of a circle in Etoys looks like:
In practice, the children first make something on the screen (usually by painting a picture), then they bring their creation to life by writing simple scripts that are both directions to Etoys for actions to be done and they are mathematical expressions of change in this special version of the calculus that we are helping them learn.
Every object in Etoys also has a pen, so one way to think of Etoys is "Logo with unlimited Turtles that can wear Costumes". We can use the pen to help us reflect on dynamic changes. For example, we can reveal the vector nature of a circle by choosing to have arrows drawn instead of just lines. Or we can make it easier to see the distances of the "hops" by drawing dots. Another way to think of the "distances of the hops" is a measure of the speed of the car (since each hop is taken on a uniform tick of the script, and "speed" is the distance traveled in some unit of time). The script shows this also as the units the car moves forward (in this case, it is 5).
Let's look closer at speed and acceleration. The following script will always move the car by thirty screen units on each tick. We have turned the pen inking to "make dots", and these are left behind spaced uniformly 30 screen units apart just as the script says. "Change of distance" is called speed (or velocity) and we can see here that the speed is constant.
Example one
Now let's write a script to change the speed by a constant amount (say 20). This is what "increase by" does, and we see the result with the dots spaced wider and wider apart. If we measure, we see that each are 20 wider than the previous dot spacing. "Change of speed" is called "acceleration" and we can see that the car is accelerating (and at a constant acceleration of 20).
Example two
Much important mathematics can be learned very deeply by making interesting objects and getting them to make dynamic changes. Science has to look at the world for information (because we've found that human attempts to just think about the world result in stories that rarely are in accord with what the world actually does). We can use the camera on the XO to look more closely at familiar phenomena, such as falling objects. Etoys allows individual frames to be pulled out and compared.
Movie and frames
If we stack up the movie frames, we can see that the ball is not traveling at a constant speed (if it were the ball images would be spaced evenly apart, as they were in the above example about constant speed). Instead, they are spaced further and further apart, so we can easily see that they are accelerating. If we get rectangles from our supply bin, we can use them to measure the distance between each image of the ball by stretching them until they reach from the bottom of the ball image on one frame to the bottom of the ball image on the next frame. This distance is a measure of the speed of the ball (because it is the distance traveled in the constant time between frames of the movie).
Measuring the distances
Now we can move the rectangles over themselves to see what the changes in speed actually were. They look quite constant! Each rectangle has about the same increase of height as the one before it. This change is the acceleration (because it is the change of the speed) and it looks quite constant. This allows the child to quickly write a script that is just like the one they wrote for the car above, but this time changing the vertical location of the ball.
The acceleration script for the ball
Here is what an 11 year old child had to say about his project: And to make sure that I was doing it just right, I got a magnifier which would help me figure out if I had it - if the size was just right. After I'd done that I would go and click on the little basic category button and then a little menu would pop up and one of the categories would be Geometry, so I clicked on that. And here it has many things that have to do with the size and shape of the rectangle. So I would see what the height is… I kept going along the process until I had them all lined up with their height. I subtracted the smaller one's height from the bigger one to see if there was a kind of pattern anywhere that could help me out. And my best guess worked: so in order to show that it was working, I decided to make – to leave – a dot copy (so that it would show that the ball was going at the exact right speed. And acceleration. )
He wanted to see if his model really did follow what the real world did, and to determine this, decided to make his simulated ball drop a dot like the car he had done previously. By playing around with the constant of acceleration, he soon found the one that modeled the acceleration of gravity in the real world and was able to confirm that his mathematical model derived from the movies of a ball dropping in the physical world matched up very well (Newton would have said "Pretty nearly") with the physical evidence. Thus, this child (and all the other children in this class) was able to undergo a complete scientific experience (very like what Galileo did about 400 years ago). This should be contrasted with the experience in most American colleges, where it has been shown that about 70% of the college students fail to understand Galilean gravity. The college approach often doesn't use calculus and also usually just gives the students the algebraic equations that they are supposed to verify by experiment. The very different approach here uses a discrete additive model for change ("increase by") that is very intuitive for all ages, and the children actually derive the relationships from the evidence. This would almost certainly also work much better in college than the way it is generally done now.
{Newton's later theory shows that this model is off by about one part in a million near the surface of the Earth. And Einstein's much later theory shows that Newton's theory is off by the tiniest fraction of a degree per century for planets near the Sun. Recent studies in cosmology seem to indicate that Einstein's theory might be off by a little, etc. This is an excellent illustration that good scientific theories are like good maps, very accurate but with some errors. This is the aim of science: total Truth in the mathematical sense is probably not possible, but tremendously accurate and useful "maps" (represented usually in mathematics) of physical phenomena can be found.}
Presentations and Sharing
The "desktop" that the children used to do their projects is also (automatically) an enriched webpage that can be sent around the Internet, put on servers and websites, and found and downloaded via browsers. Etoys has an unlimited number of these "project/desktops" and this provides a convenient way to turn experiments into presentations. The project/desktops can be sorted and shown one after another, so no additional applications (such as powerpoint) are needed.