30

Recently, we had a lecture about Reproducible research on of the slides was:

  • Reproducibility: start from the same samples/data, use the same methods, get the same results.

  • Replicability: conduct again the experiment with independent samples and/or methods to get confirmatory results.

Replicability = Reproducibility + Conduct experiment again

  • Replicability might be challenging in epidemiology (recruit again a cohort) or molecular biology (complex cell manipulation).

  • Reproducibility should be a minimum standard. One should strive to at least make his/her own research reproducible.

I find many articles that use software and when they hint what kind of analysis did they don't provide the code nor the data. There are public free ways of storing data and code of studies, and even with a DOI.

So far, I thought that some data might not be freely available because it has some private information (my field is bioinformatics), or the authors intend to use it for further investigations and want to keep for themselves the data.

The same happens with the code is the intellectual property of the lab or principal investigator, but retaining the rights of the code don't goes against the replicability.

Why are these papers accepted and publicized, even if they don't allow reproducibility?

Related: Reproducible Studies? and an example of the problem it causes Can up to 70% of scientific studies not be reproduced?.

Edit:
Some other papers about replicability: 1, 2.

  • Excel case: in this paper we can see an example. Reviewers of Growth in a Time of Debt estimated (note that this is not measurable/checkable afirmation) that the analysis could bring the results presented.

    (I couldn't find a description of the methods used for the analysis on the paper, but it is a different field of mine and I have skimmed through).
    But in new methods without prior experience/validation how can one estimate it without looking to the analysis itself?
    And in "old" methods, how bad would be to share them if they are already checked?

  • "Understand why replicability is important, and you'll understand which guidelines and rules should be applied, and how to deal with research where guidelines are skipped.":

    Replicability is important because science is about finding objective mesurable relations. This makes the relationship independent of who performs the study. But this can be discussed/answered on another question :)

    I am aware that we do our mistakes, (see my other question here on academia), but we should aim for the best behavior and the best science.

  • "Put another way, there are finite resources so the more you rerun the same code the less scientific progress you make overall"

    I don't think that we make less scientific progress overall rerunning the same code. Checking that we know for sure that A is true is far better than work for 3 years or more and then discover that A was wrong.
    How many finite resources are/were used on studies based on those the ALS Therapy Development Institute couldn't replicate?
    At the same time the induced pluripotent cells were hard to reproduce and replicate, but this isn't a software based, or the recent example of @tpg2114, 3 years to replicate their own study in 4 new settings.

  • Quality of academic software when sharing it, here it seems that it is better to share the awful, crapy code rather than hide it.

  • Necessity of the reviewer of the code and data was answered here. In short:

    Of course, the degree to which a referee is expected to verify the correctness of results varies greatly between fields. But you can always choose a personal standard higher than what's usual in your field. Just realize that good refereeing takes a significant time investment.

It seems that the comments are extending, and from the answers it seems that it is not the job of the reviewers or the journals, it might be a job for the reader (and of no one), or it doesn't worth it to make articles reproducible because it is too hard.

llrs
  • 1,183
  • 11
  • 24
  • You might be interested in this news article and the resulting preprint paper. Basically, reproducing numerical results is really darn tricky and can be thwarted by things way outside of anybody's control, like compilers and hardware. – tpg2114 Jun 01 '16 at 18:11
  • 1
    Interesting reading! That's one of the reasons why I think recalculating the software experiments after some time (with the newer versions in hardware and software) increase robustness of the results and the objectivity of the findings. But in this case is replicability what's under compromise. "Exhaustive documentation during the process of computational research is key" – llrs Jun 01 '16 at 18:30
  • 1
    In my field, I think that as time goes by, publishers do require that more and more. They encourage reproducibility, but it's not a necessity. From a researcher's standpoint, I can understand it, since there is a major difference between using my code to produce results, and publishing it for public usage. It takes time and effort. However, authors have a very significant incentive to publish codes - it increases the number of citations, since then people can compare conveniently. Papers that don't provide any means of reproduction have a bigger chance of being forgotten... – yoki Jun 02 '16 at 08:55
  • 1
    Presumably, on the other side of @yoki's comment, one factor is that historically it wasn't feasible to publish all data obtained. – Kimball Jun 02 '16 at 11:34

4 Answers4

16

There are multiple answers to your question.

  1. Academic publishing assumes good faith. At least in the circles where the majority of people are genuinely interested in the advancement of science. This is the only viable mode of sharing scientific information between adults, although it sometimes fail as we all know it. Publishing should firstly serve the purpose of communicating results in a fast and convenient manner and second provide some sort of quality control.
  2. Sharing code and data is not a necessary condition for a study to be reproducible. It surely lowers the threshold of work that has to be done by other groups to reproduce the results, but clear and comprehensive descriptions of the methods and algorithm, as well as how the data was gathered, suffice. In fact, it's even better since starting from scratch will avoid the reproduction of results that are due to artifacts in the implementation or the original data.
  3. Acceptance standards vary vastly between journals. Nowadays anything can be "accepted and publicized" providing you pay the "article processing charge". The question is where was it published and by whom. The most prestigious journals in my field have strict guidelines about the study design and sharing of materials and methods, the other ones don't.
