A method comprising: analyzing, by a system readiness service, multiple system readiness tasks to be performed to put a system of the computing device in a desired operational state, said desired operational state comprising one or more programs identified by a remote service that a user logs into with his or her user account, said analyzing including identifying programs from said one or more programs that are not installed on the computing device, and said multiple system readiness tasks comprising downloading and installing the respective identified programs; including, by a task coordination module, said system readiness tasks in an action list in an order based on weights derived from static data and dynamic data, said static data including sizes of respective programs that are to be downloaded, and said dynamic data including a speed of a network for downloading said programs; and downloading and installing programs in the order provided by the action list; wherein system readiness tasks to download programs that are greater than a threshold size are assigned lower weights if the network has a download speed less than a threshold speed; and wherein a location in the action list is defined, and wherein, once this location is reached by the system readiness service, a preview of a user interface of the system is displayed and the system is operational to receive and respond to user input; said location corresponding to a location where system readiness tasks for obtaining previews of the programs have been obtained and at least some of the programs are in a desired operational state. analyzing, by a system readiness service, multiple system readiness tasks to be performed to put a system of the computing device in a desired operational state, said desired operational state comprising one or more programs identified by a remote service that a user logs into with his or her user account, said analyzing including identifying programs from said one or more programs that are not installed on the computing device, and said multiple system readiness tasks comprising downloading and installing the respective identified programs; including, by a task coordination module, said system readiness tasks in an action list in an order based on weights derived from static data and dynamic data, said static data including sizes of respective programs that are to be downloaded, and said dynamic data including a speed of a network for downloading said programs; and downloading and installing programs in the order provided by the action list; wherein system readiness tasks to download programs that are greater than a threshold size are assigned lower weights if the network has a download speed less than a threshold speed; and wherein a location in the action list is defined, and wherein, once this location is reached by the system readiness service, a preview of a user interface of the system is displayed and the system is operational to receive and respond to user input; said location corresponding to a location where system readiness tasks for obtaining previews of the programs have been obtained and at least some of the programs are in a desired operational state.