Using hack days to explore maps at scale: two examples

||Written by Daniel van StrienSeptember 18, 2020Comments: 0

This is part two of a two-part blog post. You can find part one in this previous post. This blog post is accompanied by a set of map hack day example notebooks on GitHub. In this blog post, I explore two examples of hack days and discuss some of the benefits and challenges to this way of working.

Maps hack day 1: building familiarity with Python for working with digital images

A screenshot from one of the notebooks from hack day 1 showing the output of an edge detection algorithm on a map image.
A screenshot from one of the notebooks from hack day 1 showing the output of an edge detection algorithm on a map image.

The first hack day focused on building a familiarity with the fundamentals of working with digital images, in particular using Python. In preparation for this hack day, a series of Jupyter notebooks were created. These notebooks covered both practical components of working with images as well as introducing some algorithms like ‘canny edge detection’. 

The morning part of this hack day was primarily spent working through these notebooks in small groups, whilst the second part was focused on exploring broader conceptual questions and beginning to experiment with how these techniques might be applied.

Maps hack day 2: exploring entity detection methods for working with maps

The second maps hack day had the broad aim of exploring how ‘entity detection’ methods could be applied to the digitised maps we are working with. Entity or object detection refers to a range of computer vision methods which aim to find particular objects in images. In particular, the objective of this session was to explore how deep learning-based computer vision methods could be used with maps. Since there were mixed levels of existing knowledge about working with computer vision or deep learning within the team, one of the aims of this hack day was to build on the knowledge gained during hack day one with further knowledge about how entity detection could be used in a way that sensitive to the types of research questions being explored by the Living with Machines project. 

As Digital Curator, I prepared a series of notebooks for use during this hack day. The notebooks summarised some basic concepts in deep learning as well as outlining an initial method for doing entity detection for digitised historical maps. In particular, this method focused on ‘tiling’ maps into smaller segments and classifying each of these segments. The aim of this method was to make the process of annotating the maps faster and to allow quick experimentation with different labels. By annotating here we mean assigning labels to images so that a computer vision model can be trained to detect these labels on new images. The code in this notebook used version 1 of the fastai library, which was chosen as it aims to make deep learning methods accessible, particularly for domain-specific applications. 

A screenshot of a cell from a Jupyter notebook showing an animation of labelling map tiles with 'building' or 'no building'
A screenshot from one of the notebooks showing the process of annotating map tile segments

Outcomes, benefits and challenges

The first two map hack days were followed by two subsequent hack days focused on different questions related to maps. As a result of this series of map hacks, a number of new strands of research were defined and which continue to be iterated on.

A major benefit of the hack day approach is that it can foster a deeper and richer interdisciplinary discussion because people are actively working and discussing together. This to some extent also helps prevent the development of disciplinary or technical silos by trying to develop ideas together.

One of the main challenges with this particular set of hack days was the preparation work involved. This included extensive work to develop the notebooks and methods before the hack days so that they could be used effectively to support the project team during the hack days themselves This necessitated thorough testing to make sure the notebooks ran without difficulty, that the methods (sort of) worked and that data was correctly prepared before the workshop. It is important to keep in mind the (potential) prep time involved before a hack day and to not assume the only time required is the time for the hack day itself. 

More hack days?

Currently, it is not easy to replicate the exact structure of previous hack days. Though there is some scope for remotely replicating components of the hack day via video calls a lot of the features of hack days can be difficult to reproduce. Smaller groups working together, drawing on whiteboards and spontaneous discussions during lunch and coffee breaks, whilst possible to reproduce digitally to some extent, can never be fully replicated in the digital space. We’ll keep experimenting with adapting hack days to a digital realm and will report any successes. 

Our Partners

Our Funders