The most powerful tools often begin with a desire to solve simple, everyday problems. At Harvard University, faculty, students, and researchers often found that finding maps and spatial data related to their studies of Africa was extremely difficult. The issue was not that the data didn’t exist. In fact, the Harvard Map Collection has an impressive collection of historical maps of Africa. Many researchers also develop detailed Africa datasets in the course of their work, while other important spatial data is scattered across other organizations. But these maps and datasets had to be tracked down individually, assuming the researcher was even aware of them at all.
 |
| View of AfricaMap’s 1959 Ethnographic Map Layer Including Airfields |
But at Harvard University’s Center for Geographic Analysis, Professors Suzanne Blier and Peter Bol with Senior Analyst Ben Lewis saw beyond simply creating a common repository for these maps. They envisioned a solution that would bring many of these currently unconnected Africa datasets together in a single, easy-to-access web application that would promote collaboration and enable researchers to learn from other areas of study. By layering the maps on top of each other, a researcher could explore all of the data or knowledge captured in maps from various disciplines. Knowledge of an area of interest could be deepened by maps describing historical, environmental, social, linguistic, or economic data. And by creating a map of scholarly projects focused on Africa, users could discover the work of others with interest in common geographical areas, despite differences in their fields of study. The vision for the Harvard University Geospatial Infrastructure (HUG) platform was born.
Ben Lewis developed an innovative, highly scalable, spatial search and display architecture to address these ambitious goals. By utilizing open standards and protocols, the framework would interoperate in the future with other technical systems used by scholars in various disciplines. By committing to an open source toolset and codebase, the framework could be applied to other areas of the world and be shared with other organizations who could, if they wanted, use and extend the framework. With the vision in place, he approached Azavea and MetaCarta to build the application.
MetaCarta built the map tiling system, while Azavea was asked to flesh out the framework with searching capabilities and some advanced features that presented fascinating technical challenges for us. One of our goals was to enable researchers to search through millions of places (ranging from populated places to physical features) using a straightforward text search, like a Google search, and have the results highlighted on the map. That work began by building a gazetteer, which is a geographic dictionary or directory — like a yellow pages for geographic place names. The initial data source for the gazetteer was the GeoNames database, which is a free geographic database of over eight million geographical names. Users can add or edit place names online, as if it were Wikipedia for place names. GeoNames doesn’t just include populated places like cities or villages, it also includes features such as farms, streams, wells, and schools.
 |
Detail from a historic map of Africa by cartographer Jodocus Hondius,
circa 1612. “We were particularly struck by the beautiful juxtaposition
of the old and new: seeing an image of a sea creature on the edge
of a historical map, layered on top of a modern web map.” – Josh
Marcus & Reed Lauber |
After processing and filtering GeoNames into a geographical database, we added two ways to view the places on a map. We added a ‘Places’ tab where one can view places by type. Here a researcher can turn on any combination of hundreds of ‘place types’ and zoom to any area of the map, clicking on’ place features’ for information about these places. In addition we made it possible to turn on all ‘place types’ and view them along with the many other layers in the system. We also made it possible to combine place name searches with ‘place type’ queries.
But first we had to tackle a technical challenge: Africa is a huge continent and there are a lot of places to show. The gazetteer has over three hundred thousand populated places, and we needed to figure out how to efficiently display all of them on the map. We profiled two open source mapping servers, one called GeoServer and another called MapServer, for the speed of image generation, and ended up with a conundrum. We preferred GeoServer’s cartography, especially for showing overlapping areas of scholarly study. But we were able to cajole MapServer to generate a map layer of hundreds of thousands of points very quickly. In the end, while we knew it would be somewhat unorthodox to use two mapping servers in the same application, we decided to use both systems for what they were good at: GeoServer for general cartography and MapServer to show the points from the gazetteer. The technology tools were rounded out with PostGIS for storing and searching feature queries, ExtJS for user interface components, and Python to tie it all together.
Once the gazetteer and visualization were in place, we were able to leverage the power of Web Map Service (WMS), an open standard to make web requests for maps, to transform the text search into a search for the geographic points in all of the map layers. The result of a text search could include features from the gazetteer, but also other searchable layers as well, such as the layer of scholarly projects. We added functionality so that a user could search many layers at once, click on the map to “drill down” and return results about different types of features in a single interface, and a range of other tools including a “permalink” that would enable users to share a particular view of the maps and search results with other users or students. The database also includes the geographic extent of research projects that target the African continent.
Now that the first phase of the project is complete, an initial public release of AfricaMap is available online and Azavea will be working with Harvard’s Center for Geographic Analysis to expand this project to apply the same framework to the Boston Metropolitan area. Take a look at the application for yourself. We especially recommend taking a look at the historical maps. We were particularly struck by the beautiful juxtaposition of the old and new: seeing an image of a sea creature on the edge of a historical map, layered on top of a modern web map. Click here to see an early 17th century map from Jodocus Hondius, and view other historical maps in the ‘Map Layers’ tab.
Another interesting way to explore the application is to put yourself in the mindset of a researcher. Imagine you are interested in the economic development of Freetown, in Sierra Leone. The ‘About’ tab has some useful documentation regarding searches and turning off and on map layers. The very detailed basemap (Freetown 2.5k) provides a strong basis for all of your work. By comparing other basemaps (the American Sierra Leone 50k map from the 70s and the Russian 500k transportation map from the 80s) you can observe new development over time. From there, you can draw in whatever other maps that are relevant for your work — some examples would include soils, population, language areas, ethnographic regions, or turn on the projects layer and explore other scholarly projects that have focused on your area. Enjoy!