Executable software sent from an application service provider to a client
computer can be arranged as a bundle of executable code blocks that are used during
initialization of a group of applications (at least one initialization block from
each application being included in the bundle). The bundle can include code for
applications that are subscribed to by a user as well as for applications not subscribed
to. As the subscribed applications are executed, usage data sent to a server may
be monitored to determine unsubscribed applications that may be of interest to
the user. Subscription offers may be automatically generated and sent to the user
in response to processing of the usage data. Transmission efficiency of the code
blocks may be improved by exchanging identification codes between the server and
client to determine code blocks already present at the client.