A mobile computing device configured to provide personal assistance to an associated user, the computing device comprising: a personal daemon being an executable component and configured to: operate and execute in the background of the mobile computing device; and configure and execute a personal assistance action on behalf of the associated user in response to a received notice of an event from one or more sensors of the computing device and according to personal information maintained by the personal daemon, said personal assistance action comprising notifying the associated user of the event; and a scheduling manager being an executable component on the mobile computing device that manages the execution of apps on the mobile computing device such that only executable apps determined to be most useful are executed, wherein the scheduling manager is configured to: receive notice of the event; determine a set of executable apps that are responsive to the event; determine a first subset of apps of the determined set of executable apps according to a score associated with each app of the apps of the set of executable apps, wherein the first subset of apps includes apps with an associated score that meets or exceeds a predetermined threshold, said score determined given the event and a current context of executing the respective app, said context including at least one of a time of day, day of week, a day of year, and geographic location; cause the execution of the apps of the first subset of apps on the mobile computing device; and update the associated score of each of the apps of the first subset of apps based on the current context of the user and based on criteria that include frequency of execution of said apps and context items, said context items including a current time and/or location; wherein the personal daemon is further configured to identify a context item that is not in a known list of context items, based on identifying concurrent execution of one or more apps with other events, and to add a new context item to the list of context items if concurrent execution of one or more apps with other events is detected. operate and execute in the background of the mobile computing device; and configure and execute a personal assistance action on behalf of the associated user in response to a received notice of an event from one or more sensors of the computing device and according to personal information maintained by the personal daemon, said personal assistance action comprising notifying the associated user of the event; and a scheduling manager being an executable component on the mobile computing device that manages the execution of apps on the mobile computing device such that only executable apps determined to be most useful are executed, wherein the scheduling manager is configured to: receive notice of the event; determine a set of executable apps that are responsive to the event; determine a first subset of apps of the determined set of executable apps according to a score associated with each app of the apps of the set of executable apps, wherein the first subset of apps includes apps with an associated score that meets or exceeds a predetermined threshold, said score determined given the event and a current context of executing the respective app, said context including at least one of a time of day, day of week, a day of year, and geographic location; cause the execution of the apps of the first subset of apps on the mobile computing device; and update the associated score of each of the apps of the first subset of apps based on the current context of the user and based on criteria that include frequency of execution of said apps and context items, said context items including a current time and/or location; wherein the personal daemon is further configured to identify a context item that is not in a known list of context items, based on identifying concurrent execution of one or more apps with other events, and to add a new context item to the list of context items if concurrent execution of one or more apps with other events is detected. receive notice of the event; determine a set of executable apps that are responsive to the event; determine a first subset of apps of the determined set of executable apps according to a score associated with each app of the apps of the set of executable apps, wherein the first subset of apps includes apps with an associated score that meets or exceeds a predetermined threshold, said score determined given the event and a current context of executing the respective app, said context including at least one of a time of day, day of week, a day of year, and geographic location; cause the execution of the apps of the first subset of apps on the mobile computing device; and update the associated score of each of the apps of the first subset of apps based on the current context of the user and based on criteria that include frequency of execution of said apps and context items, said context items including a current time and/or location; wherein the personal daemon is further configured to identify a context item that is not in a known list of context items, based on identifying concurrent execution of one or more apps with other events, and to add a new context item to the list of context items if concurrent execution of one or more apps with other events is detected.