What I Learned from 20 Years of Leading Open Source Projects
Series: HPC Best Practices WebinarsScientific software has grown from loose collections of individual routines working on relatively simple data structures to very large packages of 100,000s to millions of lines of code, with dozens of contributors, and hundreds or thousands of users. In the process, the approaches to software development have also drastically changed: both the software packages as well as their development are professionally managed, with version control, extensive test suites, and automatic regression checks for every patch. Maybe more interestingly, the approaches to managing the community software developers and users have also dramatically changed. Having led two large, open source software projects (the finite element package deal.II, and the Advanced Simulator for Problems in Earth ConvecTion ASPECT) for more than 20 years, the presenter will share lessons learned about both the technical management of scientific software projects, as well as the social side of these projects.
Presenter
- Wolfgang Bangerth (Colorado State University)
Presenter Bio
Wolfgang Bangerth is a professor of mathematics and, by courtesy, geosciences at Colorado State University. He studied physics and mathematics at the University of Stuttgart and the University of Heidelberg in Germany. Following a few months at the ETH Zurich in Switzerland, he was a postdoc at the Institute for Computational Engineering and Sciences (ICES, now the Oden Institute) and the Institute for Geophyics at the University of Texas at Austin, and starting in 2005 on the faculty of the Department of Mathematics of Texas A&M University. He has been at Colorado State University since 2016. During his PhD time in Heidelberg, Wolfgang started the deal.II finite element library, a library that by now has more than a million lines of C++ and is the basis for at least 1,600 publications in nearly all areas of the sciences and engineering. He is also a founding Principal Developer of the ASPECT code that is widely used in the simulation of convection in the Earth mantle as well as for long-term deformation in the crust.