Lessons learned from CGS experience with moving to OSS
Abstract
Presentation given by Michael Wiltberger at the Developing Heliophysics Standards and Cross-Science Collaborations Workshop on Aug 11, 2025. CGS = Center for GeoSpace Storms, OSS = Open Source Software.
Full text
Lessons learned from CGS experience with moving to OSS M. Wiltberger for the CGS Team Innovate – Empower - Discover
3 MAGE 0.75 – First RoR Version at CCMC Software Standards Workshop 8/11/25
4 MAGE 1.0 – Now at CCMC! Software Standards Workshop 8/11/25
5 MAGE 1.25 – Our first open source release •Integrated build and run system supporting deployment on NCAR and NASA HPC systems •High resolution capabilities •TIEGCM 3.0 for IT modeling •RAIJU for ring current •Suite of analysis and visualization tools Software Standards Workshop 8/11/25
6 Programming Guidelines No non-parameter module global variables Don’t repeat yourself Keep subroutines short Software Standards Workshop 8/11/25
7 Repository Structure • Master/main branch of the repo • Needs a PR with two approvals to merge into • Cannot be deleted master • Development branch of the repo • Needs a PR with one approval to merge into • Cannot be deleted development • Personal development branch, all must have names start with dev_ • Dev team has full control with force push • Can be deleted dev_* This Photo by Unknown Author is licensed under CC BY-SA-NC Software Standards Workshop 8/11/25
Rapid Response Teams 8 Biweekly rotation of scientists and software engineers First line of response to test failures Check on CCMC results Use of Slack to communicate with the rest of the team Software Standards Workshop 8/11/25
9 Automated testing Automated unit and smoke test are run weekly Need to account for coding changes that change the answer from last time Software Standards Workshop 8/11/25
16 Documentation https://kaipy-docs.readthedocs.io https://gcmprocpy.readthedocs.io Software Standards Workshop 8/11/25
https://bit.ly/MAGETutorialVideo Kaipy Tutorial at CGS Workshop 17 https://bit.ly/MAGETutorial Software Standards Workshop 8/11/25
18 Jupyter Notebooks https://bit.ly/MAGETutorial https://bit.ly/GCMprocpy Software Standards Workshop 8/11/25
Open Discussion 19 Software Standards Workshop 8/11/25
5th CGS Workshop 20 We want you to work with CGS!
21 MAGE 0.75 – Usage grows at CCMC
GCMProcpy • Modes of operation: - GUI - Command Line - API (Optional Interactive Features on JuypterHub) • Supported Models - TIEGCM - WACCM-X • Plotting Routines - Lat vs Lon - Lev vs Var - Lev vs Lon - Lev vs Lat - Lev vs time - Lat vs time • Movie Routines - Lat vs Lon • Documentation - gcmprocpy.readthedocs.io • Future Development - Support for Magnetic Coordinates - Polar Plots - Movie on GUI Documentation GCMProcpy
23 TIEGCM – Open Source and at CCMC https://github.com/NCAR/tiegcm
Kaipy at CCMC 24