Scratch is a fantastic programming resource from MIT, those lovely people who brought you LOGO all those years ago.
2 sample programs:
Impressionism etch-a-sketch drawing game
This is a Scratch game I designed for a workshop with a local school. I like the drawing / etch-a-sketch idea, as it usefully brings in co-ordinates and graphing.
I really like this drumming game - really very simple.
Scratch is designed to be a child friendly introduction to programming and it really is very good. IT takes all the usual obstacles out of programming, so there's no typos, you can only put code together in logical ways, it has a fantastic resource of images, sounds and backgrounds, and of course, it's free - BRILLIANT. It also allows some of the really knitty little coding concepts to be learnt and used.
Here's a great list I found today showing what programming concepts you can cover with Scratch....
My only two (personal) concerns are that:
a) it is so complete, once children have used scratch you may have a problem progressing them onto tougher languages - you might ask do you really need to, but no single language is the solution to every problem.
b) The language is so child friendly that whole classes are being taught Scratch. This is also BRILLIANT, except that, it can be difficult to keep encouraging the more able children to keep pushing themselves; it is possible to get some really great results without learning too much - but hey, it's a hard life when something is just too motivating! It's down to the teacher or leader to keep feeding children with new projects.
My word of warning : I've taught quite a few programming lessons, and children often just DO NOT focus on the details, which are so important. If something has gone wrong, it's almost certainly a tiny, tiny, little mistake...'set x to...' instead of 'change x by...'
One of the most important things to emphasise to children is that IT'S OK TO MAKE MISTAKES. Programmers spend a lot of their time 'debugging' their code, and making it actually work!
Scratch can be downloaded here
The best resources for beginning classes I found were from here. I started myself with the 'getting started guide' for me; scratch is so simple that noone will need this after the first lesson! Although if you have late starters it could be helpful. The 'scratch cards' are also BRILLIANT, and I do a lesson just swapping these between pupils, they are always amazed that they can get such quick results so easily.
I have also made my own videos to get a simple moving sprite, then to make a maze from this. These are also great for groups who are working at different speeds. I use camstudio - it's free, open source, and easy to use after a quick experiment.
Today I've just discovered ScratchEd, for educators, and shared this set of lessons with a colleague.
Finally, I've also bought this book from Amazon, it's looks pretty good, and covers some interesting projects in bitesize chunks. I'm not sure if for younger students they may be too complex.
Stop Press - This resource is exactly what I'm looking for to give me confidence running a workshop. Thank you so much...
Stop Press 2 - this page of the wiki gives guidance about animating using Scratch.