Riccardo Klinger, a geospatial developer and author of the Digital Geography blog, was stumped. As part of a project for a client, he was developing a travel application, but the location where this travel application was based presented some unique problems. In this location, there were odd street naming conventions, with some streets lacking names entirely. To make things worse, neighboring streets in this area had shops named in two or more different languages, adding to the difficulty in standardizing the address names and Points of Interest (POIs).
As a first attempt at a solution, Riccardo had developed a process that involved searching for places in OpenStreetMap (OSM). His solution involved building a program that searched for a place in OSM, and then matched those places to addresses contained in a different dataset. This dataset was stored in a local database, which then created another set of challenges for the end user: namely, the space required to host the data, and the amount of machine power required to perform advanced geospatial processes on the data.
This process cost Riccardo time, added uncertainty, and, perhaps most importantly, degraded the user experience. When a user clicked on a hotel, for example, it was possible they wouldn't see all of the relevant information for that hotel, because of the location's unique challenges posed to address matching.
This uncertainty in names and numbers made Placekey, the free universal location identifier for places, a perfect solution. As a free, universal identifier for any physical place, Placekey allows for operations like address and POI matching, normalization, and deduplication. As a universal location ID, Placekey lets users easily match points for shops, apartments, and more, all on the basis of its common identifier. In Riccardo's case, he was able to easily append Placekeys by selecting locations from OSM, sending those addresses to the free Placekey API service, and getting Placekeys for those address in return. After implementing Placekey, Riccardo was able to resolve the issues with his product with ease.
Having witnessed the power of the Placekey API, Riccardo turned towards plugin development, in an effort to expand Placekey's reach to more users who could benefit from its ease-of use. With more than a decade of experience working with geospatial data, Riccardo was well-positioned to build compelling tools for geospatial users across a number of platforms. Riccardo, who, in addition to being the author of Digital Geography blog, has a background in mathematics and geography, was able to leverage his experience to build two Placekey plugins for GIS users in two environments familiar to all GIS users: The ubiquitous ArcGIS platform developed by ESRI, and QGIS, its open-source alternative.
"I wanted to remove the barrier to start building with Placekey by providing options for non-technical users."
Placekey plugins, like the ones Riccardo built, allow traditional GIS users to interact with Placekey in native GIS environments, like the aforementioned QGIS. This open-source GIS program includes an impressive built-in plugin manager, so QGIS users never have to leave the interface in order to interact with third-party applications like Placekey. “You need to be able to download tools and a typical GIS user will never download a repo from GitHub," Riccardo said. The plugin library within QGIS includes more than 145 third-party applications currently."
The development of plugins will be helpful in getting Placekey to market, according to Riccardo "I wanted to remove the barrier to start building with Placekey by providing options for non-technical users," Klinger said. "That way if you are a parcel manager or an IT engineer, you have a way to interact with the Placekey ecosystem.”
Allowing GIS users to stay within QGIS, for example, when performing work eliminates the need to download and maintain a bespoke application outside of QGIS. This built-in nature makes the use of Placekey simple and straightforward for GIS users. That simplicity permeates the QGIS plugin, allowing users and machines to focus resources elsewhere. “Placekey can run automatically in the background without any intervention," said Riccardo, "so it is a more passive job.”
It might be a surprise to some how quickly a plugin can be developed for an application like QGIS. Klinger said it took only 3 days to go from scope to launch for the initial plugin. He used previous experience working with API requests to develop the Placekey plugin solution for QGIS, and said the process was relatively simple. The time to market and the quality of the plugin, as well as user response so far, are very good according to Riccardo.
One challenge with developing a plugin solution is getting the tools to users in the United States. ESRI's suite of geospatial software like ArcGIS Desktop and ArcGIS Pro dominate the market in the US, and unlike QGIS these programs do not include a native plugin manager. So for most ArcGIS users, the only option to incorporate third-party applications is to download and maintain an external solution from a GitHub repository, for example.
Despite this challenge, Riccardo was able to develop a second plugin for proprietary users using ArcGIS Toolbox. Both of these Placekey plugin solutions enable GIS users across the world to implement the "what" of an address.
Below, Riccardo demonstrates a use case example of the Placekey Toolbox on ArcGIS Pro.
"Now, everyone can implement Placekey into their software."
In addition to bridging the language gaps and freeing up machine space and power, Riccardo anticipates that the Placekey plugin will help users tackle deduplication efforts at scale. In the case of bad data (data that cannot be joined because of some issue with the address), the Placekey API returns an invalid address. So, in cases where the data is not joined, it means the Placekey either does not exist for the given location or that the data itself is inaccurate. Knowing this helps developers understand which data points may have invalid addresses quickly, allowing users to address the data issues or remove the 10-to-15 percent of addresses that are invalid.
Looking to the future of address matching, Riccardo is optimistic about the widespread use of its standard identifier, saying, "when we move forward with what we are doing now, it is outstanding that you don’t have the Placekey software. Now, everyone can implement Placekey into their software."