Great effort! Regarding the logic to find locations: I think the really scalable approach here is to list all but SORT them based on which locations has been checked in the most. I think this follows the Swarm logic more closely. If people want to check in at a park bench near Notre Dame, the park bench should show first, not Notre Dame. This is a database you would have to run, but I think this is a quite useful database to license publicly: it indicate what people are interested in, world-wide. To work, people checking in should permit eg CC0 usage of their location data for this purpose. Cheers, Simon