3 ms·
Mostly I agree, bad naive code is better than bad sophisiticated code. Also science very frequenly only requires small programs that are used for one analisys
by adrianratnapala 10y ago
Mostly I agree, bad naive code is better than bad sophisiticated code.
Also science very frequenly only requires small programs that are used for one analisys and then thrown away. It's OK to have a snarl of bad Fortran or Numpy if it only 400 lines long.
BUT: scientific projects are often (in my old field, usually) also engineering projects. Such experiments are complex automated data gathering machines hardware and take rougly similar data runs tens of thousands of times.
There should be some engineering professionalism at the start to design and plan such a machine. Especially the software, since it is mostly a question of integrating off-the shelf hardware.
But PIs think:
(A) engineering is done most cheaply by PhD students -- a penny pinching fallacy.
(B) that their needs will grow unpredictably over time.
B is true, but is actually is a reason to have a good custom platform designed at the start, so that changes are less costly. Your part time programmer is going to develop many thousand of lines of code no one can understand or extend. (I've done it, I should know.)
- shitgoose 10y agoeven B is false a lot of times. Just look at most of this 'big data' - it all can fit on my mobile phone.