Online training

Join one of our free online training courses and discover a different way to learn about Digital Making and Computer Science with the Raspberry Pi Foundation.

Take a course at your own pace, anywhere in the world you like. With new courses starting regularly, there’s something for every type of learner.

Choose from the courses below or visit our FutureLearn homepage.

Current Courses

Scratch to Python: Moving from Block to Text-based Programming

4 weeks, 2 hrs/week

training people

Block-based programming languages such as Scratch make it simple to learn and teach programming. But once you and your students have mastered it, it’s time to move on to a text-based programming language such as Python. This online course will show you how.

Discover how to transfer the programmatic thinking skills you learned in Scratch to Python. You’ll develop basic text-based programming skills, learning how to understand error measures and debug code.


Build a Makerspace for Young People

4 weeks, 2 hrs/week

training people

A makerspace is an area inside a school, library or other public facility, which young people can use to apply digital skills to the real world, exploring ideas and making things collaboratively.

This online course will show you how to create a makerspace in your community. You’ll explore different approaches to makerspaces, understand the pedagogy that underpins the maker movement, and get practical advice on getting started.


Prepare to Run a Code Club

3 weeks, 1 hr/week

a Code Club in action

Code Club is a global network of volunteers and educators who run free coding clubs for 9- to 13-year-olds. This short course will give you the confidence and skills to run a Code Club for young people and inspire the next generation to get excited about computing and digital making.

You’ll get practical advice and tips from volunteers, teachers, and the Code Club team, and you’ll explore the free resources which Code Club provides.


Object-oriented Programming in Python: Create Your Own Adventure Game

4 weeks, 2 hrs/week

training people

This online course will introduce you to the principles of object-oriented programming in Python, showing you how to create objects, functions, methods, and classes.

You’ll then use what you learn to create your own text-based adventure game. If you’re an educator, you’ll also be able to develop ideas for using object-oriented programming in your classroom.


Teaching Physical Computing with Raspberry Pi and Python

4 weeks, 2 hrs/week


Over four weeks, you’ll develop your knowledge of simple electronics and computing, setting up your Raspberry Pi and writing your first program using the Python programming language.

You’ll apply your new-found knowledge to a series of challenges, including controlling an LED with Python, using a button press to control a circuit, and making a game using a button and an LED.

If you’re a teacher, you’ll also have the chance to develop ideas for using the Raspberry Pi and Python in your classroom, and to connect with a network of other educators.


Teaching Programming in Primary Schools

4 weeks, 2 hrs/week

Kids learning about computing

This four-week course provides a comprehensive introduction to programming, and is designed for primary or K-5 teachers who are not subject specialists. During the course, we’ll introduce you to key programming concepts.

You’ll have the chance to apply your understanding through working on projects, both unplugged and on a computer, using the Scratch programming language. Discover common mistakes and pitfalls, and develop strategies to fix them.