>_H-Code
100% free · self-hosted by your department

Python practice that shows its work.

Every skill level, every lesson unlock, every "why this task next" is visible — to students and to you. Structured lesson paths, a real adaptive engine and a free in-browser IDE, with classes and progress tracking your department actually owns.

Runs entirely in the browser — nothing executes on your server.

practice.pytests
1# A till system rounds up the paint needed
2name = input()
3area = width * height
4print(f"Litres needed: {litres}")
✓ 3/3 tests passed · +25 XP

150+

GCSE tasks

12

GCSE topics, OCR & AQA

4

wording tiers, ladder-style

£0

to get started

Lesson paths

Notes, a worked example, then practice — every topic, same reliable shape.

Adapts to you

Wording and difficulty track a live per-topic skill level, not just right/wrong.

Free IDE

Write and run any Python, no challenge needed, no account required.

Teacher-paced classes

Or fully self-paced — lessons only unlock when you're ready.

How a lesson works

Every topic runs the same path, start to finish.

1

Teaching notes

Plain English, not a wall of jargon.

2

Worked example

See real code run before writing your own.

3

Laddered tasks

Direct instructions, building to exam-style wording.

4

Quick check

A few questions to check the theory landed too.

Lessons unlock in order as each is mastered. Recap questions from earlier topics keep resurfacing so nothing gets forgotten.

See it in action

Real screens — a lesson, a project, a teacher's view.

Actual screens from the app, not stock photos.

/learn

Getting started

2/20 tasks
Lesson 1

Using the IDE & print()

1/5 tasks

Lesson 2

Variables — storing a value

1/5 tasks

Lesson 3

Getting input from the user

0/5 tasks

/practice — Projects

Iteration

Class Average Report

difficulty 2/5 · 40 XP

Redo
🏗

Savings Goal Tracker

difficulty 3/5 · 60 XP

Start
🏗

Exam Results Summary

difficulty 4/5 · 80 XP

Start
/teacher/[class] — Overview

Class strength by topic

Getting started19%
Data types & variables19%
Sequencing16%
John SmithLevel 2 · 45% accuracy
Ada LovelaceLevel 1 · 67% accuracy
Not in a class?

Built for classrooms first — but you don't need one.

Every lesson, adaptive challenge and the free IDE work exactly the same without a teacher or class attached — sign up, pick GCSE or A level, and go.

Self-learners

A structured path instead of a random tutorial, on your own timeline.

Parents & tutors

Help fill gaps between lessons, no enrolment needed.

Curious developers

A free, no-signup Python sandbox — the IDE needs no account at all.

For teachers

Run your class at your own pace, not the app's.

One join link per class

Students sign up through your link and land straight in your class.

You control pacing

Lessons stay locked until you assign them, however far ahead the content goes.

Personalised homework

Each student gets challenges at their own skill level, not one shared list.

Class-wide topic strength

See which topic the whole class needs re-taught, not just one student.

Not a black box

Watch the skill map build itself.

Most "adaptive" tools just count right vs. wrong. H-Code tracks a live skill level per student, per topic — lessons unlock in the order a class actually needs them. This is what that path looks like mid-way through Iteration.

Sequencing

mastered

Selection

mastered

3

Iteration

58% skill

Lists

locked

Strings

locked

Functions

locked

A fast, clean pass earns more, pushing confident students harder
One mistake barely moves the needle — no reset to square one
Every signal rolls up class-wide: "this class needs Iteration re-taught"
Set up a class
GCSE · OCR & AQA

Exactly the spec, nothing more

Set a class's board when you create it — everything below is shared between both, except Databases & SQL, which is AQA's one topic OCR doesn't have.

  • Getting started Using the IDE, print(), input() and joining text
  • Data types & variables Variables, data types, casting, input and output
  • Sequencing Input, output, variables, arithmetic
  • Selection if / elif / else and conditions
  • Iteration for and while loops
  • Combining techniques Putting sequencing, selection and iteration together
  • Lists & arrays 1D and 2D lists, searching
  • Strings Manipulation and string handling
  • Subprograms Functions and procedures
  • File handling Reading and writing text files
  • Databases & SQLAQA Relational databases, tables and SQL queries
  • Capstone Projects Bigger, harder builds that combine everything you've learned
A level · separate track

Higher content, walled off

  • RecursionBase cases and recursive calls
  • Object-orientedClasses, objects, inheritance
  • AlgorithmsSorting and searching
  • Data structuresStacks, queues and more

GCSE students never see these topics unless their teacher switches their class track.

Stay motivated

Adaptive practice

Challenges chosen from your live skill level.

Projects

Longer assessments per topic that pull everything together.

Boss battles

Timed rapid-fire runs for XP multipliers.

Duels

Race a classmate on the same challenge.

Leaderboards

Top 10 by XP, plus who's improved most recently.

Why H-Code

What you don't get from a generic platform.

£0

Free to set up, self-hosted on your own server — no per-seat pricing.

2 boards

Built to the exact GCSE spec your students sit — OCR or AQA — not a generic "learn to code" curriculum.

You

Your department owns the data and the pacing — lessons unlock when you say so.

Open

The adaptive engine's logic is shown on the page, not hidden behind "AI-powered."

Self-hosted · your data stays yours

Free to set up, no strings attached.

No subscription, no per-seat pricing — self-hosted on your own server, so your data stays yours regardless. Set up a class in minutes.