The workshop for "Building Communities for Software Infrastructure for Sustained Innovation" brings together the practitioners of software sustainability, including NSF SI2 participants, to discuss issues and challenges of common interest, to formulate responses benefitting the software enterprise as a whole, and working to build a community of software developers, maintainers, supporters, and users. This workshop also builds concrete affiliations between SI2 projects and other NSF CIF21 projects to help these programs function as coherent providers of cyberinfrastructure in the service of science and engineering research.
This workshop addresses numerous challenges to success with software; for instance, sustaining a community of developers, building a community of users, fostering innovation and transforming innovation into a reliable, high quality component of software, building liaisons/affiliations with other efforts, developing and maintaining software requirements, managing change against an unstable software substrate, targeting innovative new software and hardware platforms; developing mechanisms to train new users and educate the next generations in ways to use software in scientific and engineering discovery, as well as to be developers of the next set of software capabilities, etc. The workshop will cultivate the software sustainability community, in order to bring innovative, useable, sustainable software to the user community, as diverse as they are, and to foster even more innovation, both in science and engineering research, as well as in the development of new software to enable better utilization of a comprehensive cyberinfrastructure.
" brought together practitioners of software sustainability, including NSF SI2 participants, to discuss issues and challenges of common interest, to formulate responses which will benefit the software enterprise as a whole, and work to build a community of software developers, maintainers, supporters, and users. Specifically, the workshop worked through a number of issues which present challenges to achieving success with software; for example, sustaining a community of developers, building a community of users, fostering innovation and transforming innovation into a reliable, high quality component of software, building liaisons/affiliations with other efforts, developing and maintaining software requirements, managing change against an unstable software substrate, targeting innovative new software and hardware platforms; developing mechanisms to train new users and educate the next generations in ways to use software in scientific and engineering discovery, as well as to be developers of the next set of software capabilities, etc. Additionally, this project is working to build additional concrete affiliations between projects, to help SI2 and CIF21 function well as a coherent provider of cyberinfrastructure in the service of science and engineering research. Workshop Activities The Building Communities Workshop devised a number of activities to help meet the workshop goals of building communities around the NSF SI2 programs. First, to help keep the workshop from degrading into a series of talks by project investigators about their projects and rather keep the discussion focused on the important issues around software projects in general, project participants were invited to submit background information to the project website in advance of the workshop. Additionally, we hosted a poster reception on the first evening to provide a forum for topical discussions on software projects. The combination of web-posting and a poster session allowed us to use the majority of the time in the workshop in breakouts and plenary sessions, discussing the issues that should be common to the majority of the projects represented at our workshop. The sessions were started with a session on community building, in which it became readily apparent that we had some real challenges with respect to building a community with such a diverse group of projects, most of which were domain-specific and smaller, some of which were larger projects, but all of which had sufficient challenges in their own project in order to succeed with their software goals as well as with broader SI2 goals of developing a community of software projects – an overarching software effort with as much coherence as possible across the diverse range of projects. This tension was evident through the rest of the sessions, even though we were able to have very productive discussions on the issues brought forth to the community. Workshop Findings The Building Communities workshop did highlight a number of issues of common interest amongst software projects, issues that many of the projects had difficulties addressing themselves, such as: software engineering, retaining and recruiting software developers, building communities of users (not to mention communities of developers), amongst others. These issues are difficult to address in general, and there was definitely a wide variety of experiences in these areas amongst the projects represented. There was interest in some common activities to address some of these issues; there was also interest in building ties with the XSEDE organization, as this appeared to offer significant value in a number of areas of interest to the software projects represented. However, the issue of building a community of the projects represented (with a large representation from the SI2 projects), this has proven to be a challenge almost too large for this one workshop (with some follow-on work) to tackle. The issue of whether the software institutes would be an appropriate venue for resolving some of the community-building and affiliation issues were intensely discussed, however, it is not apparent if these will be the correct vehicle for such an effort. It does seem appropriate, however, that some attention to building a coherent program amongst individual software efforts would be worth considering, this would need to be a level of effort larger than any single workshop; and would need to have a cross-projects scope – some kind of analogy to XSEDE and HPC service providers may be one way to think of this. Another point of sensitivity was that at the scale and duration of the majority of the projects, many of the goals of the SI2 program to pave the way to a sustainable, innovative software ecosystem were beyond the grasp of the group at the workshop. This may be something that a cross-projects software affiliation effort may want to consider addressing; additionally, common services that are not possible within any single effort may be worth considering as well.