Education software

Building educational software around Curriculum for Excellence

Educational software fails in one of two ways: it teaches the wrong curriculum, or it is no fun. Avoiding both at once is the whole job.

/9 min read

Scotland has its own curriculum, and it matters

Most learning apps a Scottish family can download are built around the English national curriculum, with year groups and key stages that do not map cleanly onto Scottish schooling. The vocabulary is wrong, the sequencing is wrong, and the assessment framing is wrong.

Curriculum for Excellence is organised by curriculum areas and by levels — Early, First, Second and onwards — rather than by year, with progression described as experiences and outcomes. A child moves through a level at their own pace, which is a much better fit for software than a rigid year-group model, provided the software is built for it from the start.

Content modelling

Every piece of content in the app is tagged against a curriculum area and level, and each activity declares which outcome it supports. That tagging is not decoration: it drives what a learner is offered next and what a parent sees in a progress view.

Because progression is by level rather than age, the content graph is a directed set of prerequisites instead of a linear list. A child strong in numeracy and finding literacy harder moves at two different speeds without ever being told they are behind.

Keeping curriculum mapping in data rather than in code also means it can be reviewed by someone who knows education and not TypeScript, which is the only way it stays accurate.

Motivation without manipulation

Gamification in children's software slides very easily into dark patterns: streaks that punish, timers that panic, loot mechanics that teach the wrong lesson entirely.

The line we drew is that rewards recognise effort and progress, never spending or session length. Streaks can be paused. Nothing nags. There are no notifications designed to pull a child back into the app, and no mechanic whose purpose is to extend a session past the point of usefulness.

The adventure framing does the motivational work instead: progress moves a story forward, and the story is the reward. It turns out that is enough, and it leaves the app something a parent is happy to have on the family tablet.

Pacing and difficulty

Adaptive difficulty is easy to overdo. Too responsive and the child feels the ground moving; too static and they are either bored or stuck.

We adjust on a small rolling window, cap how far difficulty can move in one session, and always allow a deliberate retreat to easier material without treating it as failure. Success rate is targeted at a band that keeps a child challenged but mostly winning, because mostly winning is what keeps a seven year old at a task.

Safeguarding and data

Building for children changes the defaults. Collect the minimum, keep no free-text a child writes that could identify them, put anything account-shaped behind a parent, and make deletion genuinely complete.

There is no social layer, no open chat and no user-generated content visible between accounts. Those features would improve engagement metrics and introduce risks we are not equipped — and have no wish — to manage.

Accessibility belongs in the same conversation: dyslexia-friendly typography, generous tap targets, audio support for readers who need it, and no activity that depends on colour alone or on fast reaction times.