A computer-implemented method comprising: obtaining gesture definition data for more than one gesture, wherein the gesture definition data specifies, for each gesture of the more than one gesture, a predefined onset position associated with commencement of the gesture, a predefined motion associated with completion of the gesture, an action that is triggered upon the completion of the gesture, and a visual indicator (102, 104, 106, 108, 110, 112) for visually indicating a progress toward the completion of the gesture as the predefined motion is performed, wherein the visual indicator includes a representation (103, 105, 107, 109, 111, 113, 132, 142, 152) of one or more physical objects whose motion, in free space, is associated with the same predefined motion; determining a state of a mobile computing device; in response to determining a particular action that may be performed by the mobile computing device in the determined state, identifying a particular gesture of the more than one gesture which is associated with the particular action; before an orientation of the mobile computing device is determined to match the onset position of the particular gesture, providing, on a graphical user interface of the mobile computing device, the visual indicator of the particular gesture in a static inactive state that indicates that the orientation of the mobile computing device does not match the onset position of the particular gesture; after providing the visual indicator of the particular gesture in the static inactive state, determining that the orientation of the mobile computing device matches the onset position of the particular gesture; in response to determining that the orientation of the mobile computing device matches the predefined onset position of the particular gesture, providing, on the graphical user interface of the mobile computing device, the visual indicator of the particular gesture in an active state that indicates that the orientation of the mobile computing device matches the predefined onset position of the particular gesture; determining a motion of the mobile computing device; determining whether the motion of the mobile computing device matches the predefined motion of the particular gesture; and in response to determining whether the motion of the mobile computing device matches the predefined motion of the particular gesture, determining whether to update the visual indicator of the particular gesture to indicate the progress toward completion of the particular gesture. obtaining gesture definition data for more than one gesture, wherein the gesture definition data specifies, for each gesture of the more than one gesture, a predefined onset position associated with commencement of the gesture, a predefined motion associated with completion of the gesture, an action that is triggered upon the completion of the gesture, and a visual indicator (102, 104, 106, 108, 110, 112) for visually indicating a progress toward the completion of the gesture as the predefined motion is performed, wherein the visual indicator includes a representation (103, 105, 107, 109, 111, 113, 132, 142, 152) of one or more physical objects whose motion, in free space, is associated with the same predefined motion; determining a state of a mobile computing device; in response to determining a particular action that may be performed by the mobile computing device in the determined state, identifying a particular gesture of the more than one gesture which is associated with the particular action; before an orientation of the mobile computing device is determined to match the onset position of the particular gesture, providing, on a graphical user interface of the mobile computing device, the visual indicator of the particular gesture in a static inactive state that indicates that the orientation of the mobile computing device does not match the onset position of the particular gesture; after providing the visual indicator of the particular gesture in the static inactive state, determining that the orientation of the mobile computing device matches the onset position of the particular gesture; in response to determining that the orientation of the mobile computing device matches the predefined onset position of the particular gesture, providing, on the graphical user interface of the mobile computing device, the visual indicator of the particular gesture in an active state that indicates that the orientation of the mobile computing device matches the predefined onset position of the particular gesture; determining a motion of the mobile computing device; determining whether the motion of the mobile computing device matches the predefined motion of the particular gesture; and in response to determining whether the motion of the mobile computing device matches the predefined motion of the particular gesture, determining whether to update the visual indicator of the particular gesture to indicate the progress toward completion of the particular gesture.