Scratch problem set from becca's class

From CyberOne Wiki
Jump to: navigation, search

Assignment for Sept. 17 -- Scratch Programming

Becca recommends starting with the "Getting Started with Scratch" section first.

This problem set is adapted from the Scratch problem set used in CSCI S-1 and CSCI S-111a by instructors Henry Leitner and David Malan. 10 points

  • To be walked through the process of making a project from scratch1, surf on over to Scratch’s home page at http://scratch.mit.edu/howto. Click the link entitled “Getting Started” on that page and peruse the guide’s PDF for some step-by-step instructions on how to use Scratch. Carry out as many of these exercises as you can, until you feel you have a good sense for the Scratch software.
  • Make yourself aware of Scratch’s Help Screens, available at: http://llk.media.mit.edu/projects/scratch/help/. You might also want to consider signing up for a free account at the scratch website; this will allow you to upload and download Scratch projects and conveniently share your work with a global user community.
  • Go ahead and open a few more projects from the scratch folders. For each project of interest to you, run it to see how it works; then, look over its scripts to understand how it works. Feel free to make changes to scripts and observe the effects.

Do Your Own Thing!

And now your real adventure begins! Your task for this problem is, quite simply, to have fun with Scratch and implement a project of your choice (be it a game, an animation, or something else), subject only to the following requirements.

1. Your project’s filename must be firstname_lastname.scratch, where, of course firstname and lastname are your own first and last name.
2. Your project must have at least two sprites, neither of which may be a cat.
3. Your project must contain at least three scripts in total (i.e., not necessarily per sprite).
4. Your project must use at least one condition, one loop, and one variable.
5. Your project must use at least one sound.
6. Your project's complexity should be more on par with the other projects that come with Scratch. Thus your project should probably use a few dozen puzzle pieces overall.

Feel free to look through the projects that come with Scratch for inspiration, but your own project should not be terribly similar to any of them. Try to think of an idea on your own, and then set out to implement it. If, along the way, you find it too difficult to implement some feature, try not to fret: alter your design or work around the problem. If you set out to implement an idea you find fun, you should not find it hard to satisfy this problem’s requirements.

All right, off you go. Impress us!

Once done with your project, surf on over to http://scratch.mit.edu/signup and sign up for a Scratch account. Choose any username you'd like, but be sure to remember it and your password!

Then, within the Scratch software itself (not on the website), click the "Share" button and upload your project to MIT's Scratch Server, using the same username and password with which you just signed up for an account.

Once your project's been uploaded, surf on over to http://scratch.mit.edu/galleries/view/5369 and subscribe to the course's gallery by clicking the "subscribe" button that appears on the right-hand side of the page. (You'll need to be logged in.) Finally, click "my stuff" toward the top of the page, click the checkbox below the project you just uploaded, click "add to gallery", and add your project to the course's gallery. Be sure it got added by re-visiting http://scratch.mit.edu/galleries/view/5369 and verifying that your project is now listed!


Explain Your Own Thing

In a short paragraph, tell us what your project does (or how to use it). In one or more longer paragraphs, explain how your project works, noting the purpose of each sprite and script. Evaluate Your Experience


Create a text file (using NotePad on Windows, or TextEdit on Mac) called questions.txt. Place your answers to the following questions in that text file and submit it as an attachment with your homework submission.

1. Roughly how much time did you spend implementing firstname_lastname.scratch?
2. Did you base firstname_lastname.scratch on some project that came with Scratch or that was demonstrated in lecture? If so, which one?
3. Prior to implementing firstname_lastname.scratch, had you ever programmed before? If so, for how long and in what language(s)?
4. In one or two short paragraphs, tell us what you think of Scratch. Do you like it? What’s good about it? What’s bad about it? Did you enjoy implementing firstname_lastname.scratch?
5. In a short paragraph, what do you feel you learned by using Scratch?
b 6. In implementing firstname_lastname.scratch, with what concepts or implementation details did you struggle? Why?
Personal tools