OpenDreamKit – Open-source development and community building in computational mathematics
OpenDreamKit is a 7.6M€ European Horizon 2020 Research Infrastructure project coordinated by the Laboratoire de Recherche en Informatique (Université Paris-Saclay / CNRS). From 2015 to 2019, it funded a diverse team of fifty Open Science enthusiasts all over Europe led by Nicolas Thiéry -- including a dozen of full time Research Software Engineers —to support and promote community developed open-source software for computational mathematics and interactive computing, as a toolkit fromwhich to build Virtual Research Environments.
Mechanising calculations has always been at the heart of mathematics, for exploring and discovering new mathematics, even proving theorems. Beyond mathematics, computing has been and will ever more be a major driver of scientific progress. Thus, ever since the advent of the first machines, computing has been adopted as a tool of choice by mathematicians. It has become their microscope, and is used at all stages of their research.
In the last decades, vibrant communities of mathematicians have spearheaded the Open Science movement, developing a wide ecosystem of open tools covering all aspects of mechanized mathematics. The ecosystem suffered however from fragmentation and from lack of recognition: funding and career paths reward novel results rather than the daily work of fixing bugs and supporting users.
Meanwhile, early Virtual Research Environments (VRE) had proven their potential to better serve the growing needs of mathematicians, reduce entry barriers, broaden the audience, and promote collaboration and Open Science. Hence, when the EU H2020 Research E-Infrastructure Program made a call for proposals centered on Virtual Research Environments, a few pioneers initiated an open process to bring these communities together and collectively craft an ambitious 7.6M€ research and innovation project, OpenDreamKit avec l’hyperlien https://opendreamkit.org/, (#676541) avec lien hypertexte https://cordis.europa.eu/project/rcn/198334/en). Coordinated by scientists from the Laboratoire de Recherche en Informatique (Université Paris-Saclay / CNRS), OpenDreamKit involved 50 people spread over seven European countries: France, Belgium, Norway, Germany, Poland, Switzerland, United Kingdom; from 2015 to 2019, it employed an average of 11 full-time researchers and Research Software Engineers.
The existing ecosystem offered the potential to cover a large area of pure mathematics, and a variety of use cases ranging from a one-system one-laptop to multi-system institution-wide cloud deployments. This could not, however, be covered by a single one-size-fits-all VRE. Therefore, the objective was set instead to deliver a flexible toolkit enabling research groups to set up Virtual Research Environments, customised to meet the varied needs of collaborative research projects in pure mathematics and applications, and supporting the full research life-cycle from exploration, through proof and publication, to archival and sharing of data and code.
To achieve this ambitious objective, OpenDreamKit built upon and contributed back to popular tools such as LinBox, MPIR, SageMath, GAP, PARI/GP, LMFDB, Singular, and MathHub, fostering ease of access and use, interoperability, and sustainability. It further joined forces with the general-purpose interactive computing environment Jupyter; in addition to outsourcing the user interface and VRE specific aspects, this maximised the impact on the scientific community at large.
OpenDreamKit gave new evidence of what can be achieved with proper support, especially through the work of Research Software Engineers. Thanks to them, some problems were solved which had been holding back the community for years, like bringing to fruition the effort to make the GAP software multi-threaded or porting the SageMath software and its dependencies to Windows.
Eventually OpenDreamKit was highly praised by its reviewers from the EU commission; hopefully this recognition can be used as leverage for future funding.
Indeed, the major challenge to come is to secure employment of a number of Research Software Engineers, as much as possible in long term positions, to support hundreds of contributors and tens if not hundreds of thousands of users of open-source mathematical software.
It is crucial as well to keep funding Jupyter core development: with millions of users, in academia and industry, Jupyter has become a key technology to support Open Science.
One key of the success of OpenDreamKit was its ability to develop and sustain an active network of users and developers. Within the four years of the project, the group has built on their strong community building philosophy, especially through the organization of technical and educational workshops all over the world while actively promoting diversity. They organized over 80 workshops in about 20 different countries, including in developing countries, as with the first SageMath workshop in Nigeria. Some of these events were targeted more specifically at women, like the Women in Sage events in 2017 and 2019, to counter the wide gender gap in this field.
More generally, OpenDreamKit has been an occasion to promote a scientific development model based on openness, community, and shared technology. Beyond the traditional tentpoles of Open Science; namely Open Source, Open Data, and Open Publications; we have explored a novel concept, namely Open EU Project Management, and demonstrated its effectiveness. Indeed, we strongly believe that preparing the proposal and running the project completely in the open with a bottom up approach has played a fundamental role in engaging the communities, developing reciprocal trust, locating the toughest hurdles that users and developers actually face, co-designing solutions and co-implementing them efficiently.
We strongly recommend the experience; long live OpenDreamKit’s spirit!