Smartphones and similar devices allow access to a wealth of information. Navigating this wealth of information is problematic. Semantic locations, assigned to observed GPS user movements, can help in providing inforamtion that is useful to the user at a specific time or place. This paper shows how a stream of sensor data can be processed and interpreted to determine (i) the locations of interest for a user, such as home, work, etc, and (ii) to predict the expected future transitions between such locations. We have implemented our algorithms in a fully functional prototype smartphone app and backend, and we present results based on actual usage data gathered over the past few months. We conclude that inferred semantic location information allows a smart device to offer personalized, contextual, information without the need for the user to perform any explicit query. Our system is open source, and can be used to build context-aware recommender systems that suggest content which is at the right time and at the right place.