Take your first steps towards teaching computer science and establish a foundational knowledge of concepts, terminology and classroom practice. Find out how algorithms are designed and how programs are written to provide clear instructions to machines. Learn about the binary system used by computers to store and process data, and how to convert to and from the familiar denary system of numbers zero to nine.
Create some simple block-based computer programs and discover how to implement them using the Python programming language. Use your knowledge to write programs that can handle user input and manipulate variable values before outputting simple messages to the screen.
Book now and you will be automatically registered for the scheduled sessions for the course. Remote CPD courses have live, facilitator-led sessions and are not available for instant access. Please refer to the schedule of dates published for each course instance.
No prior experience or knowledge of computer science is expected before attending this course. It is advised that you become familiar with the National Curriculum in Computing before participating in this course.
Do you prefer to learn in a classroom?
If so, take a look at: An introduction to algorithms, programming and data in computer science
This course is delivered as part of the National Centre for Computing Education.
Who is it for?
This course is for prospective teachers of computer science who may be new to the subject, or who may teach computing in earlier years.
01 | Introduction to algorithms - From the instructions you might give to make the perfect cup of tea, to the steps needed to sort a list alphabetically, this session will introduce algorithms. You’ll discover the three key constructs that comprise all algorithms at this level, and how to describe algorithms using flowcharts and pseudocode as required by the GCSE examination.
02 | Creating algorithms - this session will allow you to start creating your own algorithms represented in both flowcharts and pseudocode.
03 | Essentials of computer programming - Computers do not understand English as humans do. To get a computer to carry out the instructions contained in an algorithm, a computer program must be written. In this session you’ll find out how the basics are expressed in a simple block-based language, as well as the text-based language Python.
04 | Creating programs - this session will allow you to start developing your own computer programs, starting in a block-based language allowing you to get to grips with the programming constructs sequencing, selection and iteration before moving into the text based language Python.
05 | What is data? - Data is all around us, in written and electronic formats. Computers handle data in the form of binary – ones and zeros that can represent the dates, alphabetical characters, images and so on that are important to us humans. You’ll carry out basic data-handling operations through simple programs, changing inputted data into different outputted data.
06 | Using data - this session will allow you to get to grips with binary and hexadecimal conversions, binary addition and binary shifts.
How long is this course?
This course is approximately five hours in duration, split across several days.
How will you learn?
Scheduled live, interactive online sessions led by an experienced practitioner.
Flexible facilitator-supported, participant-led tasks, involving deep exploration of the subject content.
- Learn about algorithms, how they are usually represented, and some of their most common applications
- Understand how human-language algorithms are translated through computer programs into binary, to be executed by a computer
- Recognise and use the basic building blocks of programming: sequence, selection and repetition
- Understand how binary, denary and hexadecimal are used to represent numbers, and why this is important for computer science
- Develop basic programming skills using block-based and text-based languages
- Develop confidence in subject knowledge, ready to progress further towards becoming a GCSE computer science teacher.