0% found this document useful (0 votes)
40 views3 pages

CS50x Scratch Project Guidelines

This document outlines Problem Set 0 for CS50x, where students must create a Scratch project by December 31, 2020, meeting specific requirements such as using multiple sprites, scripts, conditions, loops, and sounds. Additionally, students are encouraged to introduce themselves through a video and submit their projects via a specified online platform. Instructions for submission and links to resources are provided to assist students in completing their assignments.

Uploaded by

audacityimpact
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views3 pages

CS50x Scratch Project Guidelines

This document outlines Problem Set 0 for CS50x, where students must create a Scratch project by December 31, 2020, meeting specific requirements such as using multiple sprites, scripts, conditions, loops, and sounds. Additionally, students are encouraged to introduce themselves through a video and submit their projects via a specified online platform. Instructions for submission and links to resources are provided to assist students in completing their assignments.

Uploaded by

audacityimpact
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

This is CS50x

OpenCourseWare

David J. Malan ([Link]


malan@[Link]
 ([Link]  ([Link]  ([Link] 
([Link]  ([Link] le/David-J-Malan)  ([Link]

Problem Set 0

What to Do

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

When to Do It

By 11:59pm on 31 December 2020.

Advice

Here are David’s examples ([Link] from lecture if you’d like to review! To see the source code of each, click
See inside.

1/1
This is CS50x
OpenCourseWare

David J. Malan ([Link]


malan@[Link]
 ([Link]  ([Link]  ([Link] 
([Link]  ([Link] le/David-J-Malan)  ([Link]

Scratch
It’s time to choose your own adventure! Your assignment, quite simply, is to implement in Scratch any project of your choice, be it an interactive
story, game, animation, or anything else, subject only to the following requirements:

 Your project must have at least two sprites, at least one of which must resemble something other than 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 condition, one loop, and one variable.
 Your project must use at least one sound.
 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 Ivy’s Hardest Game. As such, your project should probably use a few dozen puzzle pieces overall.

If you’d like to try out some Scratch projects from past students, here are a few:

 Ivy’s Hardest Game ([Link] from lecture


 Soccer ([Link] a game
 Cookie Love Story ([Link] an animation
 Gingerbread tales ([Link] an interactive story
 Intersection ([Link] a game

You might nd these tutorials ([Link] or starter projects ([Link]


helpful. And you’re welcome to explore [Link] ([Link] 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: pluck off one piece at a
time. 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 nd it too dif cult 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 nd fun, odds are you won’t nd it too hard to satisfy the above requirements.

Alright, off you go. Make us proud!

Once nished with your project, select File > Save now one last time. Then select File > Save to your computer and keep that le so that you
can submit it.

Hello, World
Suf ce it to say it’s a bit harder to meet classmates when taking a course online. But, thanks to technology, everyone can at least say hello!

If you have a phone (or digital camera) and would like to say hello to classmates, record a 1- to 2-minute video of yourself saying hello,
perhaps stating where in the world you are, why you’re taking CS50x, and something interesting about you! Try to begin your video by saying
“hello, world” and end it with “my name is …., and this is CS50.” But, ultimately, it’s totally up to you.

If you do record a video, upload it to YouTube (unless blocked in your country, in which case you’re welcome to upload it elsewhere) so that you
can provide us with its URL when you submit!

How to Submit

Step 1 of 2 1/2
Step 1 of 2
Submit this form ([Link]

Step 2 of 2
This step assumes that you’ve downloaded your Scratch project as a le whose name ends in .sb3 . And this step also assumes that you’ve
signed up for a GitHub account ([Link] per the above form.

1. Visit this link ([Link] log in with your GitHub account, and click Authorize
cs50.
2. Check the box indicating that you’d like to grant course staff access to your submissions, and click Join course.

3. Go to [Link] ([Link]
4. Click “Choose File” and choose your .sb3 le. Click Submit.

That’s it! Once your submission uploads, you should be redirected to your submission page. Click the submission link and then the check50 link
to see which requirements your project met. You are welcome to resubmit as many times as you’d like (before the deadline)!

To view your current progress in the course, visit the course gradebook at [Link]/cs50x ([Link]

2/2

Common questions

Powered by AI

To submit a completed Scratch project for CS50x, a student must first export their Scratch project file with a .sb3 extension. They should also sign up for a GitHub account. The next steps involve authorizing CS50 via GitHub, granting course staff access to their submissions, and finally uploading the .sb3 file through the provided submission link. Upon successful submission, feedback can be checked via the 'check50' link .

Incorporating a condition, loop, and variable into CS50x projects enhances learning by introducing students to fundamental programming concepts necessary for logical and efficient coding. Conditions control decision-making processes, loops allow for repeated execution of code, and variables enable storage and manipulation of data. These concepts are crucial for developing advanced algorithms, understanding program flow, and building dynamic and responsive projects .

'Starter projects' and 'tutorials' serve as valuable learning tools in the CS50x Scratch project assignment by providing students with reference material and initial guidance. These resources help students understand the basics of Scratch programming, offering examples that can inspire their projects and mitigate the steep learning curve, especially for those new to programming .

The specific requirements for the CS50x Scratch project include having at least two sprites, with one being different from a cat, a minimum of three scripts in total, at least one condition, one loop, and one variable, and the use of at least one sound. The complexity should exceed basic examples from lectures but can be less than Ivy’s Hardest Game .

Requiring the use of sound in CS50x Scratch projects serves the educational purpose of encouraging students to integrate multimedia elements, enhancing creativity and engagement. This requirement helps illustrate the concept of multi-sensory input in computational projects, showing students how various elements can be programmed to interact, thus broadening their understanding of programming and digital creativity .

Encouraging students to record a 'hello world' video is intended to foster a sense of community and personal connection within the online CS50x course. This activity allows students to share personal insights and experiences, facilitating social interaction in a largely solitary learning environment. It also introduces students to the idea of personalized digital communication, which is integral to collaborative technology fields .

Requiring projects to be 'more complex than those demonstrated in lecture' pushes students to apply their knowledge more creatively and extensively, thus deepening their understanding of programming concepts. It challenges them to integrate multiple elements and techniques learnt, fostering problem-solving skills and advancing their ability to innovate beyond taught examples. This approach enhances learning by encouraging students to explore and implement creative solutions independently .

Requiring multiple 'puzzle pieces' in CS50x projects parallels using different functions and commands in a programming language. It helps students understand how complex programs are built by combining various smaller components. This requirement simulates real-world programming tasks where different parts of code work together, illustrating the modular nature of coding and the need to think systematically about program structure .

CS50x encourages incremental development by advising students to tackle their Scratch projects in small pieces, or 'baby steps'; this involves writing a bit of code, testing it, and repeating the process until completion. This method helps manage complexity and reduces frustration if features prove difficult to implement, allowing for modifications or alternative approaches .

CS50x utilizes GitHub as a platform for accessing and submitting Scratch projects by requiring students to create an account and authorize the course on GitHub. This integration allows students to submit their projects online, enabling course staff to access, review, and provide feedback efficiently. This approach also familiarizes students with GitHub, an essential tool in programming development and collaboration .

You might also like