eToys surprises

Alan Kay alan.kay at squeakland.org
Thu Dec 23 21:18:48 UTC 2004


First, I strongly suggest that you get the Powerful Ideas in the Classroom 
book and use the sequence of projects to help your child build some 
competence in thinking along the lines of etoys. It has some approaches to 
helping children think about speed and accelleration.

Also, there is a very good way for younger children to find out and derive 
a nice script that does what gravity does near the surface of the earth (as 
Galileo found out 400 years ago). The difference between this and Newton's 
more complex theory is less than 1 part in a million near the surface of a 
planet like Earth. This is good science for 4th and 5th graders.

There are any number of ways to do Lunar Lander. After doing the above, you 
should see if you can induce the vertical landing one. This is a fair 
amount of stuff for a 9 year old to handle (if you want him to really be 
doing it and not just doing "air guitar").

I don't think that I quite understand what you want to do with heading. 
However, you can do something like the following:

ship gravity ticking
     ship's accelleration <-   -1.0
     ship's speed increase by ship's accelleration
     ship's y increase by ship's speed

This will always try to pull the ship vertically downwards, by "eating 
speed". But you can also move the ship around according to where it is 
pointing.

ship moveAround ticking
     ship forward joy's updown
     ship turn joy's leftright

This doesn't do F=ma, but is still quite fun for children since they still 
have to take care not to crash because of gravity.

An independent project that is also very interesting is F=ma for 
spaceships, which can easily be done by using the "vector vocabularly" that 
is normally turned off for young children. The idea here is that each 
object in etoys is de facto a 2D vector (it has an x and y coordinate). The 
playfields of etoys have their own coordinate systems, and there is a 
"playfield option" in the red menu that will put "origin at center". This 
allows you to make a smallish playfield and plop a small dot of paint into 
it that will act as a vector quantity (there is a nice lead up to this). 
"increase by" works both for numbers and on players themselves, so you can 
have a little blob of paint that acts as an accelleration vector, one that 
is the speed vector, and the spaceship itself is its own vector. It is very 
easy to use the y axis of the joystick to provide accelleration in the 
direction the ship is heading, and the x axis to turn the ship with its 
gyros. This gives a very good model of F=ma. If the spaceship, its vectors 
and its controls are put in a playfield, a copy of the playfield will yield 
another playfield with a spaceship and controls with all local references 
done properly. The second spaceship can then be repainted, etc.

However, I suggest not doing this for a while with your child. A large part 
of adults helping children learn powerful ideas is to moderate the tempo of 
most children. Like most humans they want results more than learning ideas. 
It is the adults' main job to keep the tempo both slow enough and thinking 
deep enough so that the kid will not just be making up a cookbook of 
pragmatic patterns in their head, but actually understanding what is going 
on. It is the lack of understanding (and not understanding that they don't 
understand) that makes people quite scary.

Cheers,

Alan



At 06:33 PM 12/22/2004, Blake wrote:
>On Wed, 22 Dec 2004 14:21:44 +0100, Bert Freudenberg <bert at impara.de>
>wrote:
>
>>Am 22.12.2004 um 09:02 schrieb Blake:
>>>The Lunar Lander project I have in mind requires the ship to be able to
>>>actually change its heading, but I can't just use the forward script,
>>>obviously, because the effects of gravity have to be considered.
>>
>>That sounds overly complicated. Adding in gravity is just accelerating
>>along y, right? No heading needed for that ...
>
>Adding in the gravity isn't the problem. Adding in the thrust is. Changes
>to momentum along the X and Y axis caused by the thruster are,
>
>I could get the same ultimate result, I think, by moving forward and then
>pulling the ship down--but that would look terrible, since the two motions
>would be discrete, creating a step-like appearance when the ship is
>travelling up and to the right.
>              /
>           /\/
>        /\/
>     /\/
>  /\/
>/
>Unless I miss something.
>




More information about the Squeak-dev mailing list