In March 2021, the Exascale Computing Project (ECP) organized a series of Community Birds-of-a-Feather (BOF) Days to provide an opportunity for the HPC and ECP communities to converge and discuss the latest development efforts. The BSSw.io editorial team led a community BOF on "Cultivating Software Sustainability, Productivity and Quality through BSSw.io". This session was a great success, with over 50 attendees representing academia, national laboratories and supercomputing centers.
Avanthi Madduri and Deborah Stevens, from the Argonne Leadership Computing Facility, interview Rinku Gupta. Rinku was the lead organizer of the BSSw.io community BOF and also serves as Editor-in-Chief of the BSSw.io site.
Avanthi Madduri: Hello Rinku. Deborah and I are hoping to learn more about the BSSw.io community BOF that was held recently. This would be useful for audience members who were not able to participate in real-time, to give them an idea of the discussion topics, results and any recent developments. Could you tell us, what was the goal of the BSSw.io community BOF?
Rinku Gupta: The Better Scientific Software website (https://bssw.io) has been gaining traction as a community-based resource for sharing information on software productivity and sustainability in computational science and engineering (CSE) and related technical computing areas. The BSSw.io community BOF aimed to get the scientific community together to engage in discussions on how BSSw.io can help scientists and the community do better science. The BOF was also an opportunity to increase awareness about some of the critical aspects of scientific productivity. Developer productivity and software sustainability are two critical aspects of scientific productivity.
Developer productivity directly impacts the output and growth of a team and its software products. Software sustainability impacts the future of the project, including technical debt, long-term development, maintenance and influence. The community BOF helped in facilitating an open discussion to understand the pressing needs, challenges, and potential roadblocks for software sustainability and productivity. Such a discussion also helps the BSSw.io editorial team to determine priorities for future directions in site content, usage, and contributions. Several members of the community also presented and discussed their experiences using the BSSw.io portal. 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.
Deborah Stevens: A lot of readers would like to submit content for publication on the BSSw.io site. Could you elaborate on what kind of content they can submit?
Rinku: We are always excited to receive content from the scientific community. The BSSw.io portal seeks content on topics related to developer productivity, software sustainability and quality. Our content is organized in three high-level categories: original articles, curated content, and events. Readers of BSSw.io can submit ''curated content''—pointers to web articles, websites, publications, and technologies, with a short description of why the topic would be of interest to the scientific community. This is useful because in the plethora of information available on the web, very little can be applied directly to scientific environments, and we are trying to focus on such useful information. The original articles on the site are in the form of blogs and experience-based short articles. As compared to industry, which arguably has several standards that have emerged over the decade for better software development and operations, the scientific field - which is research focused - does have unique requirements in terms of software development, productivity and sustainability. But, overall, the community is pretty aligned with respect to the types of software being developed, tools/technologies being used, and even overall research environments. Hence, we have noted that sharing experiences about software practices, tools, and teams is tremendously beneficial for the community. BSSw.io also provides a running list of happenings and relevant events such as webinars, tutorials, panels, workshops and conferences. Since this is a community effort, we depend on and look forward to community members submitting events.
Avanthi: We know that you discussed the process of submitting content to BSSw.io during the community BOF. However, could you please briefly describe it for us today?
Rinku: Yes, of course. During the community BOF, we had discussions where community members shared their experiences with a focus on the submission process. In particular, recent contributors Elsa Gonsiorowski, Keith Beattie, and Nasir Eitsy shared presentations and discussed their personal experiences.
BSSw.io is managed by the BSSw.io editorial team, composed of senior editors and associate editors, who are experts in their fields. We welcome contributions from readers all over the world. I should mention that the BSSw.io website has detailed instructions on how and what to contribute. All submitted content undergoes a review process. Once an article is submitted, we assign editors who work with contributors to refine the content, before it is finally published. We keep all our processes and workflows open so that we can receive continuous feedback for improvement and growth.
Our submission process is managed using our GitHub repository. For users familiar with Git and GitHub, submissions can be made by creating GitHub issues, and content is created and merged using Git Pull Requests. For users unfamiliar with Git, we are happy to work with whatever technologies they prefer.
Deborah: I understand there were several focused topic discussions that took place at the BSSw.io community BOF. Could you talk a bit about them?
Rinku: The BOF included several breakout groups, ranging from a hands-on session on writing your first piece of BSSw.io content, to community discussion on what topics would be impactful, as well as discussion on existing resources for software sustainability and productivity. Even though the BOF lasted only 90 minutes, the attendees managed to cover a broad range of topics. Some of the topics focused on:
The need for more awareness. Across the scientific community, more awareness and focus are needed on software sustainability and productivity. BOF participant recommendations ranged from suggestions for funding agencies to devote explicit funding to these topics, to having community BOFs at regular intervals, to showing public appreciation for teams who are already incorporating strong practices in these areas.
The need for training. Audience members discussed training available on these topics and shared experiences about their individual organizations. Overall, there is a need for more solid, scientific-computing oriented resources for training. Efforts in this direction include work by the IDEAS productivity project, Software Carpentry, and the Software Sustainability Institute.
The need for tools and technologies. The attendees discussed what tools, best practices and technologies exist today that they have found useful for improving sustainability and productivity in their projects. These tools address documentation, bug tracking, issue reporting, automated testing, continuous integration testing, and more.
The need to improve team productivity with virtual working. We also discussed what strategies have been effective to improve team morale and productivity during the remote working times of 2020-2021. Several approaches emerged from these discussions, such as having virtual team lunches, coffee time, water cooler discussions, and techniques for how to productively organize online meetings.
Avanthi: How can readers and community members can get involved with BSSw.io?
Rinku: Getting involved with the BSSw.io effort is as easy as reaching out of any member of the editorial team. We have tried to make the submission process straightforward and easy. We invite and encourage developers and researchers to share experiences and information with the rest of the community through BSSw.io, as the site grows to become a central outreach channel. We also have a mailing list that is low-traffic and provides monthly updates about new content on the site - BSSw.io readers can subscribe to it. The BSSw.io site has comprehensive information on how to view current content and contributors, as well as how to contribute content. We look forward to working with your teams and the entire community.
Author and interviewer bios
Rinku Gupta is the Editor-in-Chief of the Better Scientific Software site. She has been a part of the high-performance scientific community for two decades and is a researcher in the field of high-performance fault tolerance, resiliency, middleware libraries and programming models. She is passionate about her work in the area of developer productivity and software sustainability; her current focus lies in partnering with the computational science community on these topics to design better scientific software.
Avanthi Madduri is a long time member of the User Experience team at the Argonne Leadership Computing Facility (ALCF). She helps ensure that the world-class researchers who use the facility's high-performance computing resources to achieve breakthroughs in science and engineering have a positive and productive experience at the facility. One of her areas of expertise is evaluation and adoption of new frameworks, tools and services for project and team management to accelerate the team's delivery velocity when working on large-scale, cross-cutting projects. She also works on evaluation and adoption of new services to increase ALCF users' overall productivity.
Deborah Stevens is an Assistant Computer Scientist at the Argonne Leadership Computing Facility (ALCF). She works with the IDEAS project on documentation and best practices for optimal capture of coding development decisions. ALCF outreach about work in the DOE Exascale Computing Project is another area of focus.