Teaching resources
Empower educators in computer science with tailored resources. Whether you're new or seeking to expand your knowledge, we offer research-based guides, free courses in programming and Scratch, and ready-to-use projects for engaging, real-world learning.
Teaching instructions
Getting started
Explore the essential resources to kickstart your journey with Experience CS. Access instructional tutorials to navigate our learning materials and connect with our platform. Access webinars to dive deeper into getting started with Experience CS.
Upcoming webinar
What's Next with Experience CS Webinar
October 21, 2025 at 3pm CDT
Join us for our next webinar where we highlight what's next with Experience CS. This webinar will share new features and website improvements—shaped by your feedback—and give you a look at what’s ahead. We’re grateful to have you on this journey as we develop the curriculum, and we look forward to discussing the possibilities as Experience CS continues to grow.
Online courses
Teach computing: Pedagogy in practice – Semantic waves
What are semantic waves, and how can they help you to teach computing? Discover this pedagogical principle used by the Raspberry Pi Foundation, the research that backs it up, and how you can use it in your teaching context.
Curriculum Resources
Resources designed to support teachers in delivering the Experience CS curriculum effectively.
Our pedagogy practices for cross-curricular education
Learn about the educational principles and research that underpin Experience CS, with our short and accessible Pedagogy Quick Reads.
Professional development courses
Our professional development courses offer flexible, self-paced learning to help you confidently teach block-based programming with effective, inclusive computing pedagogy.

Teach computing: Pedagogy in practice – Semantic waves
What are semantic waves, and how can they help you to teach computing? Discover this pedagogical principle used by the Raspberry Pi Foundation, the research that backs it up, and how you can use it in your teaching context.
Explore the course
Teaching Programming to 5- to 11-year-olds
This course helps you grow your programming knowledge while exploring strategies to support young learners. You’ll cover key concepts like algorithms, sequence, repetition, selection, and variables, gain experience with beginner-friendly programming languages, and learn how to design and build Scratch programs from idea to execution.
Explore the course
Introduction to programming with Scratch
This four-week course introduces you to Scratch and key programming concepts like sequence, repetition, selection, and variables, while showing you how to use it effectively in the classroom and connect with the wider Scratch community.
Explore the course