1. An article comprising a non-transitory tangible machine-readable medium that stores a program, the program being executable by a server machine to perform a method to provide situation-awareness to a user of a mobile device, the method comprising: receiving first information identifying a first time, and a starting location; receiving second information identifying a second time, and an ending location; receiving third information indicative of a recommended vehicle route from the starting location to the ending location, the third information also including data associated with traffic conditions along the recommended vehicle route; and based on the first, second and third information, generating fourth information for delivery to a mobile device to indicate a latest departure time from the starting location to ensure that the user of the mobile device can arrive at the ending location at the second time via the recommended vehicle route; the latest departure time being a time in the future; the fourth information adapted to generate a countdown timer widget for display on the mobile device in association with a route map; the countdown timer widget including, when displayed on the mobile device, a first display portion, and a second display portion, the first display portion representing a cushion indicating a time period between the first time and the latest departure time, and the second display portion representing a travel time over the recommended vehicle route given the traffic conditions, the first and second display portions being juxtaposed with respect to each other to form a visual timer; the first display portion reducing in size as the current time approaches the latest departure time to provide a visual indication that the cushion is expiring; based on progress toward the ending location, generating fifth and sixth information for delivery to the mobile device, the fifth information adapted to generate display of an indication that the user will not arrive at the ending location prior to the second time, and the sixth information adapted to generate a notification menu; upon receipt of data entered into the notification menu, generating a notification.