1. A method of generating a playlist for content items on a portable electronic device, comprising: at a first time, when a user operates the portable electronic device to interact with content: monitoring user interaction with one or more content items as user-content interactions; determining a context associated with each of the user-content interactions, wherein the context further comprises a time of a corresponding user-content interaction and a location of the corresponding user-content interaction; storing the monitored user-content interactions and the context associated with the monitored user-content interactions; at a second time, later than the first time: determining a first current context associated with the user-content interactions, wherein the first current context further comprises a time of the user-content interaction and a location of the user-content interaction; determining correlations of the time of the user-content interactions, the location of the user-content interactions, and the content items; providing a multi-dimensional matrix to capture the correlations of the time of the user-content interactions, the location of the user-content interactions, and the content items: predicting a numeric score for each cell of the multi-dimensional matrix; applying an inverse aging function to the numeric scores; and automatically generating a first recommended playlist including content items, wherein the first recommended playlist is based on the first current context by locating first stored user-content interactions having corresponding stored contexts that are most similar to the first current context, and using the located first stored user-content interactions to compile the first recommended playlist; at a third time, later than the second time: determining a second current context based on current time and user location; and automatically generating a second recommended playlist including content items, wherein the second recommended playlist is based on the second current context by locating second stored user-content interactions having corresponding stored contexts that are most similar to the second current context, and using the located second stored user-content interactions to compile the second recommended playlist, wherein the second recommended playlist differs from the first recommended playlist due to the second current context being different than the second current context.