ED011-12
Python and Fortran: from classroom to research using industry best practices for the geosciences

Tuesday, 8 December 2020: 18:04
Virtual
Michael Hirsch, Boston University, ECE, Boston, MA, United States
Abstract:
The geosciences and associated STEM disciplines historically used sets of proprietary tools curated to fit their needs. This led not only to siloing of information in proprietary data formats but also difficulties in communicating algorithms, particularly with proprietary software with a short lifetime. Although universities are transitioning to open-source languages such as Python for incoming undergraduate classes, existing geoscience students and career scientists are adapting to the open-source, open-data landscape and agency mandates.

We teach and mentor research for undergraduate and graduate students using Python, Matlab, and Fortran. Classroom assessments and research code quality are executed using continuous integration, most recently with GitHub Actions and historically with Travis-CI and AppVeyor. Jupyter Notebooks have partially replaced proprietary interactive tools. Student designed sensors often use commodity platforms such as Raspberry Pi and Arduino for sensing and edge processing.

We have mentored dozens of undergraduate and graduate students in geoscience and instructed hundreds of STEM students using these techniques. We share general feedback and our overall assessment of these techniques and their impacts on science closure.