1. A system for pre-fetching content on a mobile computing device associated with a user, said system comprising: a memory area for storing user data; and a processor programmed to: monitor interaction between the user and the mobile computing device; store the monitored interaction in the memory area as a portion of the user data; calculate a social distance value for each content provider based at least on the user data stored in the memory area, said social distance value representing a relationship between the content provider and the user, the social distance value being calculated using a fitness function that combines values of variables according to weights of the variables; and selectively retrieve one or more of the content items on the list based on the calculated social distance value, wherein the processor is programmed to retrieve said one or more of the content items prior to receiving a request from the user for said one or more of the content items, the retrieved content items comprising content items from a first-ranked content provider and a fraction of the content items from a lower-ranked content provider, the fraction being determined by a ratio of the social distance value of the lower-ranked content provider to the social distance value of the first-ranked content provider.