Software engineering culture

software, engineering, culture

Thanks to a colleague for these links: Erik de Schutter’s Why Are Computational Neuroscience and Systems Biology So Separate?, which compares software engineering culture of two different areas of biology (neuroscience and systems biology), and I recognize quite a few things that could be impacted by a set of dev guidelines (data sharing is much more developed in system biology e.g.). Chapter 4 of the thesis of a student of a colleague also attempts to come up with such guidelines based on literature review.

‘Software development guidelines’ often come down to advice like ‘use a linter’, or even ‘use this linter’, separate data from code, structure your code, format code, and so on. All great, but maybe the scope should be enlarged a little: made more general, more social: what constitutes the sharing of a model (in the case of neuroscience)? How far do you go with providing instructions for reproduction? At some point, the HBP had very specific ideas about this, which unfortunately did not work out due to a community that couldn’t see the point. We should help everyone see that point, it’s very much a problem in this community! I’m unfortunately not in any position to require it of anyone, nor would I be the person to have brilliant ideas as to how to come up with more concrete guidelines supporting the deeper mission of sustainable and long-term model compatibility, I think the problem analysis is clear, has been made by others before, and should therefore be addressed!