1. A computer-implemented method, comprising: receiving a user selected current television channel using a first tuner; predicting, with a processing device, a future television channel selection of the user based on a modeling of the user; caching recorded content of the predicted future television channel preemptively using a second tuner; displaying a buffer of the recorded content of the predicted future television channel when the user switches from the current television channel to the predicted future television channel; and storing an updated modeling of the user in storage, wherein a button on a remote control is used to specify the user currently using the remote control, and wherein the modeling of the user includes an evaluation of a collaborative rating among related users in a social network and is determined by an indication of approval or disapproval for programming related to sets of channels by users of the social network.