Problem Set 0

What to Do

  1. Download and install the latest version of Chrome, if you don’t have it already.
  2. Implement your very own Scratch project using Chrome, per this specification.

When to Do It

By 11:59pm on Tue 9/11. If you add the course after then, no worries, email for an extension.

How to Get Help

  1. Attend office hours!
  2. Email!


Here’s how to try out David’s examples from lecture:

  1. Download one or more of them or a ZIP of all of them, which you should then unzip.
  2. Visit, click Try It, select File > Upload from your computer, and select the .sb3 file that you’d like to try out.

How to Submit

Step 1 of 2

Submit this form. If you have trouble logging in, try using your browser’s “incognito” or “private” mode.

CS50 collects some start-of-semester data for planning purposes via Problem Set 0’s form, so expect the form to take 15 minutes or so. Subsequent problem sets’ forms will be much shorter!

Step 2 of 2

This step assumes that you’ve downloaded your Scratch project as a file whose name ends in .sb3. And this step also assumes that you’ve signed up for a GitHub account, per the above form.

  1. Visit, log in with your GitHub account, and click Authorize submit50.
  2. You should receive two emails from GitHub inviting you to join CS50’s “organizations” on GitHub. Click the button in those emails to accept both of the invitations.
  3. Go to, replacing USERNAME in the URL with your own GitHub username.
  4. On the left side of the screen, click on Branch: master.
  5. In the field that says Find or create a branch…, copy and paste precisely this value, cs50/2018/fall/scratch, then click Create branch. That value is just a unique identifier for this problem.
  6. Click the button that says Upload files.
  7. Drag your .sb3 file into the box that says Drag files here.
  8. Click the green Commit changes button.

That’s it! If you visit again, you should see your submission. If you click on the check50 link next to the submission, you should see (after a minute or two) whether your project met all of the requirements. You are welcome to resubmit as many times as you’d like (before the deadline)!

If you don’t see any results on, make sure that your branch is named cs50/2018/fall/scratch. If you mistyped it the first time, you should create a new branch (repeating steps 5 and 6), making sure to name it cs50/2018/fall/scratch!

These were quite a few steps, so if you have any trouble, not to worry! Email before the deadline, and we’ll lend a hand!