Candidate Map is a prototype, open-source web app that helps voters find a suitable electoral candidate. It served as the first step towards creating a fully-fledged open-source framework for Voting Advice Applications in a three-year project, dubbed OpenVAA. In late 2022, the project received funding from the Finnish innovation fund Sitra and was started in Jan 2023.
Ehdoskartta will not be developed further, but the lessons learned from creating it serve as a great starting point for the OpenVAA project, which builds an open-source framework for Voting Advice Applications. The project has started in 2023 and ends in 2025. For more information, see openvaa.org.
A version (in Finnish) of Ehdokaskartta that uses data gathered by Yle, the Finnish broadcasting company, for the Finnish 2021 municipal elections data can be found at ehdokaskartta.fi. The source code is available on Github.
For a quick introduction into the project, please see my 5-min talk at the Visualising Knowledge 2021 conference.
Since Yle’s pioneering 1996 Election Compass, VAAs or Voting Advice Applications have come to play an important role in elections, especially in polities with a fragmented party system. Their main purpose is most often to try and match the voter with suitable candidates or parties based on an opinion questionnaire, which both the candidates and the voter fill.
As befits their increasing uptake, a substantial body of research has also been published regarding VAAs. The literature sheds light on a number of tricky and interesting issues concerning VAAs. These learnings coupled with Yle’s own hope for a less text-based interface served as the basis for the project.
Naturally, only a subset of the identified issues could be addressed and it scarcely is feasible to construct one VAA that could deal with all of those. Rather, and appositely for the domain of democracy, a plurality of VAAs with different approaches probably is the right answer. The purpose of the prototype was, thus, to test novel solutions to some of the concerns, especially:
Presenting the candidates on a 2-dimensional map instead of a list
Making inputting answers less rigid and less tedious for the voter
Allowing further filtering of the candidates
Incorporating party averages into the results
Assuming a mobile-first approach
Facilitating studying the political landscape in general
The app used Google’s Angular library and Material Design components. The source code is available on Github, where the motivations for pursuing an open-source approach are presented in more detail. The OpenVAA project, however, started from scratch using the learnings from Ehdokaskartta but not its source code directly.
You can try Ehdokaskartta out (in Finnish) at ehdokaskartta.fi. An in-depth discussion (only in Finnish as of now) about the solutions offered and their shortcoming can be found at ehdokaskartta.fi/about.
A brief introduction into the Candidate Map project from the Visualising Knowledge 2021 Conference.The branding of the app is purposely neutral, an end to which the use of Material Design components contributes nicely.The first thing the voter needs to do is to enter their home municipality in order to find out which constituency they belong to. This is very straightforward, and the only challenge was in making the auto-complete picker work with as few taps as possible.The voter is next presented a list of topics, and here we find the first major difference from traditional VAAs. Before the voter can see the VAAs recommendations they are typically expected to answer 20–30 opinion questions. There may be an option to skip individual questions but, in principle, they are expected to slog through the whole list in a predefined order. On Candidate Map, voters choose themselves which questions to answer.To encourage deliberation when answering questions, the voter is presented with the distribution of their constituency’s candidates’ opinions. This is in contrast to the more typical conception of VAAs as tools for purely mapping a voter’s allegedly pre-formed opinions onto a set of matching candidates.Even though the voter can choose the order, a star icon marks the next recommended question. This is calculated from the statistical correlations between questions so that the recommended one yields the maximum amount of information about the opinion landscape. For example, if the voter has already answered one question about the environment, it will be more informative to choose a question about an unrelated topic next.In most traditional VAAs, the results are presented as an ordered list based on overall agreement measured in percentages. As the name Candidate Map hints, here the results are mapped onto a pseudo-two-dimensional plot: The distance of a candidate from the voter represents the traditional VAA matching score, i.e. the percentage of shared opinions. The angular direction, on the other hand, matches the candidate's position in the political space. This is computed as the first PCA component and it aligns closely with a left–right divide. The voter is positioned in the middle of the map, which can be panned and zoomed in the same way as any map application.When zoomed in and tapping on a nearby candidate, the voter is shown a card with a summary of the candidate’s details. The card can be expanded much in the same way as in map applications. We can also see the candidate’s party on the map, that is, the centrepoint of all its candidates.Examining another candidate much further away from the voter, the summary shows the topics on which she significantly disagrees with the voter. When they are tapped, the card expands and the relevant question is displayed.For each question, the voter’s and the candidate’s positions are shown as well as the candidate’s party’s average. In the Finnish proportional representation voting system, votes are tallied first for each party and only after that between the candidates, so whether a candidate agrees or disagrees with their party’s platform is significant.The question summaries list all the topics grouped by whether the candidate disagrees or agrees on them with the voter. There’s also a third group which contains the questions the voter has yet to answer if they skipped some of the topics in the input phase.The other tabs on the candidate card contain background information and stated policy objectives.The candidates can also be filtered with a range of criteria, such as age, gender or political experience. Any of the questions the voter has answered can also be set as sine qua nons to consider only candidates who agree on them.Party affiliation can naturally be used as a filtering criterion, too. It can either be set on the filters menu or by clicking on the party flag as here, where one can choose to either filter out this party or all the other parties.When all other parties except the Social-Democratic Party are filterd out, the results look like this.There’s also an option to view all parties on the map at the same time, which offers a nice overview of the political landscape.A traditional list view is also provided.