Competitive code challenges in python

Series 2 of has launched with free weekly challenges to help students grow in confidence, skill and experience with python programming. first launched in the first week of the first COVID-19 lockdown in March 2020 to help students get regular practice and support during lockdown. The partner site launched soon afterwards to allow groups of students to compete against each and teachers to track their progress.

Series 2 is designed for KS3 Computing or new GCSE Computer Science students and goes back to basics in python.

Competitive code challenges in python
Competitive code challenges in python

The idea is to give a short live coding video each week that introduces and covers a different skill in python.

Live coding is where code is explained live as it is being written. Rather than trying to understand or explain a finished program line by line, live coding lets you into the thought processes, key concepts and design decisions that lie behind the code.

The code featured in the live coding video is the basis for three interactive activities designed to boost students’ programming skill and confidence:

The code for each episode is available for students to run and experiment with

The code itself is available for students to experiment with and work through some suggested challenges.

Each episode has a python type race activity

Students can build up their typing speed and accuracy by typing out the code from the video as fast as they can.

The code also generates a series of KPRIDE activities designed to boost code comprehension skills:

Keywords: identify key programming concepts within the code

Predict and Run: compare your estimate of what the code will do with what actually happens

Investigate: work through the challenges in the comments of the code

Debug: the code is automatically sabotaged so that you can practice finding and fixing common errors

Extend: try to write your own code that uses all the key programming concepts identified in the keywords section

Each episode also has an extension activity with some self-marking challenges linked to the same theme.

Tracking students’ progress

Each activity can be used as a standalone activity from without needing to login or set up any student accounts but if you’re a teacher who would like to track the progress of your students as they compete against each other you can set up a free school account which allows you to set up groups for each class.

If have any questions or suggestions, please get in touch here or join the conversation on the Computing At School community discussion page.

Continue ReadingCompetitive code challenges in python

The importance of comments in Python

Comments are sections of code that are ignored by python when your code runs. But they are still really useful for making your code easier to read, understand, debug and improve.

This tutorial explains 5 ways that comments can help you as you learn to code in python. It guides you through what a comment is and how to use them effectively in your own programs.

Comments in Python
Parameters in python: Adapt and reuse sections of your code


Page 1: Intro

Page 2: The theory: learn what you need to know as fast as possible.

Page 3: Try it: try out and adapt some working python code snippets.

Page 4: Debug it: Learn how to find and fix common mistakes.

Page 5: Extend it: Choose a project idea to use your newfound python skills.

Continue ReadingThe importance of comments in Python

GCSE Computer Science resource updated to include OCR Exam Reference Language

To help students grow in confidence understanding and writing code (in pseudocode and a variety of high level programming languages like python, I’ve just updated a resource that contains and explains code snippets for all of the main programming building blocks that students need for GCSE. The resource now includes code examples for OCR Exam Reference Language alongside Python, VB.NET and C#.

Exam Reference Language
Quick Reference guide allows students to compare and understand code in Python, VB.NET, C# and OCR Exam Reference Language

Different exam boards offer slightly different versions of GCSE Computer Science, each with their own different styles of assessment and each with slightly different learning objectives to cover.

The most popular GCSE in Computer Science (in terms of number of students entered) is the OCR J277 course where students sit two paper based exams. Algorithms and program code in those exams will be written in an Exam Reference Language which is detailed in the specification. Students are able to write code in any high level programming language (like python) or in the same Exam Reference Language.

My students study the Pearson Edexcel GCSE in Computer Science, partly because it offers students a chance to swap one of the paper based exams for an on-screen practical programming exam where students read, debug, rearrange and write actual python code rather than having to deal with abstract pseudocode style algorithms on paper.

The QuickRef resource allows you to search for a programming skill (such as procedures or functions) and see how that can be achieved with Python, VB.NET, C# and Pseudocode / OCR Exam Reference Language.

If you spot anything missing or incorrect, please do leave a comment below.

All the best

Continue ReadingGCSE Computer Science resource updated to include OCR Exam Reference Language