Skip Navigation

Advanced Scratch Programming

Prerequisites: Qualifying math score, and successful completion of an introductory Scratch programming course or placement test.

Course Format: Individually Paced

Course Length: Typically 3 months

Course Code: ASC

Course Description

Description

Advanced Scratch Programming guides students through challenging concepts in Scratch Programming.  Building on their foundation of Scratch fundamentals, students will be able to create intricate animations and games using complex logic and program design. 

Students develop their programming skills while learning about lists, defining procedures, using webcam sensing, and debugging problematic code.  They will broaden their understanding of variables, operators, and event-driven programming while applying their existing knowledge in new ways of thinking about Scratch.

Students also examine graphic art and digital music in computers, and are encouraged to think artistically and creatively about computer programming and design.  Participants are exposed to a brief history of computer graphics and developments in software and hardware for human-computer interaction.  Students practice and demonstrate their knowledge through assignments, quizzes, a midterm project, and a final project.

Preparation for this Course

The Advanced Scratch Programming course assumes students have mastered all content in the Introduction to Scratch for Elementary School Students or Introduction to Scratch for Middle School Students. If the student has completed Introduction to Computer Science and Engineering, they will have covered some, but not all of what they will need. However, students may be considered for placement into Advanced Scratch Programming if they have a strong foundation in Scratch Programming. To get the best sense for preparedness, we recommend taking the placement test for Advanced Scratch Programming.

Materials Needed

Although there is no textbook required, students will need access to a webcam (external or internal) for two units of the course. 

Detailed Course Information

Course Details

Introduction and Review

Make a Block

  • Defining Make a Block
  • Creating a Custom Block and Script
  • Scope of Custom Blocks
  • Passing Data to Custom Blocks
  • Passing Data - Numerical
  • Passing Data - String
  • Passing Data - Boolean

Scratch and Art

  • The History of Computer Displays
  • Raster Graphics Defined
  • 8-Bit Style Game Graphics
  • Bitmap Editor in Scratch
  • Vector Graphics Defined
  • Vector Editor in Scratch
  • Advanced Graphics Concepts in the Paint Editor

Scratch and Music

  • Review of Sound Blocks and Uploading Sounds
  • Defining Sound
  • Monophonic and Stereophonic Sound
  • Retro and 8-Bit Music
  • Creating Music in Scratch

Variables

  • Defining Variables
  • Viewing Variables
  • Scope of a Variable (Local and Global)
  • Applying all Variable Concepts

Lists

  • Defining Lists
  • The Data Blocks for Lists
  • Changing Two List Values
  • Making a Custom Switch Block

Webcam

  • Background and History
  • Webcam Use in Scratch
  • Webcam Blocks in Scratch
  • Using the Webcam to Insert an Interactive Screen
  • Using the Webcam to Create a Visual Effect

Clones

  • Review of Clones
  • Review of Clone Blocks
  • Clones and Local Variables
  • Sharing Clone Data

Broadcasts

  • Event Driven Programming
  • Broadcast Blocks Review
  • Broadcast and Wait
  • Multithreading

Debugging

  • Defining Bugs
  • Types of Bugs - Syntax Errors
  • Types of Bugs - Logic Errors
  • Common Errors in Scratch

 

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.

This course uses an online virtual classroom for discussions with the instructor. The classroom works on standard computers with the Adobe Connect Add-in or Adobe Flash plugin, and also tablets or handhelds that support the Adobe Connect Mobile appStudents who are unable to attend live sessions will need a computer with the Adobe Connect Add-in or Adobe Flash plugin installed to watch recorded meetings. The Adobe Connect Add-in, Adobe Flash plugin, and Adobe Connect Mobile app are available for free download. Students who do not have the Flash plug-in installed or enabled on their browsers will be prompted to download and install the Adobe Connect add-in when accessing the virtual classroom.

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.

 

 

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

Reviews

Quotes:

"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."