1. One or more computer-readable media storing a computer program that, when executed by one or more processors on a mobile computer, causes the one or more processors to: display a subset of a plurality of steps in an order to be performed by a user; alter an appearance of a current step in the subset of steps that needs to be performed by the user to distinguish the current step from other steps in the subset; receive information about a current context of the user from a context awareness component that receives sensed information from multiple sources and that mediates amongst the multiple sources to build a model of the current context of the user, in response to the received information about the current context of the user, alter one or more of the subset of steps that need to be by the user by altering multiple interaction elements that affect interactions with the user for the current step, the interaction elements including: instructions associated with handling the current step; presentation of instructions associated with handling the current step; available choices which are used to handle the current step; methods that a user may use to handle the current step; and means by which the user provides input to compete the current step; allow the user to input data corresponding to the current step; when input data is not received from the user for the current step and information received from the context awareness component indicates that the user is currently distracted, further altering one or more the interaction elements for the current step in such a manner as to be less cognitively burdensome for the user; scroll, in response to user input of data corresponding to the current step, the plurality of steps so that a new subset of the plurality of steps is presented to the user; and amend the step for which the data input was received from the user with indications of that data input.