On the ap-computerscience listserv, there has recently been a discussion thread discussing the relative merits of Alice and Scratch. I think the analysis of the difference between Scratch and Alice for students has been fair and accurate.
The general observation is that students find Scratch to be very accessible, and can do many cool things very quickly. The downside is that they will hit the limits of Scratch relatively soon. Alice has a richer set of capabilities but that students need a lot more initial support and training to fully utilize its capabilities.
I believe that this reflects the original goals of the groups responsible for the design of both tools. I do not wish to speak too strongly for the Scratch team, but my understanding is that Scratch was initially designed with informal educational settings in mind (after-school tech club houses, etc.), and Alice was specifically signed to be a more part of a CS 0 course offering.
The Alice team recognized the need for great support materials for teachers, which led to the development of the text “Learning to Program with Alice” by Dann, Cooper, and Pausch, and the creation of a website http://www.aliceprogramming.net which contains sample syllabi, lecture notes, lab assignments, sample exams and test banks, with accompanying solutions, so that teachers who wish to use Alice are able to provide the guidance they need.
(And actually, it turns out that once some basic, almost minimal guidance is provided, students can go a long way.)
The distinction between informal and formal educational settings is interesting and important, and yet we are finding that Scratch is starting to be used in more formal settings (as the ap-cs listserv thread clearly illustrates), and we are also finding Alice being used in more informal settings (such as the Citizen’s School project in New York City last fall.)
In fact Dr. Caitlin Kelleher’s research, and the development of Storytelling Alice, specifically targeted informal settings, working with Girl Scouts in the Pittsburgh area. Dr. Kelleher, now at Washington University in St. Louis is continuing to push on this front in her work, leading the development of Looking Glass, which parallels our work at Carnegie Mellon in the development of Alice 3.0. Alice 3.0 is very specifically targeting formal eduction in CS 1 settings, and my understanding of Looking Glass is that it is pushing on use in informal educational settings.
7 Comments
My name is George and I study veterinary at Aristotel University of thessaloniki (auth) in Greece. My studies and my life are far for programming and generaly everything that has to do with computers. However, “The last Lecture” of mr. Randy Paous, professor, friend, guide of yours, has literally influensed me. Due to this, the only thing I can do, is to say a big thank you to this man, for giving the world so many and important gifts. I don’t know really why I send it to you and with this e-mail. But I had to do it. Well, I don’t think that this e-mail will be seen or read by anyone in this world, but it exists. My way for saying thanks to that man, who left us (and espesially his family) for no good reason… I hope that you realised the “elephant in the room” ; all humans are brothers and the sorrow for the lost of one human has no frontiers…
Thank you mr.Randy Paous.
Thank you for your kind words. And I wanted to let you know that someone has seen and really appreciate your thoughts.
I’m rather old and learnt computing as a child on an Atari 800 (Atari BASIC and some assembly language).
In the UK, at the time, school children were avid programmers – the ZX Spectrum, BBC microcomputer and Commodore 64 in addition to the Atari machines enabled this to happen. In most computer magazines, computer programming had prominence. Today, the magazines are focussed on reviews of hardware and software (at least the ones in the UK are).
I believe programming helps develop a logical mind and mathematical ability. Alas, in schools in the UK, until the age of 14, children are simply taught how to “use” IT (e.g. powerpoint, MS Word etc.) an not build it.
I like what I read about Alice 3. However, I have a 9 year old girl – do you think it a good approach to learn about programming concepts in Scratch and then, if skills develop and enthusiasm builds, to move onto Alice ? Initially, I’m keen to use an environment which will be easy to learn but provides a good foundation. Your opinion would be most valued.
Randy Pausch used to talk about the “head-fake”, in which you make a defender in a sport think you are doing one thing, but actually setting him / her up for a completely different move. With your 9 year old, I think I would approach the use of these tools in exactly the same manner. Expose your daughter to both Storytelling Alice (available at http://www.alice.org/kelleher/storytelling/index.html) and Scratch.
And do not tell her that this is about learning programming, but that these are two tools (toys may be a better term.) that you think will allow her to tell different kinds of stories. Play with her with these tools.
Let her take the lead, create a story for you while you are there watching. And then ask if you can create a story for her, and here you might show her (not tell her) something that would be helpful for example, if her story has a lot of sequential repetition (she does a lot of things over and over without using a loop), let your story have a loop.
This can be done with either Alice or Scratch.
Alice 3.0 may not be ready for this type of interaction, yet, but it does have the Sims, which may be worth playing with a bit.
We are told that reading together with our children is important. The head fake here is that we want them to develop a love of reading and nurture their literacy. But for them it is about the story, and sharing time with together.
With Alice and Scratch, the head fake is about helping your child learn some fundamental programming and problem solving skills. BUt as far as she is concerned she is creating interesting stories, and sharing them with you.
Just some thoughts…
Thanks for your thoughts, I like the idea of the head fake and it’s a very clever method of motivating kids to engage. I’ve taken a look in more detail at Scratch, I think I’ll go for Alice first… two environments at once may be confusing to a young child.
I know of a friend who has a 13 year old boy – over the summer holidays he’s going to thrown him into the deep-end and teach him PHP and the foundations of databases with MySQL… I’ll be watching with interest !
Thanks for your excellent work and taking the time to respond to comments on the blog.
Thank you for your kind words.
I think you will be surprised about your child’s ability to handle multiple environments. That is actually more of as problem for us
Children today are multi-taskers in ways that does not make sense to us at all. Think of it this way; your daughter can play different computer / video games without any trouble.
We may see potential confusion because we are looking at the different ways in which Alice and Scratch present programming, an abstraction. She is not seeing programming at all. Just two different programs for storytelling. Children use crayons, paints, pen and pencils to draw pictures without any trouble (because they are not really worried about doing “art”), they are just making pictures.
I may be wrong, but I think she will see more similarities than differences. Expose her to both, let her choose.
I’ve used Logo, Scratch, Squeak, Alice, ToonTalk, Python, and (now) Blender 3D as programming languages in classes that I’ve taught to K-8 kids over the last 20 years. Each has its advantages and disadvantages. However, what’s interesting is that as kids become more sophisticated in their use of computers, they pick up on the more complex languages quickly. I’m teaching Alice to 2dn and 3rd graders and, once they learn the concepts, they can do lots of interesting things with it. I’m using college-level material for these kids with no particular difficulty. I think this attests to the flexibility and thought that has been programmed into Alice. I think I’ll be using Alice for some time to come.
Thanks to the team who has, and continues to, develop(ed) this amazing and insightful programming tool.