From the 3rd to the 7th of September the Wonders of Star Formation conference took place at the John McIntyre Conference Centre in Edinburgh. Over 140 astrophysicists attended to discuss developments in the field of star formation. An astrophysicist myself doing my PhD on star clusters, I attended to broaden my knowledge of recent scientific results and, all-importantly, the software that produces those results.
Two conversations I had really stuck in my mind. The first was with a PhD student who has developed a program that uses spectroscopic data to classify stars into different types. The code has been useful to her group’s work and has been applied in research that has been written up into papers and published.
She wanted to make her code publicly available, which would benefit science due to increased reproducibility, and prevent the duplication of effort incurred by other researchers writing their own software to do the same thing. Extra citations would also benefit her career. However, she was hesitant to share it because she felt unaware of whether there were certain steps she needed to take to make it “good enough”.
To me, this highlights a continuing and severe issue with undergraduate coding courses in that they rarely attempt to answer the question “How do I write good software?”. The researchers of tomorrow regularly aren’t taught good programming practice. This inevitably will have a negative impact on science given how utterly dependent it now is on researcher-written software. Many researchers, like the one I spoke to, are aware of these issues and work to learn about them independently; however, it is much easier for all concerned if researchers learn good habits natively rather than correct them later.
The other conversation that stuck with me was with a researcher in the grey area between research software engineer (RSE) and physicist. This territory is the grey area of the grey area, given that RSEs can already be considered to be somewhere between computer scientists and researchers.
He spoke about the uncertainty and career instability which many RSEs face. This instability is not only a problem for RSEs, but is also often a detriment to science as it incentivises skilled and knowledgeable people to leave academia for industry, resulting in a brain drain. I know several people that have left for this exact reason – it’s a common story. It’s an even greater issue for those in the grey area of the grey area as without neat categorisation it’s easier for people to fall between the funding cracks, despite making invaluable contributions.
It can feel (at least for me) like we’re not making progress sometimes, that we’re complaining about the same old issues we were years ago. Careers in academia are often unstable, good coding practices are frequently unknown or neglected among researchers. But through the concerted efforts by many dedicated individuals and institutions and I really do believe the tide is beginning to change.
In my experience, there’s an increasing awareness among researchers (especially the younger generation) of the benefits and importance of coding well rather than just coding, as was the case with the PhD student I met in Edinburgh. Similarly, there is ever increasing recognition of research software engineering as: a) a thing that exists, and b) something worth funding. I really do think we’re getting there.
We also use analytics & advertising services. To opt-out click for more information.