Page 1 of 1

Scratch

PostPosted: Mon Jan 19, 2009 9:47 pm
by stoutj
Just one quotation about Scratch: 'Scratch rewards the user for the 99% of their program they get right, rather than penalising them for the 1% they get wrong'.

We use Scratch as a gentle introduction to programming: like Alice there's 'no writing' of your program, but it is (in my opinion) a lot easier to use and faster although not so much of a general programming system. It's almost impossible to get any sort of error other than logical ones ('my program does something but it's not what I wanted it to do').

Behind the scenes it's based on Squeak, which is Smalltalk, without which we'd all be a lot poorer in terms of our computing experience.

You cannot easily manipulate strings in the way that you can numbers, but for animations this should not be a problem, and version 1.3 has added lists which might come in useful.

By using the broadcast and when I receive blocks you can pass control from one co-routine to another, and having multiple processes running at the same time is a doddle; in fact it is so easy that students create multiple processes without thinking things through, and have a very early introduction to the problems of synchronisation.

One of my students created a zombie game with it that, although simple, used sound and animations in such a way that he ended up with a really frighting experience.

John Stout

About the only thing to be careful about, I would say, is that when creating variables you can make them 'global' or 'local to a particular object', but the only way to tell one from the other when they displayed on the screen is a very subtle colour difference.

Re: Scratch variable types

PostPosted: Tue Jan 20, 2009 3:04 pm
by stoutj
Er, sorry. The latest version (1.3.1) of Scratch, now shows the two different types of variables (one for all sprites, i.e., roughly Global, and one for just the current sprite, i.e., roughly local) in a list separated by a horizontal line. Above the line 'global', below the line 'local'.

You cannot have two variables, even if of different 'scopes', with the same name, hence the 'roughly' and 'global'/'local' above.

Re: Scratch

PostPosted: Tue Jan 20, 2009 4:05 pm
by stoutj
Oh and, when you display a variable and its current value on the stage it will now just say A if A is a variable for all sprites ('global'), and something like Target B if B is a variable just for the sprite called Target.

Incidentally, one factor that gets brought up against Scratch is that It's for small kids! It's comes from work done by the Lifelong Kindergarten Group! Don't worry about that, just have a go!

Re: Scratch

PostPosted: Fri Jan 23, 2009 2:25 pm
by thomsonc
I find Scratch really motivates my pupils and they learn a lot about planning and thinking about sequences and subroutines. They find it easy to be successful and then want to know more. Even my weaker pupils want to get better.