1. A method for providing targeted content, the method comprising: identifying a set of resources that are part of a personal network of a user, the set of resources including multiple devices and an online account, wherein the multiple devices include a first device of a first type and a second device of a second type; executing programmatic operations on at least the first device of the personal network, including performing: (a) collecting data that is indicative of media files that are stored with the set of resources, including with the online account; (b) monitoring use of the set of resources, including each of the multiple devices, to identify activities performed by the user, the activities performed by the user including different types of activities in which the user consumes media; wherein monitoring use of the set of resources includes communicating with at least the second device across one or more networks in order to collect data that identifies activities performed by the user on the second device; (c) determining profile information for the user based at least in part on the collected data and the identified activities; (d) storing the determined profile information on at least the first device; and (e) generating, from the profile information, selection criteria for selecting content that is to be provided to the user through one or more of the multiple devices; wherein executing the programmatic operations is performed privately, so that the profile information is not communicated outside of the personal network.