Python and Open-Source Software for Developing Countries: A Catalyst for Change

Paige Martin, University of Michigan Ann Arbor, Ann Arbor, MI, United States, Christian E. Buckingham, Université de Bretagne Occidentale, Département de Physique, Brest, France and SAND-Brian K Arbic, University of Michigan, Earth and Environmental Sciences, Ann Arbor, MI, United States
One barrier to conducting science in developing nations is the lack of essential computing resources. Poor network connections and power outages are common culprits that limit progress. Moreover, except in unique circumstances, budgetary constraints make using commercial software almost entirely out of the reach of students, scientists, and faculty, alike. For these reasons, despite that they are resourceful, budding scientists, they often fail to keep up with the pace of developed countries in terms of computing experience and skills. Here, we present an argument for teaching with free, open-source software when mentoring junior scientists, especially in developing countries. We do so by drawing upon observations from the Coastal Ocean and Environment Summer School in Ghana, Africa ( During 2017-2019, the school transitioned from one of using commercial software to completely using a free, open-source language: Python. By combining the use of freely-available data and several basic tutorials, students were able to produce publication-quality plots and execute simple code on their own laptops--skills they could take with them after the school. The excitement amongst the school attendees was astounding. There are numerous examples of attendees going back to their home institutions and teaching their students Python and using Python to significantly further their own research. Though this case study focuses on scientists in developing nations, the arguments apply equally to underprivileged communities in developed nations, as well.