Why software development is important

Jean Fan’s recent column in Nature on “Why it’s worth making computational methods easy to use” is an excellent article on a topic close to my heart. The following quote rings especially true.

“We probably spent as many hours making STdeconvolve accessible as we did in developing it. Some of my colleagues have been surprised by this effort, as those hours won’t lead to new publications.”

Our group is the maintainer of pymatgen, maml, matgl and a few other software used extensively by the materials science community. Colleagues frequently asked me the same question – “Why do I do it? Surely a professor can spend the time writing proposals, papers, etc.?” I disagree. Our group’s code is a critical avenue in which we contribute and engage with the community. A well written and maintained code can probably 10-100x the impact of a work beyond that one publication. I argue the Materials Virtual Lab, in open collaboration with thousands of other researchers, have saved millions of hours in research hours because some graduate student or postdoc was able to do their research faster and more accurately. That may not appear in my CV, but it makes me motivated to continue to do what I do. – Shyue