Beans question — design lab

Six ways to capture the same thing: how much each reason explains being out of work. Self-only, 7 reasons, 0–100 scale. Click a tab, play with it, watch the readout at the bottom of each — that's the data it would store.

local test — no backendnumeracy-lightreading age ~9

Fixed pool · tap & pour

Bean jars

You have 100 beans. Press inside a jar and drag up to fill it — the higher you drag, the more beans go in. Drag down to pour some back. Put more beans on the reasons that matter more for you.

Beans left 100

No maths — you just keep dropping beans until they feel right.

StrengthTactile, no typing, forced budget makes weights comparable across people.
Watch100 taps is a lot. Pour helps; could drop to 20 beans (×5).
DataClean 0–100 weights summing to ≤100.

Fixed pool · drag & drop

Drag beans into buckets

Here are your beans, grouped into handfuls of 10. Drag a handful into a bucket — or just tap a bucket to drop one in. More beans = matters more. Tap a handful inside a bucket to take it back.

At most 10 drags — or skip dragging entirely and tap the buckets.

StrengthBeans-in-buckets feel, but handfuls of 10 mean ≤10 drags — or tap a bucket. No arithmetic.
WatchDrag is desktop-first; tap-to-add is the phone fallback. Resolution is in 10s.
DataMultiples of 10, sums to ≤100.

Fixed pool · paint 100 squares

Paint the squares

This grid is 100 squares — think of it as 100 beans. Pick a reason, then drag across the squares to colour them in. The more squares a reason gets, the more it matters.

Squares left 100

Colour in a reason like filling a bar. The grey squares are still up for grabs.

StrengthWhole 100 is visible at once; "how much of the picture" metaphor; satisfying to fill.
WatchNeeds an eraser/colour-swap that's obvious; small squares on phone.
DataCounts per colour, sums to ≤100.

Fixed pool · split one bar

Slice the bar

Each bar is one reason. Drag a bar to give that reason more or less. When you push one up, the others shrink to make room — it always adds up to 100.

Pull your biggest reason up first; the rest settle around it on their own.

StrengthDrag one up and the others shrink in proportion — no arbitrary neighbour effect. Always sums to 100.
WatchCoupled movement takes a second to grasp; you can't lock a reason in place.
DataContinuous 0–100 weights, always sum to exactly 100.

Free rating · height = weight

Raise the bars

For each reason, drag the bar up to show how much it explains your situation. Higher = matters more. They don't have to add up — just set each one where it feels right.

a lotsomea littlenone

No running total to manage — the lowest mental load. We turn the heights into shares.

StrengthEach reason judged on its own; matches the "vertical slider, height = weight" idea exactly.
WatchPeople may peg everything high; needs normalising and maybe a "rank the top one" follow-up.
Data7 independent 0–100 ratings; normalise to shares.

Free rating · no numbers at all

How much is each one to blame?

For each reason, tap how much it explains your situation — from not at all to it's the main thing.

not at allthe main thing

Pure words and taps — no numbers, no totals. The safest floor for low numeracy.

StrengthLowest possible numeracy load; familiar 5-point feel; fast.
WatchCoarse (5 levels); ties are common; less precise weights.
Data7 ordinal ratings 0–4; map to shares.