Cape Code
  • 27,102
  • 8
  • 98
  • 151
  • If it assumes good faith why do we bother reviewing articles? Good faith doesn't imply reproducibility. 2) Usually journals don't allow enough space for a comprehensive description of the code. 3) True...
  • – llrs Jun 01 '16 at 12:33
  • 15
    @Llopis Peer review is fundamentally not about catching cheaters. The basic Modus Operandi of peer review is (1) author describes faithfully what (s)he did and what results have been obtained (2) reviewer judges the validity of this method and the interestingness and relevance of the results. Basically, peer review does not work without good faith (on both sides). – xLeitix Jun 01 '16 at 12:39
  • 2
    @Llopis If you as a reviewer would start from a position of deep distrust, every review would essentially need a full replication study. – xLeitix Jun 01 '16 at 12:40
  • How can I judge a method if I don't know it with the implementation? Maybe the method is correct but the implementation is not right. – llrs Jun 01 '16 at 12:43
  • 3
    @Llopis If you review at least 5-10 papers a year (which is not much for an average researcher) would you be able to install 5-10 code sources and datasets on your PC and run them to see if the author is correct? And then repeat the statistical analysis the authors do? And then repeat again after a major revision? This is simply not feasible – Alexandros Jun 01 '16 at 13:28
  • @Alexandros Usually I install on my own laptop 2-10 packages each week without counting those which I update... Usually each time I analyse code I don't need to install a package but use the code of that package or the code of someone analysis. The point of having the code is precisely to automatize the statistical analysis of the authors, so I shouldn't do something after running the code. I doubt the code would take longer than 1 day to run, in which case is feasible to do it (if it isn't then at least I have tried and can see if there is any flaw in the code). – llrs Jun 01 '16 at 14:33
  • 2
    @Llopis "I doubt the code would take longer than 1 day to run" I don't think so http://www.nature.com/news/two-hundred-terabyte-maths-proof-is-largest-ever-1.19990 – d.putto Jun 01 '16 at 14:53
  • "It took the team about 2 days running 800 processors in parallel" thus just 2 days with the supercomputer, but I was thinking in my field, so right, reviewers can't check this unless they have a supercomputer available :) – llrs Jun 01 '16 at 15:08
  • 5
    @Llopis if you're reviewing and find a method to be sketchy to the point that you doubt it can produce the presented results, then by all means ask for clarifications or the code. If you find the methods to be sound ans appropriate and you're passionate about the subject and you have the time and resources to put it to the test, go ahead and publish your replication or contradictory study. – Cape Code Jun 01 '16 at 15:08
  • 2
    @Llopis 800 processors is not a supercomputer; it's a small campus cluster. Just imagine the burden on the referees if they had to rerun a 10 million core-hour computation of mine (and I'm not running the biggest simulations out there). Put another way, there are finite resources so the more you rerun the same code the less scientific progress you make overall. –  Jun 01 '16 at 22:03
  • @Llopis my last manuscript in Bioinformatics has over a year of CPU time just for the results shown. I happily share the code, but I think rerunning everything is out of scope (and it is costly, we have only so much time in the computer clusters). – Davidmh Jun 02 '16 at 09:30
  • 1
    @Llopis this said, you won't get new results by rerunning my code, since, well, the output is what I coded, but by making the code available you can study the implementation, use it for your own studies, and build upon it. Way too many papers have hand waved methods, secret or unspecified databases, and underspecified features, like "13 biochemical properties". – Davidmh Jun 02 '16 at 09:33
  • @Davidmh Great! I knew that the protein structure prediction take some time. I would like to have a look on the code (I have an assignment with rosetta...). I know it is costly but it is even costlier not checking your results! But I don't understand what you want to say with your last sentence. – llrs Jun 02 '16 at 09:37
  • @Llopis we don't have infinite time in the clusters, only a few hundred thousand hours a month. If we were to re-run everything we review, we would run out of time for our own research. – Davidmh Jun 02 '16 at 11:26
  • Regarding point 3 above: in my experience standards for disclosure of materials/methods is not consistently more stringent at high-profile "glamour" journals than at most other venues. Even if a journal has guidelines about disclosure of methods and data, the extent to which these are enforced depends a lot on the editor and reviewers upon whose lap your manuscript falls. Still a lot of cultural and generational differences in what is perceived as important with respect to reproducibility. – Daniel Standage Dec 14 '18 at 21:43