One of the suggestions from the Software Development Working Group was to try and get CECAM to lead an Open Innovation initiative in Scientific Software Development. The aim would be to co-develop libraries and utilities etc which could be used by a number of codes as schematically illustrated in the attached slide. The format for the workshop you suggested could be the basis for a group of code developers who have similar computational requirements to agree on a set of library like utilities that would benefit all their codes - reaching this consensus about what to do and how to do it would be the focus of the first larger get together. The 'students' (or postdocs) along with one or two experts would spend the intermediate time developing the utilities and interfacing with all the relevant codes and then the large meeting at the end would bring the larger code communities together to both assess/bug fix the new utilities and, providing this enterprise were successful, plan the next steps of community working. In the intermediate phase when the students etc are coding we could look to bring in further expert support where appropriate - so if the utilities to be developed are, say, GPU focussed then we could, say, ask NVidia to send an expert to provide advice etc for part of the time this work is being done. Given that we all agree that we have a limited pool of talented software developers the aim of this approach is to avoid wasting this valuable resource simply reinventing the wheel in many different codes.
Extended software development workshop
CECAM-HQ-EPFL, Lausanne, Switzerland
Emilio Artacho ( University of Basque Country ) - Organiser
Mike Payne ( University of Cambridge ) - Organiser
Dominic Tildesley ( Southampton University ) - Organiser