Starting from Scratch
Itâs time to choose your own adventure! Your assignment, quite simply, is to implement in Scratch, at scratch.mit.edu, any project of your choice, be it an interactive story, game, animation, or anything else, subject only to the following requirements:
- Your project must use at least two sprites, at least one of which must not be a cat.
- Your project must have at least three scripts total (i.e., not necessarily three per sprite).
- Your project must use at least one conditional, at least one loop, and at least one variable.
- Your project must use at least one custom block that you have made yourself (via Make a Block), which must take at least one input.
- Your project should be more complex than most of those demonstrated in lecture (many of which, though instructive, were quite short) but it can be less complex than Oscartime and Ivyâs Hardest Game.
To meet these requirements, your project should probably use a few dozen puzzle pieces overall. And your code should ideally be not only correct but also well-designed. If one of your scripts is getting a bit long, try to break it up into multiple scripts (each of which does something specific). And try to leverage âabstractionâ where possible: if you can imagine giving a descriptive name to a sequence of blocks (e.g., meow), those could probably be moved to a custom block!
If youâd like some inspiration from past students, here are just a few:
- Itâs Raining Men, from lecture
- Soccer, a game
- Cookie Love Story, an animation
- Gingerbread tales, an interactive story
- Intersection, a game
- Hogwarts, a game
You might find these tutorials or starter projects helpful. And youâre welcome to explore scratch.mit.edu for inspiration. But try to think of an idea on your own, and then set out to implement it. However, donât try to implement the entirety of your project all at once: tackle one piece at a time, just as we did in lecture. In other words, take baby steps: write a bit of code (i.e., drag and drop a few puzzle pieces), test, write a bit more, test, and so forth. And select File > Save now every few minutes so that you donât lose any work!
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 that you find fun, odds are you wonât find it too hard to satisfy the above requirements.
If you decide to import any backdrops, costumes, or sounds into your project, do take care to cite their origin with a comment!
Alright, off you go. Make us proud!
Once finished with your project, select File > Save now one last time. Then select File > Save to your computer and keep that file so that you can submit it. If prompted by your computer to Open or Save the file, be sure to Save it.
How to Submit
Be sure to complete all three of the steps below, in exactly that order!
Step 1 of 3
This step assumes that youâve downloaded your project as a file whose name ends in .sb3
.
- Visit CS50 on Pensieve.
- At the sign in page, type in your preferred email address and then click Sign in with Email. Do not select the options to continue with Google, Apple, or Pensieve Code.
- This will send an email to that address with a login code. Complete the login by entering the code when you receive that email.
- Type in your HUID number and name on the next screen. You may choose a pseudonym, if youâd like, to use on Pensieve. If you do, remember what you chose, because you do need to tell us that pseudonym in Step 2 (so we can ensure you get credit for your work!)
- Click CS 50 in your list of Active Courses.
If you have any trouble getting signed into Pensieve, or donât see CS50 among your courses, contact sysadmins@cs50.harvard.edu, ccâing heads@cs50.harvard.edu!
- Click âProblem Set 0: Scratchâ.
- Drag and drop your
.sb3
file to the area that says âDrag & Dropâ. (Be sure that your file ends with.sb3
! If you upload a file with a different extension, the autograder likely will fail when trying to run it, and ensuring you have uploaded files with the correct filename is your responsibility!) - Click âUploadâ.
You should see a message that says âProblem Set 0: Scratch submitted successfully!â You may not see a score just yet, but if you see the message then weâve received your submission!
Step 2 of 3
Submit this form.
Step 3 of 3
Add your Scratch project to the courseâs gallery for others to see, if youâd like, as follows!
- Visit scratch.mit.edu/mystuff and click on your Scratch project.
- Click See inside.
- Click Share atop the page.
- Highlight and copy your projectâs URL.
- Visit scratch.mit.edu/studios/50651227, paste your URL under Add Projects, and click Add by URL!