Software – the foundation of discovery in computational science and engineering – faces increasing complexity in computational models and computer architectures. As the ECP community work toward scientific advances, we also need to continually improve software practices in order to more effectively collaborate across teams in AD, ST, HI, and DOE computing facilities. Moreover, we need to share information specifically targeted for high-performance scientific software.
The Better Scientific Software site (https://bssw.io) provides a central hub to share information on practices, techniques, experiences, and tools to improve developer productivity and software sustainability, as key aspects of increasing overall scientific productivity. BSSw.io features ever-expanding resources on scientific software planning, development, performance, reliability, collaboration, and skills, including introductory WhatIs and HowTo information, curated content (brief articles that highlight other web-based materials), and original articles on science teams’ experiences with software issues. A GitHub backend enables content development using a collaborative, open workflow; content can also be contributed with an easy-to-use Google form.
In this BOF session, the ECP community will share experiences on using and contributing to BSSw.io. An objective is open discussion to understand pressing needs, challenges, and potential roadblocks for software sustainability and productivity, in order to determine priorities for future directions in site content, usage, and contributions. The long-term vision for BSSw is to serve as an international community-driven and community-managed resource, with content and editorial processes provided by volunteers. We welcome everyone to participate.
DESCRIPTIONThe ECP focuses on advancement of computational science and engineering through extreme-scale computing. At the core of efforts in both applications and software technologies is the need to improve developer productivity, positively impacting product quality, development time, and staffing resources, and software sustainability, reducing the cost of maintaining, sustaining, and evolving software capabilities in the future. The IDEAS-ECP project is expressly addressing the challenges facing the ECP teams by focusing on improving how we conduct our software efforts.
The Better Scientific Software (BSSw) community is an international group of researchers, practitioners, and stakeholders who are dedicated to curating, creating, and disseminating information that leads to improved software for the ECP community as well as the broader CSE community. Central to this effort is the BSSw.io website, which aims to be community-based resource with content and editorial processes in place. The BSSw.io website serves as a central hub for sharing information on practices, techniques, experiences, and tools to improve developer productivity and software sustainability. The goals of the site are to raise awareness of (1) the importance of good software practices to scientific productivity and to the quality and reliability of scientific results and (2) the increasing challenges facing CSE software developers as high-end computing heads to extreme scales.
Historically, opportunities for ECP software developers (and the broader CSE community) to exchange information and experiences have been limited; BSSw.io provides a space to support this kind of sharing. The BSSw portal provides easy access to resources and training materials provided by contributors from the ECP, DOE, and the broader high-performance computational science communities. The site content spans a range of topics including introductory WhatIs and HowTo documents that define terminology and basic processes for improving software productivity and sustainability, curated content - brief articles that highlight other web-based materials, describing why the scientific software community might find them of value, original content in the form of blogs, success stories, event highlights and original experience-based articles.
In the proposed BOF session, we hope to educate people on how to use as well as contribute to BSSw as a resource for advancing productivity and software sustainability within the ECP community. Since BSSw.io is created for the community, we want to solicit ECP community involvement for this resource. The session will incorporate a mix of BOF speakers, including people from the ECP community who have contributed to the site who will share their experiences as well as speak about their perspectives on the site. We will share our experiences and lessons learned about the status of software sustainability and productivity in ECP. One of our objectives is to encourage an open discussion with the ECP community members to understand their needs, challenges and potential roadblocks for software sustainability/productivity and determine the nature of BSSw resources that can help alleviate this pain.