Slashdot Mirror


'The Code Has Already Been Written'

theodp writes "John D. Cook points out there's a major divide between the way scientists and programmers view the software they write. Scientists see their software as a kind of exoskeleton, an extension of themselves. Programmers, on the other hand, see their software as something they will hand over to someone else, more like building a robot. To a scientist, the software soup's done when they get what they want out of it, while professional programmers give more thought to reproducibility, maintainability, and correctness. So what happens when the twain meet? 'The real tension,' says Cook, 'comes when a piece of research software is suddenly expected to be ready for production. The scientist will say 'the code has already been written' and can't imagine it would take much work, if any, to prepare the software for its new responsibilities. They don't understand how hard it is for an engineer to turn an exoskeleton into a self-sufficient robot.'"

1 of 253 comments (clear)

  1. Re:This is so true by SomeKDEUser · · Score: 0, Troll

    FORTRAN is a horrible language. Abominable. It is ugly, inconsistent, baroque.

    People will insist FORTRAN is faster.This is a lie. Has been since about 20 years. They will tell you it is "perfectly suited" to their purpose. It is not. Simply, they have no clue, no sense of aesthetics, and the ir Stockholm syndrome is too entrenched.

    I do numerical simulations, and I consider myself a scientist. But I was trained as an engineer, And I know just what the author of TFA is talking about. Too many scientists think that once you have written the equations, your work is done.

    Basically, the numerics is just number-crunching, right? No. If you want to solve interesting problems, the code must also be efficient. And if your problem is really interesting (aka not very well defined, because you are doing research) a well-written, well architectured piece of code will save you tons of time down the line.

    And this cannot happen in FORTRAN. In theory, it could. But I never so that happen.