Summary:  The wash cycle control knob on (older) washing machines offers a rich form of compliant interaction, where both the washing machine itself and the user can move the knob to advance the program.  This often led to expert behaviours, sadly impossible in most purely digital control panels.

A washing machine typically has several controls relating to the temperature, kind of wash cycle, type of clothes being washed, etc.  We will look at the knob that you use to set the program on older washing machines.

In older mechanical machines this was very directly connected to what was being washed.  You set the knob to an initial point and as the washing progressed, the knob ‘ticked’ round.

The physigram below has fewer states than a real washing machine, but gives an indication of the process. Note that for this diagram the user-initiated transitions have been coloured blue, and the system transitions coloured red and dashed to make them more easily distinguished.


For a full wash the user moves the dial to the ‘wash’ position and then turns the machine on (a separate button).  Once the initial part of the wash cycle is completed the machine moves the dial to the rinse point. This is denoted by the system transition from ‘wash’ to ‘rinse’.  Similarly, when the rinse is finished the machine makes the system transition to ‘spin’ and, when that is done, finally back to ‘stop’.

However, if the user simply wants to spin damp clothes (perhaps hand washed), they start off by turning the dial to ‘spin’ and then turn on the machine, which just does the spin and when it is done moves to ‘stop’.

Note how the user-initiated actions and the system transitions effectively do the same thing: if the dial is in the ‘rinse’ setting it starts to rinse the clothes whether that is because the user set it there or because the washing machine moved it there when the wash part of the cycle was complete. This is compliant interaction.

Because of the similarity between user- and system-initiated actions, expert washing machine users, who would often not see themselves as technically sophisticated, were able to manage the cycles in quite complex ways. For example, if a batch of clothes were needed urgently while mid-wash, the user might manually progress the dial to shorten phases of the wash.