Under the Guidance of Apollo

By Christine Schoellhorn | November 04, 2014

Large Photo

Readers here will be intimately familiar with the Elections Data Management tool, otherwise called Apollo, a name that I have realized will come to stay, despite the better messaging strategy pursued by the ICT team. Apollo will keep this name because of its almost mythical appearance in the midst of elections.  The Greek god Apollo was known as the god of light and truth, of prophecy, and healing. Much like the actual Apollo, the elections Apollo is made manifest from the ether to give meaning and direction to an otherwise amorphous and senseless deluge of information during a PVT. Information that is critical to the validation of an election, information with the ability, to stretch a metaphor, to heal, move, and transform societies. Apollo is pulled from the abyss of Github, thrown up on an Amazon server, deployed in the course of an hour, and reconstructed and refit for the needs of a unique observation mission within several days by the near herculean efforts of  NDI’s beloved Python developer, Tim Akinbo of TimbaObjects. However, the product life cycle of this tool may well need heavenly intervention to continue its current course of development.

NDItech has recently switched software development strategies to an iterative, structured approach of an adapted agile methodology. The strategy basically operates on the principle of three week intense sprints where developers and product staff pursue cycles of development which are studied and adapted after each cycle (more to come on this topic).  

Apollo is developed by an external contractor, not part of an internal scrum team at NDI. However, the tools development is nevertheless accomplished through intense sprints, the catalyst of which is international elections. These events provide the impetus, funding, and support for feature development, but the incredibly tight timelines and pressure to deliver squeeze the development cycle, forcing cut corners in testing, negating retrospectives, and bringing about narrow input on user experience. By all reasonable standards, this thing should break, it should be cumbersome, and it shouldn’t be widely replicable. Yet, its by far the most sophisticated and sought after tool the ICT team has the pleasure of working on.

As a product manager, this system  of development irks me. I want to provide structure to this tool’s life, I want to run UX testing on observer missions, I want to have full development cycles from inception to deployment, and sufficient time to write and run automated tests for new features. Yet, I cannot deny that the system works.

It’s important to note that Apollo is only one of several software solutions pursued by NDI to manage PVT data and that its development has been a colossal effort undertaken in partnership by the Elections team, the NDItech team, and regional teams who support election observations.  Most recently, Ian Woodward with NDI’s Tunisia team led the latest round of development, as Apollo was deployed for a PVT of the Tunisian parliamentary elections.

It would be impossible to credit all the stakeholders who have had a direct hand on Apollo’s development. However, the ongoing applicability of the tool continues because of the barefisted knuckling of a few die hard visionaries:  Tim Akinbo for his brilliance in development; Joy, Apollo’s UX designer, for her excellent design aesthetic; Richard Klein, Senior Elections Advisor for his incredible savvy on the tool’s utility; and of course Chris Doten, ICT leader, for his steady insights and genuine passion in pursuit of making Apollo stable, functional, and lets face it, cool.

Apollo has been restructured in the last year; it’s now deployed through Docker, which makes it a simple task to dissect each instance, database from codebase, resurrect it with minimal effort, and update it without worrying about the integrity of system’s data.  This means that Apollo can be used more often, and more cheaply than ever before – and this will present a true challenge to the funding and development cycles it’s seen in the past. Whether or not this ad hoc team can continue their odyssey may well depend upon a transition in the status quo, a professionalization of software development, and a realization that no single user owns a product. That at some point, something brilliant outgrows those who nurtured its nascent growth, and that much like Zeus allowed Apollo to be born away from the gods on the mythical island of Delos, our Apollo may well leave the nurturing arms of the few who hold it tightly, and proceed into a formalized union of planned development. Apollo has never seen a roadmap, and in reading the stars, this is the year that may change.