Skip Navigation

Scratch Programming for Middle School Students

Arrow image that is used as button to enroll in courses. Enroll in this Course

Open to: Grades 6 and up

Eligibility: CTY-level or Advanced CTY-level math score required

Course Format: Individually Paced

Course Length: Typically 3 months

Course Code: MSP

Course Description


In this course, young students enter the world of computer science by learning how to create animations, computer games, and interactive projects. Using Scratch, a graphical programming language developed at MIT, students learn fundamental programming concepts such as variables, loops, conditional statements, and event handling. As they teach a mischievous cat to dance, explore a maze, or play games, students learn how to use math and computer code to think creatively. The course will show students how to make and import objects, create audio recordings, and use them to develop interactive projects. At the end of the course, students create their own computer game and share it with their CTY Online Programs instructor and classmates. Students who successfully complete the course will be prepared to study more advanced concepts in the next level course, Advanced Scratch Programming.

No previous programming skills are required, but students should be comfortable using a computer and browser, and managing files. Students are expected to be familiar with standard computer operations (e.g., login, cut & paste, email attachments, etc.). Students do not need to purchase any software or textbook.

Students are strongly encouraged to take a computer literacy placement test before enrolling in this course.  Students who have successfully completed either Scratch Programming for Elementary School Students or Scratch Programming for Middle School Students should enroll in Advanced Scratch Programming next to further develop programming skills.

This course does not have any synchronous class meetings, but students may schedule one-on-one virtual meetings directly with the instructor to answer questions or concerns.

Students may be invited to interact in CTY community spaces that include students and instructors and potentially specially invited guests that are not enrolled in their course. Student contributions (e.g., projects, forum posts, etc.) may remain in the course after the student completes the course. These artifacts may be preserved to showcase student work or to continue important conversations.

Materials Needed

There are no required materials for this course.

Detailed Course Information

Course Details

What is SCRATCH?

  • Scratch Interface
  • Creating A New Scratch Project

Getting Started

  • Start Moving
  • Add a Sound
  • Start Dancing
  • Repeating Actions
  • Control Block – Green Flag
  • Change Color
  • Control Actions
  • Create a Sprite
  • Say and Think Blocks
  • Animation
  • Make a Block


  • Move and Turn
  • Pointing
  • Go and Glide
  • Changing Positions
  • Bouncing
  • Locating the Sprite


  • Changing Costumes
  • Changing Backdrops
  • How to Make a Sprite Say Something
  • Graphic Effects
  • Changing the Size of a Sprite
  • Working with Multiple Sprites
  • Moving Sprites


  • Associating Sounds with a Sprite
  • Play Sound
  • Play Drums Part I
  • Play Drums Part II
  • Play Note and Play Instruments Part I
  • Play Note and Play Instruments Part II

Pen and Color Control

  • Pen Down and Pen Up
  • Changing Pen Color
  • Changing Pen Shade
  • Changing Pen Size
  • Stamp


  • Mouse Report
  • Pressing Keys
  • Touching and Over
  • Reporting Distance
  • Using the Timer
  • Using the Loudness
  • Ask and Wait
  • Video Motion
  • Calculating Location/Date


  • Wait Blocks
  • Forever Block
  • Repeating Actions
  • Conditional Actions
  • Cloning
  • Stop Block


  • Beginning Actions
  • Controlling Backdrops Part I
  • Controlling Backdrops Part II
  • Checking Volume/Motion


  • Variables and Data


  • Arithmetic Operators
  • Random Numbers
  • Comparing Numbers
  • Logic Operations


Technical Requirements

This course requires a properly maintained computer with high-speed internet access and an up-to-date web browser (such as Chrome or Firefox). The student must be able to communicate with the instructor via email. Visit the Technical Requirements and Support page for more details.

Zoom online virtual classroom
This course uses an online virtual classroom which can be used for instructor-student communication if the student has any questions about the course or curriculum. The classroom works on standard computers with the Zoom desktop client and also tablets or handhelds that support the Zoom Mobile app. Students will need a computer with the Zoom desktop client installed to watch any recorded meetings. The Zoom desktop client and Zoom Mobile App are both available for free download.

Most course lectures may be viewed on mobile devices, but in some cases assignments and quizzes must be completed on a desktop or laptop computer.

Chromebooks are not recommended due to required downloading of specialized software.


CTY Online Programs Computer Science - Comments and Feedback from Students, Parents, and Teachers



"My son’s instructor has a great ability to interact with kids. He was able to teach a technical subject to my son amazingly well. He kindled interest in the subject. He is very dedicated and provided good feedback."

"My instructor was very helpful throughout my course with all the different concepts. He was very knowledgeable, and funny! I enjoyed working with his help."

"The instructor helped my son learn how to independently complete the course successfully. She gave helpful and timely feedback and guidance to me and my son. By the end of the course, my son was corresponding with the instructor and managing the course all on his own-- what a great skill to learn above and beyond material she helped him through, which he loved. He can't wait to take the next course."