So yesterday I was chatting with a colleague about some routine maintenance tasks on a lab server and she asked me how good I was with “compiling.” My response was “Great…with my own code. Other people’s code…depends.” Every once in a while, you’re lucky to come across a software package that is organized, well-documented, and “just works” like it’s supposed to. However, I’ve found this to be the exception more than the rule as far as bioinformatics software is concerned.
My colleague pointed me to some software she was trying to compile and install on the server. The make build was failing since the author wrote a function with the same name as a common system function (but with a different definition). The function was only used in one place, so I renamed the function, and then another error came up, this time related to headers. I solved that issue by adding the required “include”, and then found another missing header error. I repeated this 3 or 4 times before the software finally compiled and (seemed to) run correctly.
My question to the author of this software: do you really expect me to trust the results of this program and base my research findings (and to some extent my academic reputation) on those results? No thanks!