News for hackers. Stuff that matters.
Re:Science needs more research software engineers by cozzyd on Wednesday June 01, 2022 @01:13AM (#31578365)
On the flip side of that, many experiments run for decades or longer, and "state of the art" software is often a poor impedance match for that.
Re:Science needs more research software engineers by throwawaysleep on Wednesday June 01, 2022 @01:17AM (#31578392)
State of the art doesn't necessarily mean React. Just something with unit tests and more than one giant 5000 line file.

If the requirement is that it lasts 30 years, you can choose more timeless languages like C, over say Rust.

Re:Science needs more research software engineers by cozzyd on Wednesday June 01, 2022 @02:20AM (#31578772)
I guess a better word for that might be "not terrible" :).

And yes, way too much research code reads like somebody's first coding project.

Re:Science needs more research software engineers by bmitc on Wednesday June 01, 2022 @01:18AM (#31578400)
I'm not convinced of that. Because what I've seen (several times) on a somewhat small scale perhaps, is someone's code, sometimes written decades ago, never maintained upgraded or properly developed used for years on a system and eventually it gives out, forcing basically a rewrite. And state of the art can mean different things for differently scaled projects.
Re:Science needs more research software engineers by cozzyd on Wednesday June 01, 2022 @02:30AM (#31578838)
I've certainly had to resurrect research code written 10+ years before I got to it. It's usually not too hard as long as it's in C/C++/Fortran and doesn't have too many dependencies. Something like Matlab, on the other hand, is often a nightmare...
Re:Science needs more research software engineers by cycomanic on Wednesday June 01, 2022 @05:17AM (#31579667)
You have too look at the big picture though. How much time would have been needed to train the PhD student (might have been even the PI) to write more maintainable code 10 years ago, and maintain that code to "best practices" over the time, compared to write that it works once and need to rewrite once after 10 years?

Moreover, people tend to forget that scientific software evolves much more slowly than commercial software and the number of people who work on this are much fewer, so why always adopt the newest method, if the code is still working. Show me commercial projects that have had the stability of something like LAPACK or BLAS, those essentially had a stable API for > 50 years now, with very few bugs.

Re:Science needs more research software engineers by bmitc on Wednesday June 01, 2022 @02:17PM (#31585891)
It's okay for things to start off rough, especially depending on the context. But there's often not much excuse for things to be taken seriously and evolved.

But to be honest, I've seen this in industry as well from software developers. So maybe it's just a law of software development that's amplified in scientific software.