
United Kingdom · J277 · H446
Cambridge OCR
19 lab practicals for the OCR syllabus.
OCR GCSE Computer Science J277 and A Level H446 algorithms and programming, in Python. Every lesson is stepped, compiled and checked by a real toolchain on your own machine — the model reviews your code afterwards, it does not decide whether you passed.
Updated
Semester by semester
Programme: GCSE (9-1) Computer Science J277 and A Level Computer Science H446. Scheme: J277 from 2020 (spec v3.1, 2026); H446 from 2015 (spec v3.0, 2026). Open a course to see its practical units and the lab lesson GroutCode ships for each.
Year 11
1 course12 lab lessonsPythonSQL- J27702PythonSQL
Computational thinking, algorithms and programming (J277/02)
12
lessons
- Computational thinking — abstracting a metro map into a journey planner
- Designing algorithms — nesting, trace tables, error spotting and structure diagrams
- 1Computational thinking — abstracting a metro map into a journey plannerUnit 2.1.1 · Computational thinking
- 2Designing algorithms — nesting, trace tables, error spotting and structure diagramsUnit 2.1.2 · Designing, creating and refining algorithms
- 3Searching and sorting — binary search, bubble, insertion and merge sort by handUnit 2.1.3 · Searching and sorting algorithms
- 4Programming fundamentals — operators, constants, selection and both kinds of loopUnit 2.2.1 · Programming fundamentals
- 5Data types and casting — integer, real, Boolean, character and stringUnit 2.2.2 · Data types
- 6String manipulation and text files: usernames, ciphers and a high-score tableUnit 2.2.3 · Additional programming techniques: strings and file handling
- 7Searching cinema records with SQL: SELECT, FROM and WHEREUnit 2.2.3 · Additional programming techniques: records and SQL
- 8Arrays, sub programs and random numbers: a pupil records table and a dice simulatorUnit 2.2.3 · Additional programming techniques: arrays, sub programs and random numbers
- 9Defensive design: input validation and a salted-password login systemUnit 2.3.1 · Defensive design
- 10Testing a grading program: test data, test plans and fixing errorsUnit 2.3.2 · Testing
- 11Boolean logic — gates, truth tables and an expression evaluatorUnit 2.4.1 · Boolean logic
- 12Translators — an LMC assembler, a run-time, an interpreter and a compilerUnit 2.5 · Programming languages and Integrated Development Environments
Year 13
1 course7 lab lessonsPython- H44602Python
Algorithms and programming (H446/02)
7
lessons
- Computational thinking — abstraction, caching, decomposition and concurrency in code
- Programming techniques — recursion, scope, parameter passing and a class hierarchy
- 1Computational thinking — abstraction, caching, decomposition and concurrency in codeUnit 2.1 · Elements of computational thinking
- 2Programming techniques — recursion, scope, parameter passing and a class hierarchyUnit 2.2.1 · Programming techniques
- 3Computational methods — divide and conquer, backtracking, heuristics, mining and pipelinesUnit 2.2.2 · Computational methods
- 4Big O by counting — instrumented searches, pair finders and a growth classifierUnit 2.3.1 · Algorithms: analysis, design and Big O notation
- 5Stacks, circular queues, linked lists and tree traversals from scratchUnit 2.3.1 · Algorithms for the main data structures
- 6Searching and sorting by hand — binary search to quickselectUnit 2.3.1 · Standard searching and sorting algorithms
- 7Dijkstra and A* — route finding on road graphs and grid mapsUnit 2.3.1 · Shortest path algorithms
The full 5-course syllabus is transcribed in the app, including the theory courses. Lessons are authored against the course codes that have practical work, and the list grows with each release.
GroutCode is not affiliated with or endorsed by Cambridge OCR. Course codes and titles are transcribed from the institution’s published scheme documents.
How a practical runs
The same five steps for every lesson, in every language.
- 1
Pick your syllabus
Choose your university or board and the semester or class you are in. The course list is the transcribed official scheme, not an approximation.
- 2
Open a lab lesson
Each lesson is a stepped practical for a specific course, with a starter file you edit and a test file you do not.
- 3
Write the code yourself
The starter has the signatures and the TODOs. You implement them in the editor, in the language your course actually uses.
- 4
Run the checks
The toolchain compiles and runs the tests — 8 to 15 of them across the lesson, one per step, so you find out which change broke what.
- 5
Get the review
Once the tests pass, the model reads your implementation and tells you the input that breaks it. It never reports the pass or fail itself.
Why the compiler grades, not the model
The obvious way to build an AI lab tool is to let the model read the student’s code and say whether it is correct. It is also the way that produces a tool nobody can trust. A model will tell you your code works when the compiler says otherwise, and it will fail you for a style it happens to dislike.
So the two jobs are split:
- The model designs the lesson, writes the starter and the tests, and — after the tests pass — reads what you actually wrote and tells you the input that breaks it.
- The toolchain decides whether it compiles and whether each step passes. That verdict is not negotiable and the model never issues it.
And why steps instead of one big task
A 40-to-60 minute practical with a single Run at the end gives a beginner one bit of feedback an hour, and it arrives after every decision has already been made. Each lesson here is 8 to 15 steps, each with its own instruction and its own check, so you find out which change broke what while you still remember making it.
Frequently asked questions
Does GroutCode cover the OCR J277 · H446?
Yes. GroutCode ships the transcribed OCR J277 · H446 for GCSE (9-1) Computer Science J277 and A Level Computer Science H446 — 5 courses — with 19 authored lab lessons mapped to specific course codes. The syllabus was transcribed from the official documents, and the source and checksum of each one is recorded in the app.
Which languages do the OCR practicals use?
Python (18 lessons), SQL (1 lessons). The language is set per course code rather than guessed from the title, because the same subject is taught in different languages at different institutions.
Does the AI just write the practical for me?
No. The starter file has the signatures and the TODOs; you implement them. The toolchain — not the model — decides whether your code compiles and whether each step passes, so the AI cannot tell you your code works when the compiler disagrees. What it does afterwards is read your implementation and point out the input that breaks it.
Do the practicals work offline?
The lessons, the syllabus and the test runner are bundled in the app and run locally, so the compile-and-check loop works with no connection. The review step at the end uses a model, which can be a local one or a cloud one with your own key.
What do I need installed?
GroutCode detects which toolchains are present on your machine and tells you what is missing and what would fix it. You need the compiler or interpreter for the language your course uses — a C compiler, a JDK, Python, Node or SQLite.
Other syllabuses

Oxford
University of Oxford
University of Oxford Computer Science course synopses for 2026-27: databases, database systems implementation and AI.
27
lab lessons

Cambridge
University of Cambridge
The Cambridge Computer Science Tripos, Parts IA and IB: algorithms, databases, object-oriented programming, C and C++.
36
lab lessons

Imperial College
Imperial College London
Imperial College London BEng/MEng Computing: computing practicals, algorithms, databases, operating systems and machine learning.
24
lab lessons
Do your OCR lab work with the checks built in
GroutCode is included in every Grout Suite license. Free download for Windows and macOS.
Download GroutCode