1. A method of associating names with locations using a device comprising a processor and having access to a location database, the method comprising: executing on the processor instructions configured to: upon receiving from the user a name of a location, store in the location database the location, the name, and a privacy designation selected from a set of privacy designations comprising a public designation and a private designation; and upon detecting a current location of the user: select from the location database at least one name of the current location having one of: a public designation, and a private designation that permits access by the user; and present to the user the at least one name of the current location selected from the location database.