Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Raspberry Pi Foundation

Introduction to Programming with Scratch

Raspberry Pi Foundation and Teach Computing via FutureLearn

This course may be unavailable.


Learn how to program your own animations and games

Scratch is a powerful, visual programming language that provides a great introduction to the world of programming. By snapping blocks together, you can create amazing animations and games.

Over this four-week course, you’ll learn how to navigate the Scratch programming environment, create your own programs, and share your creations.

Explore the key programming concepts

You’ll start this course with an introduction to the Scratch programming language and the fundamentals of working with sprites, costumes, and backdrops.

As you progress, you’ll build your knowledge of core programming concepts and how best to use them, from sequencing and repetition to selection and variables. Throughout the course, you’ll create your own animations and games to test your new skills.

Become part of the Scratch community to share and remix Scratch projects

A key benefit of working in Scratch is the community, which can be used for support, collaboration, and inspiration.

You’ll become part of the Scratch community, exploring the website and its many features. At different points across this course, you’ll be encouraged to share your work with the wider community and you’ll learn how to view and remix other people’s work.

Create Scratch programs with user interactions built in

As you work towards your final Scratch project of this course, you’ll learn how to produce Scratch programs that allow the user to interact with them with keypresses, text answers, and motion. Using Scratch extensions, you’ll also learn how to create programs that draw shapes, play music, and even sense the user’s movements using a webcam.

Then, you’ll bring all of your new programming knowledge and skills together to build your own game or animation using the tools and concepts you’ve learnt throughout this course.

This course is designed for anyone with an interest in programming and who wants to learn to program using Scratch, a block-based programming language.


  • Sequencing in Scratch
    • Welcome to the course
    • Getting to know Scratch
    • Sequencing in programming
  • Iteration, abstraction, and the Scratch community
    • Using repetition in Scratch
    • Creating your own blocks
    • The Scratch Community
  • Using conditions, selection, and variables in your projects
    • Conditions – true or false
    • Selection
    • Variables
  • The power of lists and extensions
    • Lists
    • Extensions
    • Your Scratch project

Taught by

Mark Calleja


4.8 rating at FutureLearn based on 42 ratings

Start your review of Introduction to Programming with Scratch

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.