I was recently introduced to a very useful contributed module, the Location Taxonomize [https://www.drupal.org/project/location_taxonomize] module by Guy Oren [https://www.drupal.org/u/goron].
The module is used to allow users to create a hierarchical location vocabulary such as Country, State, and City. The module is compatible with both the Location [https://www.drupal.org/project/location] and Addressfield [https://www.drupal.org/project/addressfield] modules allowing site builders flexible options when providing a method for collecting data. The location vocabularies are updated each time new content is added. This allows a site builder to build a list of States or Provinces for example and have users add their city as they register.
I first came upon the module on a project I was working on where a prior developer had used the module to create a heatmap of users for a popular education web site. Members of the site could then see other members represented on the map, as well as a list that displays the number of users in any city as shown in the screenshot. This simple but powerful module really made an impact on custom development time instead of creating this behavior from scratch.
The module page boasts many other features such as the bulk import of lists of Addresses / Locations into Taxonomy vocabularies. This opens up a wide possibility to leverage Views and other key elements of the Drupal Taxonomy system to present location based data in charts, lists and other media.
You can even attach terms to nodes automatically with those locations, for instance attach blog posts from Santa Clara to the list of blogs from California. A job board may want to display the number of jobs in any given city and display them on on a map. A Real Estate website could use the module to add markers on a map in a city as these listings are added the lists and map are automatically updated.
The uses for this simple module are numerous for enabling the collection and leveraging of location based data. All in all I found it to be a very useful module and highly recommend it for similar applications.