How to Teach Programming (Secondary) Inset

Engage and motivate your KS3 and KS4 pupils with tried and tested strategies for delivering outstanding computing.

Alan O'Donohoe

Through his work in the classroom, Alan has earned an excellent reputation within computer science education and has a wealth of experience in delivering courses which have been consistently graded by teachers and inspectors as "outstanding". trainer profile
Make an email enquiry

The new computing curriculum requires pupils at KS 3 and 4 to develop a far deeper understanding of technology and computer programming than under the previous ICT framework.

Teaching programming to schoolchildren presents many challenges: huge diversity in ability and aptitude levels; the time-consuming nature of computing projects; and of course simply having enough subject knowledge to facilitate learning. While some pupils take to textual programming like ducks to water, others struggle or have minimal interest. Our unique approach gives you a variety of strategies to cope with the extreme levels of differentiation, from fun and engaging physical "Computer Science Unplugged" games, through to code-less visual logic with Scratch, right the way up to cool Python projects to excite and motivate your pupils.

This course draws on research conducted with young people and is designed to give you the skills and strategies you need to deploy computing effectively at your school. It is closely aligned to the curriculum and also benefits from input from the technology sector. Computing is about problem-solving in the real world and this is the key to motivating your pupils!

Course covers

  • Concepts of programming
  • Visual programming with Scratch
  • Textual programming with Python
  • Using free online resources
  • Using creative graphics and video games to teach programming concepts

What other teachers have said about the course

  • The course was excellent. This was because the course leader had a very deep understanding of the subject and was able to deal with a wide range of issues. The course had two elements.…

    Edward Joyce, Wallington County Grammar School
  • Les was fab! Would definitely like to participate in his courses in the future and would also like him to attend our school for inset training. The content of the course was extremely…

    Sara Richardson, Alsop High School
  • I would change nothing! Even from a point of view of somebody who has been teaching Computing for a while, I had plenty to learn and absorb.

    Nigel Hubbard, The Skinners' School

Full Course Content

Introducing Programming to Pupils

  • Having enough information
  • Building confidence

Visual Programming

  • Overview
  • Scratch


  • Guide to the best information on the web
  • Exchanging ideas

Textual Programming

  • Overview
  • Python

Problem Solving

  • How to break down and understand problems
  • Ideas to help students build programs