Skip to content

Scratch materials

I create Scratch materials in various contexts and will try to aggregate them here in the following broad categories:

Scratch Evangelism

While Scratch was designed with young children in mind, I’m not the only one who believes it’s a great tool for teaching beginning computer science topics.

A presentation I gave to the Puget Sound Computer Science Teachers Association on the topic:

pptx16x16 HeleneMartin-CSTA-Scratch.pptx
pdf16x16 HeleneMartin-CSTA-Scratch.pdf
Scratch file Cat-and-Unicorn-Race.sb – a silly Scratch program that debunks a number of programming misconceptions including variables all having global scope and while loops exiting as soon as their condition stops being met.

Scratch Assignments

Scratch lends itself very well to ad-hoc experimentation and open ended projects.  When the goal in using it is to teach programming concepts, though, I feel structured assignments are necessary.  If you want solutions or more information on any of these, please e-mail me at lognaturel @ gmail .com

Tree (nested loops)

I expected this “tree drawing” assignment to be easy for students who had been in a Python class for seven months.  Nested loops are difficult for students and I believe need to be emphasized separately from simple loops, but I hadn’t realized how much harder the concept is for students with weak math skills.  These guys really struggled.

This experience really convinced me that teaching problem-solving strategies should be the focus of high school computer science classes.  We talked a lot about pseudo-code and writing out some sample output to find patterns.  I ended up giving them both the full analysis and the pseudo-code.  For stronger students, sample output in a couple of different sizes should be enough.

doc16x16 HeleneMartin-Scratch-Tree-Assignment.doc
pdf16x16 HeleneMartin-Scratch-Tree-Assignment.pdf

Graphing calculator (loops, spatial reasoning, lists)

A “graphing calculator” program worked well with high school students grades 10-12 with relatively weak algebra skills:

doc16x16 HeleneMartin-Scratch-Graphing-Assignment.doc
pdf16x16 HeleneMartin-Scratch-Graphing-Assignment.pdf

Screensaver (loops, patterns, random)

The next assignment I did with the same group of 10-12 graders with weak algebra skills involved drawing spirals starting from random locations. I also asked the students to create another sprite with behavior of their choice so they could investigate interaction between sprites.  They found this assignment somewhat easier than the previous two.

doc16x16 HeleneMartin-Scratch-Spiral-Assignment.doc
pdf16x16 HeleneMartin-Scratch-Spiral-Assignment.pdf

10 Responses leave one →
  1. Jeff Harris permalink
    January 4, 2011

    I teach in Snohomish and am researching for a computer game programming class for next year. We were going to use Digipen, but it appears it might be too expensive. We could use a C++ textbook, but it will be more dry (boring) than I would like. I worked through a few scratch tutorials, but I suspect it will just last a few days.

    Are you familiar with a month or two curriculum where I could use Scratch to teach some concepts, and then move into C++, that would be ideal.

    Thanks, Jeff Harris

    • Hélène Martin permalink*
      January 20, 2011

      I recommend against the Digipen game curriculum — the classes I saw using it did not seem very successful and the cost is really incredible.

      Unfortunately there’s not a lot of polished curriculum out there. I hope to one day formalize what I do but I don’t have the time while I teach! I do about a month of Scratch and I think it does transfer pretty well to follow-up languages (I like Python). You can take ideas from my course website (11/16 – 12/14) though I’ll be the first to admit it’s not really easy to replicate in its current form. Happy to have a longer conversation about this if you want to e-mail me.

  2. February 13, 2011

    If you like Scratch, you’ll love BYOB (Build Your Own Blocks) from UC-Berkeley (http://byob.berkeley.edu). BYOB includes all of the goodies of Scratch plus the ability to create your own procedures. (It contains much more, but being able to write one’s own procedures is a huge deal.)

    If you do download BYOB, check out the fractal fruit tree:
    http://paleyontology.com/auvw/fruit_tree_fractal_jls.ypr

    I suppose this could be done in Scratch using message broadcasting, but… ick. This is about as good as it gets when trying to teach recursion:

    * No syntax–it’s all drag and drop a la Scratch
    * Create your own procedure that calls itself
    * Very little math required
    * The power of variables is plain
    * Doable on Day One of a school year

    There is a reason that Berkeley is using BYOB for its AP CS Principles pilot and, frankly, I am seeing things that I had not thought possible, such as students finishing Breakout within the first two to three weeks of a class. (Some finished Pong in week one!)

    • Hélène Martin permalink*
      February 13, 2011

      You can also take a look at my thoughts on BYOB (there’s even a shout-out to you, Josh).

      • February 13, 2011

        Thank you for the kindness!

        The single most important thing that BYOB has to offer is the user can write her own procedures. While I think recursion is fun (and we do fractal trees on day one), my biggest concern with Scratch is that broadcast messages are often substitutes for procedure calls in gunky ways, much like GOTO used to be in Basic. I want my students thinking about elegant code even in a drag and drop language, and the readability and modularity that BYOB has to offer are no small thing.

        • Hélène Martin permalink*
          February 13, 2011

          You’re right about the broadcast problem. The more I play with BYOB the more I like it. If there were the sharing/social networking part of it, I’d use it exclusively.

          • February 15, 2011

            The Scratch community is absolutely a big deal. I can see that being a potential showstopper for people interested in doing BYOB. I suspect the BYOB folks understand this as well, and I hope that they deal with it ASAP.

  3. February 13, 2011

    wow scratch lives! cool

Trackbacks and Pingbacks

  1. Scratch assignments | Hélène Martin
  2. MIT’s Scratch Part 4: Twenty Webs Sites To Support Scratch And The Itch For Transforming Education | 21 st Century Educational Technology and Learning

Leave a Reply

Note: You can use basic XHTML in your comments. Your email address will never be published.

Subscribe to this comment feed via RSS