Computing courses

Discover our range of free computing courses. Learn to code your own programs, make exciting projects, and build your computing skill set.

Our online courses have something for everyone, from absolute beginners to more experienced programmers.

Learn about Python, Scratch, AI and machine learning, web design, cybersecurity, computing education, and much more.

Teaching computing to 5- to 11-year-olds

Get expert online training for teaching computing in your school. Learn how to deliver computing lessons for primary or K1–5 children.

Get Started Teaching Computing in Primary Schools: preparing to teach 5- to 11-year-olds

Improve your subject knowledge and develop inclusive lessons to teach computing to primary school learners (ages 5–11).

Creating an Inclusive Classroom: Approaches to Supporting Learners with SEND in Computing

Explore ways to make your computing lessons more inclusive for learners with special educational needs and disabilities.

Teach kids computing: Computing Systems and Networks

Increase your knowledge of "computing systems & networks" and plan how you will teach young children about this topic.

Teaching Data and Information to 5- to 11-year-olds

Increase your knowledge of data and information, and how you can teach young children about this topic.

Teaching Programming to 5- to 11-year-olds

Increase your programming knowledge and develop effective lessons to teach programming to primary school pupils (aged 5–11 years).

Teaching Physical Computing to 5-11 year olds

Teach your young learners how to create electronic circuits, then learn to control them using block-based programming languages.

Programming Pedagogy in Primary Schools: Developing Computing Teaching

Investigate a range of pedagogical approaches for teaching programming to primary school learners (ages 5–11).

Teach computing: moving from Scratch to Python

Discover how you can support learners to use the thinking and programming skills they learned in Scratch in text-based programming languages like Python.

Improving Computing Classroom Practice Through Action Research

Learn how to run your own action research project to improve the computing pedagogy and practices in your classroom.