Lack of documentation frustrating

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
22 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Lack of documentation frustrating

Guyren Howe
Hi,

I am volunteering at a local school, and will be doing squeakland  
once a week with some fifth graders.

Squeakland (etoys?) seems ideal for these kids, except that I'm  
frustrated by the lack of documentation.

I've spent ages looking through the website and searching online, and  
I can't really find the kinds of things I'm looking for. I went  
through some of the tutorials myself, and those will be great to get  
started, but I would like to give the kids fairly free reign, and be  
able to answer most of their questions. I tried to do some little  
projects myself, but I kept coming up with seemingly simple things I  
wanted to do, and not finding any obvious way to do them (or,  as I  
say, any documentation suitable for answering the questions).

For example: I wanted to make an etoy follow the mouse pointer  
around. I can't see any way of even obtaining a reference to a mouse  
object.

I would also like to do loops and suchlike. Not obvious how to do that.

I can see that if I can dive down into the smalltalk level, I could  
do it, but this seems like the kind of thing that's probably at the  
squeakland (etoy? What do I call the kids' environment?) level.

But as I say, what I'm really looking for is not this particular  
fish, but how to fish for myself.

I would buy a book, but the one pointed at from the website appears  
to just be a set of projects, rather than the kind of documentation  
I'm looking for. Squeak: Learn Programming by Controlling Robots  
looks like it might be sort of what I'm looking for, although I'm  
interested in a broader range of Squeakland projects than just the  
turtle graphics mentioned in the summary of the book.

So: where is the documentation it seems ought to be there?

Thanks.
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Brad Fuller
Guyren Howe wrote:

> Hi,
>
> I am volunteering at a local school, and will be doing squeakland  
> once a week with some fifth graders.
>
> Squeakland (etoys?) seems ideal for these kids, except that I'm  
> frustrated by the lack of documentation.
>
> I've spent ages looking through the website and searching online, and  
> I can't really find the kinds of things I'm looking for. I went  
> through some of the tutorials myself, and those will be great to get  
> started, but I would like to give the kids fairly free reign, and be  
> able to answer most of their questions. I tried to do some little  
> projects myself, but I kept coming up with seemingly simple things I  
> wanted to do, and not finding any obvious way to do them (or,  as I  
> say, any documentation suitable for answering the questions).
>
> For example: I wanted to make an etoy follow the mouse pointer  
> around. I can't see any way of even obtaining a reference to a mouse  
> object.
>
> I would also like to do loops and suchlike. Not obvious how to do that.
>
> I can see that if I can dive down into the smalltalk level, I could  
> do it, but this seems like the kind of thing that's probably at the  
> squeakland (etoy? What do I call the kids' environment?) level.
>
> But as I say, what I'm really looking for is not this particular  
> fish, but how to fish for myself.
>
> I would buy a book, but the one pointed at from the website appears  
> to just be a set of projects, rather than the kind of documentation  
> I'm looking for. Squeak: Learn Programming by Controlling Robots  
> looks like it might be sort of what I'm looking for, although I'm  
> interested in a broader range of Squeakland projects than just the  
> turtle graphics mentioned in the summary of the book.
>
> So: where is the documentation it seems ought to be there
try the book Powerful Ideas in the Classroom

http://www.amazon.com/Powerful-Ideas-Classroom-B-J-Allen/dp/0974313106/sr=8-1/qid=1162350766/ref=pd_bbs_sr_1/002-7335726-6184028?ie=UTF8&s=books
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Guyren G Howe
On Oct 31, 2006, at 8:14 PM, Brad Fuller wrote:

> try the book Powerful Ideas in the Classroom
>
> http://www.amazon.com/Powerful-Ideas-Classroom-B-J-Allen/dp/ 
> 0974313106/sr=8-1/qid=1162350766/
> ref=pd_bbs_sr_1/002-7335726-6184028?ie=UTF8&s=books

Thanks.

  I saw that the book is available, and I'll probably get it.

The description on Amazon makes it sound as though this book is a  
collection of example projects. While that is certainly valuable, I'd  
like to be able to go fairly free-form exploration with the kids, and  
just bring up new capabilities as the kids thought of wanting them  
(at least somewhat; this is an after-school "fun" group). This means  
I'd like to arrive at a fairly good idea of what all the capabilities  
are, or how to find them, myself. So I'm looking for more  
documentation than projects: here are all the things an etoy can do,  
concisely and fairly completely described. Also, some stuff for a  
real programmer would be nice: how to do loops, tuples, dictionaries...

Is there any kind of documentation like that?
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Alan Kay
In reply to this post by Guyren Howe
Hi --

Yep, we should have more complete documentation in English, especially on the media objects. (E.g. the Japanese and Spanish documentation includes translations of ours, plus some very good stuff done in those languages in those countries.)

But the book "Powerful Ideas in the Classroom" is still a very good idea as a starting point because most good Etoys are thought up as a way to help children learn an idea (and generally not as a way to learn a particular programming technique -- the programming style in Etoys is different).

The tradeoffs are interesting. On the one hand it is pretty easy to get 7th and 8th graders to do a dynamic ecology of fish and food sources from scratch, whereas the AP version of this in high school in Java is deemed difficult enough that the high schoolers don't get to program it but are giving the programs to study and change parameters on.

Etoys is all about children being able to make fun working versions of interesting ideas from scratch, and learning much more about the ideas than when force-fed with them. Considerable thought on the part of the children's mentors is often required to set up a curriculum that is a nice balance between the way children think and do, the ideas, and what is most natural to do in Etoys.

Basically, every object in Etoys "is the same" for most things, plus, for some objects (such as playfields, etc.) there will be a few extra categories in their viewers for idiosyncratic behaviors. Just poking around and trying things (which is what the kids do) will reveal a lot.

For example, the "world" (the desktop object) is a kind of playfield, and all playfields have a "playfield" category, and in this category are variables that hold the mouse coordinates relative to that playfield.

Every script can do a loop in parallel with other scripts, so there are an unlimited number of parallel behaviors possible. These scripts can be controlled by other scripts (look in the "scripting" category for each object). Typical loops can be done by initializing in one script and then telling another script to start ticking (and this script can have a test tile that can decide if the loop should stop, etc.).

A little context: Etoys is kind of a "demo that wouldn't die". It was originally aimed for a particular age of children (from about 7-8 to about 11-12) to be an authoring medium for fun projects that could have an underlying "powerful idea" or two, that could be absorbed Montessori style. So the goal was not to teach anything like standard programming, but to make it easy for children to e.g. use and learn the ideas of vectors, calculus, feedback, systems ecologies, media models, etc., while pursuing projects that seemed fun to them.

Human beings (even really smart ones) have a hard time coming up with ideas that are better than mediocre. For example, if you put a piano in a classroom, the children will explore it, and develop a "chopsticks culture" with it, but they won't invent for themselves how to play a keyboard instrument (it took centuries for experts to work it out). But every child can be taught to play the piano. Similarly, the children will not invent or discover important ideas in mathematics by themselves. But every child can be taught a powerful version of the calculus of vectors, and many other kinds of advanced mathematics. And both of these can be taught as a kind of play.

If you give children a medium to explore, they will generally wind up doing stories and games with it (in large part because that is how nature has set all of us up to learn when we are children). For example, Etoys is used widely in a number of places in the world. The places that emphasize "creativity", "discovery learning", "free exploration", etc., all wind up with lots of stuff done by children, but virtually all of it uses simple animations and multiple tasking to act out stories and games. This is no surprise (it took humans 100,000 years to invent math and another 2000 to invent science). If we are interested in having children learn non-obvious powerful ideas -- e.g. in math and science -- we have to scaffold their learning and discovery by careful curriculum design.

This teaching doesn't have to feel like the kids are being put in a lock-step chain gang. It can be much more like teaching and learning an established sport or musical instrument. There are parts that are almost impossible to invent, and thus have to be shown and practised. But with these parts there are large elements of free joyful play.

We suggest using at least 3 phases for each idea.
- The first is a guided creation of something interesting -- for example, how to make a robot vehicle on the screen that will follow edges. This can be done in a number of ways including Socratic leading questions, but basically it is giving the children something they would not think up for themselves.  But as David Ausubel pointed out "People learn on the fringes of what they know".
- Now that the children know something, they can be given a specific challenge -- such as "Come up with a car and a road where the car will stay on the road". There are 5 or 6 ways of doing this and most children working singly or in pairs will find one of them. A few of these are elegant, and a few children will find these. Sharing the solutions as demos gives the children a sense that such problems are not only solvable, but there is more than one solution.
- The third stage is open play, where the children now know enough to think of many different fun ways to use what they've just done (and many of their ideas will be in the forms of games or stories). For example, some of the "middle of the road" solutions lend themselves to making a multilane racing track with multiple vehicles and using the random number tile to generate random speeds to make the race difficult to predict.

The way we've set up Etoys is with a uniform rich object model and a very simple set of scripting abilities, but with easy multiple tasking. From this we've asked ourselves what projects that involve powerful ideas can be relatively easily made from the simple ingredients. There are lots, and they fill more than a school year's worth of time. This is why the project based documentation is not such a bad idea. It's worth while to look at the kinds of things that have been done with the current ingredients, and this will help with the different style of programming that is used.

However, children younger than 7 really need a somewhat different interface. And children older than 11 need more ingredients (both scripting features -- such as case based control structures, better event structures, etc. -- and expression building features -- e.g. to more easily build complex expressions from left to right instead of just from the top down, etc.). We are going to do the latter over the next year, and the former a year after that. But for (say) 5th graders, the current set of materials seems rich enough (for powerful idea purposes).

The documentation is going to get a little more useful and detailed because Etoys will be on the "$100 Laptop" project of the One Laptop Per Child organization ( http://www.laptop.org ) . The test builds of this machine are just starting to happen, and we are starting to write more detailed documentation on the OLPC wiki ( http://wiki.laptop.org/go/Sugar_EToys ). This is not worth looking at today, but should have quite a bit of useful stuff a few weeks from now.

Please don't hesitate to ask more questions. We are happy to help.

Cheers,

Alan



At 12:12 PM 10/31/2006, Guyren Howe wrote:
Hi,

I am volunteering at a local school, and will be doing squeakland 
once a week with some fifth graders.

Squeakland (etoys?) seems ideal for these kids, except that I'm 
frustrated by the lack of documentation.

I've spent ages looking through the website and searching online, and 
I can't really find the kinds of things I'm looking for. I went 
through some of the tutorials myself, and those will be great to get 
started, but I would like to give the kids fairly free reign, and be 
able to answer most of their questions. I tried to do some little 
projects myself, but I kept coming up with seemingly simple things I 
wanted to do, and not finding any obvious way to do them (or,  as I 
say, any documentation suitable for answering the questions).

For example: I wanted to make an etoy follow the mouse pointer 
around. I can't see any way of even obtaining a reference to a mouse 
object.

I would also like to do loops and suchlike. Not obvious how to do that.

I can see that if I can dive down into the smalltalk level, I could 
do it, but this seems like the kind of thing that's probably at the 
squeakland (etoy? What do I call the kids' environment?) level.

But as I say, what I'm really looking for is not this particular 
fish, but how to fish for myself.

I would buy a book, but the one pointed at from the website appears 
to just be a set of projects, rather than the kind of documentation 
I'm looking for. Squeak: Learn Programming by Controlling Robots 
looks like it might be sort of what I'm looking for, although I'm 
interested in a broader range of Squeakland projects than just the 
turtle graphics mentioned in the summary of the book.

So: where is the documentation it seems ought to be there?

Thanks.
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Making an object follow the mouse (was: Lack of documentation frustrating)

Scott Wallace
In reply to this post by Guyren Howe
Hi, Guyrren, and all,

> For example: I wanted to make an etoy follow the mouse pointer
> around. I can't see any way of even obtaining a reference to a mouse
> object.

Bring up the "world's" halo, by alt-clicking on the squeak desktop,  
and then click on its turquoise handle to bring up the world's Viewer.

If you type "mouse" into the search pane of that Viewer, you'll find  
that there are tiles available for mouseX and mouseY.  These are  
numeric-valued tiles that always report the current x and y  
coordinates of the mouse, in the World's own cartesian coordinate  
system.

Using these, the following script will make an object always follow  
the mouse:


pastedGraphic.tiff (60K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

karl-8
In reply to this post by Guyren Howe
Guyren Howe skrev:

> Hi,
>
> I am volunteering at a local school, and will be doing squeakland  
> once a week with some fifth graders.
>
> Squeakland (etoys?) seems ideal for these kids, except that I'm  
> frustrated by the lack of documentation.
>
> I've spent ages looking through the website and searching online, and  
> I can't really find the kinds of things I'm looking for. I went  
> through some of the tutorials myself, and those will be great to get  
> started, but I would like to give the kids fairly free reign, and be  
> able to answer most of their questions. I tried to do some little  
> projects myself, but I kept coming up with seemingly simple things I  
> wanted to do, and not finding any obvious way to do them (or,  as I  
> say, any documentation suitable for answering the questions).
>
> For example: I wanted to make an etoy follow the mouse pointer  
> around. I can't see any way of even obtaining a reference to a mouse  
> object.
>
> I would also like to do loops and suchlike. Not obvious how to do that.
>
> I can see that if I can dive down into the smalltalk level, I could  
> do it, but this seems like the kind of thing that's probably at the  
> squeakland (etoy? What do I call the kids' environment?) level.
>
> But as I say, what I'm really looking for is not this particular  
> fish, but how to fish for myself.
>
> I would buy a book, but the one pointed at from the website appears  
> to just be a set of projects, rather than the kind of documentation  
> I'm looking for. Squeak: Learn Programming by Controlling Robots  
> looks like it might be sort of what I'm looking for, although I'm  
> interested in a broader range of Squeakland projects than just the  
> turtle graphics mentioned in the summary of the book.
>
> So: where is the documentation it seems ought to be there?
>  
Some things are really easy to do in etoys and hard to do in other
systems and vise versa.
As Alan said, documentation is lacking but people on this list are
friendly so ask away.
I have done some 'games' in etoy and have 'documented' how I made them.
But right now I don't  have them  online in a easy reach  place, but I'm
working on that.

Karl

> Thanks.
> _______________________________________________
> Squeakland mailing list
> [hidden email]
> http://squeakland.org/mailman/listinfo/squeakland
>
>  

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Hilaire Fernandes-3
In reply to this post by Alan Kay
Alan Kay a écrit :
> Hi --
>
> Yep, we should have more complete documentation in English, especially
> on the media objects. (E.g. the Japanese and Spanish documentation
> includes translations of ours, plus some very good stuff done in those
> languages in those countries.)

The French Squeak community has quite an important documentation corpus
for the EToys use.

http://community.ofset.org/wiki/Squeak_Education

For a full list of documents related to Squeak use in education, see
directly look at:

http://community.ofset.org/wiki/Category:Squeak_Education

A lot of these documents are step by step tutorials to produce specific
EToys project. Also most of the time the related Etoys .pr projects can
be downloaded directly in your plug-in.
With one of the on-line translation tool as the Google's one, you may be
able to get most of these articles in English.
Hilaire Fernandes
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Offray Vladimir Luna Cárdenas
Hi all,

The French Wiki is a valuable source of information, and effectively
using Translate from google I have been able to use this resource for
understanding things on animation or multiagent simulation (Kedama). I
have seen another wiki doc with spanish documentation at small-land (but
seems fairly unmaintained) and we're trying to create a Colombian
spanish squeakers community using a wiki. You can see our efforts at:

http://www.el-directorio.org/CategorySqueak

It's a page about all the pages on Squeak in a bigger wiki
(documentation, personal pages, blog post, etc.).

One of the bad things in the traditional educative structures is that
students never become part of a bigger community, so they just made
things inside the classroom, for not any other purposes that making the
homework. I have found that making them part of a community can give a
lot of sense to the learning process and, at the same time, can solve
many of the documentation problems, because the squeaker community is a
friendly one, and almost always ask soon about the questions not solved
in the docs.

Cheers,

Offray


Hilaire Fernandes escribió:

> Alan Kay a écrit :
>  
>> Hi --
>>
>> Yep, we should have more complete documentation in English, especially
>> on the media objects. (E.g. the Japanese and Spanish documentation
>> includes translations of ours, plus some very good stuff done in those
>> languages in those countries.)
>>    
>
> The French Squeak community has quite an important documentation corpus
> for the EToys use.
>
> http://community.ofset.org/wiki/Squeak_Education
>
> For a full list of documents related to Squeak use in education, see
> directly look at:
>
> http://community.ofset.org/wiki/Category:Squeak_Education
>
> A lot of these documents are step by step tutorials to produce specific
> EToys project. Also most of the time the related Etoys .pr projects can
> be downloaded directly in your plug-in.
> With one of the on-line translation tool as the Google's one, you may be
> able to get most of these articles in English.
> Hilaire Fernandes
> _______________________________________________
> Squeakland mailing list
> [hidden email]
> http://squeakland.org/mailman/listinfo/squeakland
>
>  
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Animation with displacement

mstram-2
In reply to this post by Hilaire Fernandes-3
Hilaire,

Thanks for the link, I was just looking for more information on animation with etoys.

This tutorial: http://www.dmu.com/squeak/sq24.html,  was pretty good at getting me started, but I was trying to figure out how to do "Animation with displacement" as discussed on the community.ofset site :

http://community.ofset.org/wiki/Les_V-Toys_Enfants2_-_Animation_avec_déplacement

Unfortunatley, google doesn't do quite a perfect job when it comes to translating French to English, so I don't understand exactly how the examples on that page are working.  (Doesn't help that I've only been using Squeak for a few hours so far either !).

If any bilingual french/english speakers here can translate that page to english, it would be very much appreciated.

Of if there are any other good english docs on etoys's animation, I'd very much appreciate finding out about them.

Mike

Hilaire Fernandes-3 wrote
The French Squeak community has quite an important documentation corpus
for the EToys use.

http://community.ofset.org/wiki/Squeak_Education

For a full list of documents related to Squeak use in education, see
directly look at:

http://community.ofset.org/wiki/Category:Squeak_Education

A lot of these documents are step by step tutorials to produce specific
EToys project. Also most of the time the related Etoys .pr projects can
be downloaded directly in your plug-in.
With one of the on-line translation tool as the Google's one, you may be
able to get most of these articles in English.
Hilaire Fernandes
_______________________________________________
Squeakland mailing list
Squeakland@squeakland.org
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

mstram-2
In reply to this post by Alan Kay
Well, it's been a year and a half since the message I'm quoting was posted and there still isn't much on wiki.laptop.org for documentation.

What is the translation between "a few weeks from now." in "programmer years" and real-world years ? :)

Man, programmers really hate writing documentation don't they ?

Mike

Alan Kay wrote
The documentation is going to get a little more useful and detailed
because Etoys will be on the "$100 Laptop" project of the One Laptop
Per Child organization ( http://www.laptop.org ) .

The test builds of this machine are just starting to happen, and we are starting to
write more detailed documentation on the OLPC wiki (
http://wiki.laptop.org/go/Sugar_EToys ). This is not worth looking at
today, but should have quite a bit of useful stuff a few weeks from now.

Alan
Reply | Threaded
Open this post in threaded view
|

Re: Animation with displacement

Alan Kay
In reply to this post by mstram-2
Hi --

What do you want to do?

Cheers,

Alan

-------------

At 03:40 AM 5/25/2007, mstram wrote:

>Hilaire,
>Thanks for the link, I was just looking for more
>information on animationwith etoys.
>This tutorial:
>http://www.dmu.com/squeak/sq24.html,  was pretty
>good atgetting me started, but I was trying to
>figure out how to do "Animation
>withdisplacement" as discussed on the community.ofset site :
>http://community.ofset.org/wiki/Les_V-Toys_Enfants2_-_Animation_avec_déplacement
>Unfortunatley, google doesn't do quite a perfect
>job when it comes totranslating French to
>English, so I don't understand exactly how
>theexamples on that page are working.  (Doesn't
>help that I've only been usingSqueak for a few hours so far either !).
>If any bilingual french/english speakers here
>can translate that page toenglish, it would be very much appreciated.
>Of if there are any other good english docs on
>etoys's animation, I'd verymuch appreciate finding out about them.
>Mike
>
>Hilaire Fernandes-3 wrote:> > > The French
>Squeak community has quite an important
>documentation corpus > for the EToys use.> >
>http://community.ofset.org/wiki/Squeak_Education>
>  > For a full list of documents related to
>Squeak use in education, see > directly look
>at:> >
>http://community.ofset.org/wiki/Category:Squeak_Education>  
> > A lot of these documents are step by step
>tutorials to produce specific > EToys project.
>Also most of the time the related Etoys .pr
>projects can > be downloaded directly in your
>plug-in.> With one of the on-line translation
>tool as the Google's one, you may be > able to
>get most of these articles in English.> Hilaire
>Fernandes>
>_______________________________________________>
>Squeakland mailing list>
>[hidden email]>
>http://squeakland.org/mailman/listinfo/squeakland> >
>-- View this message in context:
>http://www.nabble.com/Lack-of-documentation-frustrating-tf2549935.html#a10800614Sent 
>from the SqueakLand mailing list archive at Nabble.com.
>
>_______________________________________________Squeakland
>mailing
>[hidden email]://squeakland.org/mailman/listinfo/squeakland


_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Alan Kay
In reply to this post by mstram-2
Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...

But you are certainly right that much more documentation is needed.
And, it is actually happening, just slower than hoped. But more of
various kinds is close to being postable, and will be this summer.

There is also a lot more documentation than you think on the
        http://www.squeakland.org
site. The site needs to be reorganized, but for example, there are
literally hundreds of pages of documentation, tutorials, curricula,
etc., done by the very active group at the U of Illinois. And there
is quite a bit of "other" documentation. There is a book "Powerful
Ideas in the Classroom" with a dozen or so sequential projects for
5th graders, etc.

Now, please tell me what it is that you would like to do in Etoys?

Cheers,

Alan

P.S. I don't hate to write documentation, but I'm not very good at it
and hence painfully inefficient.



At 04:37 AM 5/25/2007, mstram wrote:

>Well, it's been a year and a half since the message I'm quoting was posted
>and there still isn't much on wiki.laptop.org for documentation.
>
>What is the translation between "a few weeks from now." in "programmer
>years" and real-world years ? :)
>
>Man, programmers really hate writing documentation don't they ?
>
>Mike
>
>
>Alan Kay wrote:
> >
> >
> > The documentation is going to get a little more useful and detailed
> > because Etoys will be on the "$100 Laptop" project of the One Laptop
> > Per Child organization ( http://www.laptop.org ) .
> >
> > The test builds of this machine are just starting to happen, and we are
> > starting to
> > write more detailed documentation on the OLPC wiki (
> > http://wiki.laptop.org/go/Sugar_EToys ). This is not worth looking at
> > today, but should have quite a bit of useful stuff a few weeks from now.
> >
> > Alan
> >
> >
>
>--
>View this message in context:
>http://www.nabble.com/Lack-of-documentation-frustrating-tf2549935.html#a10801283
>Sent from the SqueakLand mailing list archive at Nabble.com.
>
>_______________________________________________
>Squeakland mailing list
>[hidden email]
>http://squeakland.org/mailman/listinfo/squeakland

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Animation with displacement

K. K. Subramaniam
In reply to this post by mstram-2
On Friday 25 May 2007 4:10 pm, mstram wrote:
> Of if there are any other good english docs on etoys's animation, I'd very
> much appreciate finding out about them.
You will find good tutorials at http://squeakland.org. There are many projects
in Kids->Etoys. Aquarium, for instance, uses animation with displacement.
Download the plugin and open this project. Then open up viewers on various
icons and look at the scripts. You can single step through each script to see
how the whole animation is implemented.

BTW, Learning Etoys is a bit like learning how to swim - learn by doing.
Reading helps but is no subsitute to dipping into the pool :-).

Hope this helps .. Subbu
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Brad Fuller-3
In reply to this post by Alan Kay
Alan Kay wrote:

> Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...
>
> But you are certainly right that much more documentation is needed.
> And, it is actually happening, just slower than hoped. But more of
> various kinds is close to being postable, and will be this summer.
>
> There is also a lot more documentation than you think on the
>         http://www.squeakland.org
> site. The site needs to be reorganized, but for example, there are
> literally hundreds of pages of documentation, tutorials, curricula,
> etc., done by the very active group at the U of Illinois. And there
> is quite a bit of "other" documentation. There is a book "Powerful
> Ideas in the Classroom" with a dozen or so sequential projects for
> 5th graders, etc.
>  
I can state that the book is very good!
The site does need major overhaul, but you can find things if you poke
around a bit.

--
brad fuller
 +1 (408) 799-6124

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

mstram-2
In reply to this post by Alan Kay
Alan,

Alan Kay wrote
Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...
Sorry, Never was great at math ;)

As I mentioned in another message, I was playing with an animation tutorial that uses the "holder" morph.  Well I've searched through this forum and the wiki and still haven't found anything that documents what a "holder" does or the fields that are exposed by it's viewer.  

I've also been looking at some of the examples on  http://community.ofset.org/,
and trying to use Google translate to figure out what's going on with the examples.

E.g. how to coordinate multiple scripts for multiple characters in an animation or simulation.

I assume that I can create a 'master' script and then use something like :

==================
"Master Script"

  currenTime >= nextEventTime ifTrue: [

                Character1_script : start_ticking  (or whatever the "magic word would be)

======  

(The logic above is very incomplete .. I'd want to choose from an array of characters /classes, what I'm looking for is what is the message to "start ticking" to a "tickable" script ;)

I still can't get I.E. to load the plugin, but I figured out how to download the .pr files and load them directly into Squeak, so I'm looking at those tuorials now.

Mike
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Bill Kerr
In reply to this post by Brad Fuller-3
> The site needs to be reorganized ...

I've written a few blogs about frustrations of getting started with Etoys / Squeak and also one comparing Etoys / Squeak with Mark Overmar's Game Maker program

http://billkerr2.blogspot.com/2007/04/frustrating-but-eventually-successful.html
http://billkerr2.blogspot.com/2007/04/guide-to-learning-etoys-squeak.html
http://billkerr2.blogspot.com/2007/04/comparing-game-maker-with-etoys-squeak.html

I'd have to say that the disorganisation of the Squeakland site is a very big barrier to the initial uptake. The only reason I persevered was because of my strong interest in the ideas of the originator.

I have now bought the Rose / Allen-Conn book and another one by Stephane Ducasse but you ought to be able to explore most of the features of Etoys easily from materials available at the website.

--
Bill Kerr
http://billkerr2.blogspot.com/
http://www.users.on.net/~billkerr/
skype: billkerr2006


On 5/26/07, Brad Fuller <[hidden email]> wrote:
Alan Kay wrote:

> Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...
>
> But you are certainly right that much more documentation is needed.
> And, it is actually happening, just slower than hoped. But more of
> various kinds is close to being postable, and will be this summer.
>
> There is also a lot more documentation than you think on the
>         http://www.squeakland.org
> site. The site needs to be reorganized, but for example, there are
> literally hundreds of pages of documentation, tutorials, curricula,
> etc., done by the very active group at the U of Illinois. And there
> is quite a bit of "other" documentation. There is a book "Powerful
> Ideas in the Classroom" with a dozen or so sequential projects for
> 5th graders, etc.
>
I can state that the book is very good!
The site does need major overhaul, but you can find things if you poke
around a bit.

--
brad fuller
+1 (408) 799-6124

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland


_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Alan Kay
In reply to this post by mstram-2
Hi --

>Alan Kay wrote:
> >
> > Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...
> >
>
>Sorry, Never was great at math ;)

  ...


>As I mentioned in another message, I was playing with an animation tutorial
>that uses the "holder" morph.  Well I've searched through this forum and the
>wiki and still haven't found anything that documents what a "holder" does or
>the fields that are exposed by it's viewer.

If you want to learn EToys, I strongly suggest going to the
http://www.squeakland.org site and look at the tutorials. There are
also some sample chapters from the "Powerful Ideas in the Classroom"
book, and quite a bit of stuff from the active group in
Champagne-Urbana. (I think I and several others have already mentioned this.)

Your example below is not in EToys but is in the underlying Squeak.
There is a lot of Squeak documentation, but not much on how Etoys is
implemented. But most people who program directly in Squeak use the
Morphic graphics directly.

Etoys is really a different scheme with a different object and
graphical semantics. It has some real strengths for children, but
some real weaknesses for adults, especially somewhat sophisticated
adults. Since it is aimed at children, this has not been a big problem.

One good ploy (which the children use all the time) is to exploit the
fact that the underlying player object is essentially the same (i.e.
highly polymorphic) for all graphical objects in Etoys. So exploring
the standard viewer categories can be very rewarding. For example,
one of the things you seek will be found in the viewer category
called "Scripting". There are script lines to control ticking
behavior, etc. for all the Etoy objects.

However, as I said, Etoys is not particularly complete -- it's more
set up to have learnable structures by children. The way I program in
it (and advise adults to program in it) is to use its features as the
building blocks available, and this will bring to mind lots of simple
fun structures, including many important parts of math and science.
The way to be frustrated in Etoys is to bring a set of C-like or
Java-like conventions from the outside and try to find the
equivalents in EToys -- they might or might not be there.

(This was easier advice in the 60s when there were literally about
3000 different programming languages and hundreds of different ways
to program. Most people were not surprised if a particular language
had a different paradigm and were used to simply learning it.)

Cheers,

Alan


At 03:49 PM 5/25/2007, mstram wrote:

>Alan,
>
>
>Alan Kay wrote:
> >
> > Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months, not 18 ...
> >
>
>Sorry, Never was great at math ;)
>
>As I mentioned in another message, I was playing with an animation tutorial
>that uses the "holder" morph.  Well I've searched through this forum and the
>wiki and still haven't found anything that documents what a "holder" does or
>the fields that are exposed by it's viewer.
>
>I've also been looking at some of the examples on
>http://community.ofset.org/,
>and trying to use Google translate to figure out what's going on with the
>examples.
>
>E.g. how to coordinate multiple scripts for multiple characters in an
>animation or simulation.
>
>I assume that I can create a 'master' script and then use something like :
>
>==================
>"Master Script"
>
>   currenTime >= nextEventTime ifTrue: [
>
>                 Character1_script : start_ticking  (or whatever the "magic
>word would be)
>
>======
>
>(The logic above is very incomplete .. I'd want to choose from an array of
>characters /classes, what I'm looking for is what is the message to "start
>ticking" to a "tickable" script ;)
>
>I still can't get I.E. to load the plugin, but I figured out how to download
>the .pr files and load them directly into Squeak, so I'm looking at those
>tuorials now.
>
>Mike
>--
>View this message in context:
>http://www.nabble.com/Lack-of-documentation-frustrating-tf2549935.html#a10811351
>Sent from the SqueakLand mailing list archive at Nabble.com.
>
>_______________________________________________
>Squeakland mailing list
>[hidden email]
>http://squeakland.org/mailman/listinfo/squeakland

_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Bert Freudenberg
In reply to this post by mstram-2

On May 26, 2007, at 0:49 , mstram wrote:

>
> Alan,
>
>
> Alan Kay wrote:
>>
>> Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months,  
>> not 18 ...
>>
>
> Sorry, Never was great at math ;)
>
> As I mentioned in another message, I was playing with an animation  
> tutorial
> that uses the "holder" morph.  Well I've searched through this  
> forum and the
> wiki and still haven't found anything that documents what a  
> "holder" does or
> the fields that are exposed by it's viewer.
>
> I've also been looking at some of the examples on
> http://community.ofset.org/,
> and trying to use Google translate to figure out what's going on  
> with the
> examples.
>
> E.g. how to coordinate multiple scripts for multiple characters in an
> animation or simulation.
>
> I assume that I can create a 'master' script and then use something  
> like :
>
> ==================
> "Master Script"
>
>   currenTime >= nextEventTime ifTrue: [
>
>                 Character1_script : start_ticking  (or whatever the  
> "magic
> word would be)
>
> ======
>
> (The logic above is very incomplete .. I'd want to choose from an  
> array of
> characters /classes, what I'm looking for is what is the message to  
> "start
> ticking" to a "tickable" script ;)

I have the impression you are approaching Etoys from the wrong angle.  
It's not about "scripting" or even "programming" in the popular sense.

It's about working with objects. Imagine what you would do if you  
were that object - how would you know it's your time to do something?  
Trying to implement a centrally controlled event-trigger system in  
etoys is certainly possible (there is no formal proof but it's  
obviously Turing-complete) but you are working against the system  
than within.

That object-centric perspective was perhaps best understandable with  
Papert's *mechanical* turtles that you controlled. These original  
turtles were not just images on the screen with an x and y position.  
Or worse, colors in a 2D grid, or even numbers in an array called  
frame buffer. They were actual objects that you could touch and  
instruct.

In Etoys it's the same - you create an object and describe its  
behavior. When you reference other objects in a script, it's  
generally good practice to just observe what they do, rather than  
make them do something.

We recently added the option to hide the receiver tile in each line  
of a script to make the distinction between "me" and "other" objects  
more obvious. Otherwise it's too tempting to have one large central  
script that controls the behavior of all objects (which is what  
people previously exposed to "programming" often try to do).

So try to rethink your problem if all you had at your disposal where  
independent agents that behave on their own. You may be surprised at  
what the result will look like :)

- Bert -


_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
Reply | Threaded
Open this post in threaded view
|

Re: triggering other scripts / objects

mstram-2
Bert Freudenberg-2 wrote
I have the impression you are approaching Etoys from the wrong angle.  
It's not about "scripting" or even "programming" in the popular sense.
I understand what you're saying, and I'm not proposing that every system / program / "Etoy" .. (whatever we call them) that I'm going to create is "centrally driven".

I just happpend to be looking for in this case the "start ticking" command :)

... Which seems to be in the "scripting" category of the viewer panel.  

I'm experimenting with that right now, and am going to have to look for some working examples, as I can't  seem to get a very simple example to work.

I'd love to set up some projects with "intellgen" objects .. etc etc..  but this is week #1 for me with Squeak / Smalltalk / Etoys, so I'm just trying to get started with the basics.

E.g.

-I put down a playfield and added two graphical-stars, colored them red, and blue.

- From blue-star's viewer I dragged out an empty script, then dragged out a "do" tile to the empty script.

- From red-star's viewer I dragged out a "y" and made it an  increase by, named the script "red2"

- I selected "red2" in the blue-star's "do" script, (using the gui/controls (I didn't edit the script itself).

When I press either :

 ---- the blue-stars'  yellow exclamation icon or start it's timer, the red2 script is not being triggered.

If I trigger the "red2" script manually with it's exclamation point or timer the script runs.

(Off topic, why if I comment out code with double quotes does Squeak delete it ? !!!! is there another way I should be adding comments ? )

and  2..  the "This script was changed textually ... if you revert to tiles .. you will lose all changes" ... is IMO really dumb.  As long as the code is not changed for the "tile part" why can't the two co-exist?

Mike
Reply | Threaded
Open this post in threaded view
|

Re: Lack of documentation frustrating

Marta Voelcker
In reply to this post by Bert Freudenberg
Hi,

about thinking on being an object:

I have three children( 14, 12 , 8).
I got motivated to learn squeak (besides thinking on telecenters and schools programs) specialy to use it with my 12 Years old son, that love to play other games on the computer ( I wanted him to create games instead of just consume them!)

I still did not suceeded with the 12 years old boy. The 8 years old bot loves create and play with cars, but guess what, the 14 years old girl is using squeak to plan the coreography of the dance that her class is going to present in the "Panamerican Games inside the school" each class is a country and they compete in sports and cultural activities... Well she dances since she was 4, so she is leading this dance activity in her class.

We just started to do it in squeak, but she is planning to teach her classmetes to use squeak, so they can suggest different movements for the coreography.

Children are always surprising us!

Marta





 Sat, 26 May 2007 11:22:19 +0200, Bert Freudenberg <[hidden email]> escreveu:

>
> On May 26, 2007, at 0:49 , mstram wrote:
>
> >
> > Alan,
> >
> >
> > Alan Kay wrote:
> >>
> >> Let's see, Oct 31st 2006 to May 25th 2007 seems to be 7 months,  
> >> not 18 ...
> >>
> >
> > Sorry, Never was great at math ;)
> >
> > As I mentioned in another message, I was playing with an animation  
> > tutorial
> > that uses the "holder" morph.  Well I've searched through this  
> > forum and the
> > wiki and still haven't found anything that documents what a  
> > "holder" does or
> > the fields that are exposed by it's viewer.
> >
> > I've also been looking at some of the examples on
> > http://community.ofset.org/,
> > and trying to use Google translate to figure out what's going on  
> > with the
> > examples.
> >
> > E.g. how to coordinate multiple scripts for multiple characters in an
> > animation or simulation.
> >
> > I assume that I can create a 'master' script and then use something  
> > like :
> >
> > ==================
> > "Master Script"
> >
> >   currenTime >= nextEventTime ifTrue: [
> >
> >                 Character1_script : start_ticking  (or whatever the  
> > "magic
> > word would be)
> >
> > ======
> >
> > (The logic above is very incomplete .. I'd want to choose from an  
> > array of
> > characters /classes, what I'm looking for is what is the message to  
> > "start
> > ticking" to a "tickable" script ;)
>
> I have the impression you are approaching Etoys from the wrong angle.  
> It's not about "scripting" or even "programming" in the popular sense.
>
> It's about working with objects. Imagine what you would do if you  
> were that object - how would you know it's your time to do something?  
> Trying to implement a centrally controlled event-trigger system in  
> etoys is certainly possible (there is no formal proof but it's  
> obviously Turing-complete) but you are working against the system  
> than within.
>
> That object-centric perspective was perhaps best understandable with  
> Papert's *mechanical* turtles that you controlled. These original  
> turtles were not just images on the screen with an x and y position.  
> Or worse, colors in a 2D grid, or even numbers in an array called  
> frame buffer. They were actual objects that you could touch and  
> instruct.
>
> In Etoys it's the same - you create an object and describe its  
> behavior. When you reference other objects in a script, it's  
> generally good practice to just observe what they do, rather than  
> make them do something.
>
> We recently added the option to hide the receiver tile in each line  
> of a script to make the distinction between "me" and "other" objects  
> more obvious. Otherwise it's too tempting to have one large central  
> script that controls the behavior of all objects (which is what  
> people previously exposed to "programming" often try to do).
>
> So try to rethink your problem if all you had at your disposal where  
> independent agents that behave on their own. You may be surprised at  
> what the result will look like :)
>
> - Bert -
>
>
> _______________________________________________
> Squeakland mailing list
> [hidden email]
> http://squeakland.org/mailman/listinfo/squeakland
>
>
>
_______________________________________________
Squeakland mailing list
[hidden email]
http://squeakland.org/mailman/listinfo/squeakland
12