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.

Not sure where to start? Try one of our curated pathways.

Are you a teacher in England?

Please access our courses through Teach Computing.

Visit Teach Computing

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.

Teaching Computing Systems and Networks to 5- to 11-year-olds

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).

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

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

Supported By Google

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.