csf-standards-teaser.jpg

About this effort

The Community Software Facility (CSF) is working with software developers, scientists, and other stakeholders across NSF NCAR to identify, develop, and promote better practices for community scientific software.

The CSF Software Practice Exchange Committee (SPEC) brings together representatives from across NSF NCAR to share experience, identify common challenges, and collaboratively develop practical guidance and standards that can be applied across projects. The committee works with Ambassadors from across NSF NCAR to help connect this work with their labs and the broader software community. This co-design approach helps ensure that recommendations reflect the realities of developing, maintaining, and supporting scientific software across a diverse set of teams and projects.

The committee’s work includes:

  • Sharing knowledge and experience: Facilitate the exchange of practices and lessons learned across NSF NCAR and identify opportunities to address common challenges.
  • Developing and refining standards: Collaboratively develop better practice standards that provide useful guidance and consistency across community software projects while allowing teams to account for their specific needs and circumstances.
  • Community engagement: Seek input from software developers, scientists, project leads, and other stakeholders through Ambassadors, listening sessions, surveys, working groups, code audits, code walkthroughs, or code learning sessions, and other opportunities for feedback.
  • Continuous improvement: Treat the standards as evolving guidance that can be refined as teams apply them and provide feedback based on their experiences.

Why this work is important

Community scientific software is developed and maintained by teams with different backgrounds, workflows, and project requirements. This work creates opportunities for teams to learn from one another, identify common challenges, and build upon approaches that have been effective across NSF NCAR. Establishing shared practices and clear expectations can help teams build software that is easier to maintain, easier to use, and easier to build upon. By bringing these experiences together, the CSF can help advance sustainable, high-quality software practices across the community.

How does this fit within the CSF

The Better Practices and CSF Standards effort supports CSF’s goal of strengthening the development and sustainability of community scientific software.

The practices and standards developed through this effort are intended to provide shared recommendations for the NSF NCAR community software, informed by the experience of project teams and the software community. They will be developed collaboratively as living guidance rather than imposed as a one-size-fits-all set of requirements, and can evolve as software practices and community needs change.

NSF NCAR Labs involved in this project

  • ACOM
  • CGD
  • CISL
  • EdEC
  • EOL
  • HAO
  • MMM
  • NRIT
  • RAL
  • EOL

Moving forward

The Software Practice Exchange Committee will continue working with the NSF NCAR software community to listen, share experiences, identify priorities, and develop practical guidance. Through this ongoing exchange, the committee aims to help make better software practices easier to discover, understand, and apply across community software projects.

Get Involved

The Software Practice Exchange Committee welcomes input from the NSF NCAR software community. To share an idea, suggest a practice, ask a question, or learn more about the committee’s work, contact us at csf-practices@ucar.edu or speak with your lab’s ambassador(s).