Why I use Scratch in my High School Computer Science Courses

“The best way to teach somebody something is to have them think they’re learning something else. – Randy Pausch

Scratch is an entirely graphics-based program that allows kids to easily manipulate graphics in order to create animations, video games, simulations, & other similar applications (whatever students may dream of).

The beauty is that while they are having fun making games and recreating scenes from their favorite movies or television shows, they are also learning computer science.


Why I Like Scratch?

  • It’s easy to use
  • You can easily edit and modify your resources: backgrounds, images, and sounds
  • You can import your own images and even animate yourself and friends
  • It’s like a puzzle where if the pieces fit, it will work
  • It covers most programming structures
    • input
    • output
    • math
    • repetition
    • conditional execution
    • assignment statement
  • Those programming structures allow students to visualize what the code looks like
  • They have an extensive online gallery that anyone can contribute to and share with others

How I Use Scratch in My Courses

This is more how I as a Computer Science teacher approach teaching with Scratch. I primarily use Scratch to introduce my programming students to program decomposition (how you break up a difficult programming challenge into smaller chunks) and game design. I have found that all I have to do is begin by showing the students the Scratch icon and encourage them to review the Getting Started with Scratch Guide. It’s sometimes only a matter of a few minutes before students are making complicated videos and games.

I also like to use Scratch for my special needs populations. Whenever I have a student on a modified diploma or one that needs additional help, I find that they can use Scratch as a resource and even as an alternative working environment for a program. So, for example, once my students begin writing programs in Python, which is all code, students with special ed needs could use Scratch to tackle the same problem.

The other way I use Scratch is in my exploratory course titled, Introduction to Digital Technologies. This course offers up a sampling of the various courses in our technology department. The goal of the course is to be a teaser for our other courses. Scratch is a quick way to get students interested in programming in a non-threatening way.