Why a factory, and not a lecture

Every operations course teaches the same idea early: a system moves at the speed of its slowest step. Students can define a bottleneck by week three. They can draw one on a whiteboard. Then you give them a real line to run and they add capacity everywhere except the constraint, because the constraint is only obvious once you already know where it is.

That gap — between knowing the definition and recognising the thing — is the entire reason FactorySim is a factory you run rather than a chapter you read.

The lesson has to cost something

In the first exercise you get three machines and two operators. You cannot staff everything. Whatever you leave unstaffed becomes the pace of the whole line, and at the end of the week a scoreboard tells you which machine spent the most time actually producing and how much of the week the others spent waiting.

Nobody tells you which machine is the bottleneck. You find out because your profit is lower than you expected and one row on the board is doing all the work.

That is a different kind of learning than being told. It is the same reason nobody forgets the first time they mismanaged a supply chain in a game: the number went down, and it was their fault, and they had to look at why.

Eleven small factories, each with one idea

The exercises are deliberately narrow. Each one isolates a single concept and refuses to let you solve it by accident:

Then a graduate pack goes further: elevating a constraint, matched sets, throughput accounting, cash-to-cash cycles, and running a crew against a payroll.

That last one turned out to be the sharpest. Once operators cost money by the hour, an idle worker is no longer free — they cost exactly as much as a busy one. The board now names who was paid for forty hours and worked six of them. Watching a comfortable profit get eaten by three people you forgot to give a job to is a more durable lesson about operating expense than any definition of it.

What just shipped

This week’s update was almost entirely interface, and it started with measurement rather than taste.

Half the palette was failing accessibility contrast standards — the colour used for most of the secondary text sat below the readable threshold on exactly the surface it appeared on most. Worse, the colour meaning “this is interactive” and the colour meaning “this machine is starving” were less than one degree apart in hue. They were, for practical purposes, the same orange.

None of that is judgeable by eye, so it is now checked automatically on every build: every text colour has to clear its contrast ratio, no two colours that mean different things may sit within fifteen degrees of each other, and every symbol in the interface has to be renderable by the font that ships with the game. That last check exists because several icons had been quietly borrowing fonts from whatever computer happened to be running the game — fine on a laptop, not fine in a browser.

Alongside that: an objective panel that stays on screen while you play instead of vanishing the moment you press Start, a results screen that groups the money instead of listing it, keyboard control, and an accessibility page with reduced motion, larger text, and a machine-colour palette separated by brightness rather than by red and green.

Play it

FactorySim runs in a browser. There is nothing to install and no account to make. The eleven exercises are all there, and a week takes a few minutes.

Start with The Bottleneck. Staff two of the three machines, run the week, and look at which one was waiting.

You will get it wrong the first time. That is the point.