26

I am developing a tool for bioinformatics ... it is an application that will be open source when finished. It is something that has use outside of bioinformatics as well.

I am also using some open source tools to develop my application. When I need help with the open tools I'm using, it's kinda difficult for me to get the help I need without telling the people what I'm using it for.

I asked my prof if I could make the app public while it's in development, and he suggested it might be a bad idea to do that because of the potential of someone scooping the work and publishing it before we get a chance to do so.

My questions are:

  1. How serious is this problem? Do people really just take someone else's work and publish it as their own? And do journals really allow this?

  2. My prof mentioned this in terms of someone developing the tool on their own and then publishing it (i.e. take the idea but not necessarily the code). Is there anyway I could have my cake and eat it too - i.e. make the tool public and still guard against scooping?

  3. How does your lab deal with open source tools? Do they get released to public before the publication?

  • 1
    Are the other open source applications you are using GPLed? MIT? What are they licensed as? – chessofnerd Nov 26 '17 at 22:18
  • 1
    Actually, since you're going to eventually open-source it anyway, what's the tool basically for? Is it database-related, a computer algebra system, a graphical interface, data analysis via AI, etc.? – Nat Nov 27 '17 at 2:17
  • 3
    I have all my code on github simply out of convenience. If anyone ever looks at it, I wish them luck with that mess... – nengel Nov 27 '17 at 3:54
  • 9
    "it's kinda difficult for me to get the help I need without telling the people what I'm using it for" - You may have to re-think your way of seeking assistance. Have a look at stackoverflow.com. Millions of questions related to programming problems and very few need to publish more than, say, 20 lines of code plus some description of what one is trying to achieve and what does not work in this snippet. Sometimes people also produce artificial sample code to illustrate their problem w/o disclosing the actual code. Isn't that feasible for you? – JimmyB Nov 27 '17 at 15:11
  • 1
    @JimmyB Unfortunately, no. It requires the open tools' development cycle to be altered in a small way so I'll need to explain why .. and in doing so I'm giving away the idea. The open tools' developers didn't think of the way I'm using their tool. I'd love to tell them if not for this scooping concern. – player87 Nov 27 '17 at 19:33
42

Having developed academic open source software for 20 years, I have never heard anyone getting "scooped" by putting code out there. And I know lots of people who do all of their development out in the open, often years before they have it all together to make it into a publication.

I believe that the reason why this never happens is that it's difficult to take someone else's code and understand it in sufficient detail without the author's deep familiarity with the subject. Certainly to understand it at a level that would allow that person to write up a publication about it and claim that it's their own invention. (That's in addition to the fact that everyone knows that that would be unethical.) It's so much easier to collaborate with the original author if one had to add something because then one would have the person who understands it all help you with it.

So I wouldn't worry about this. Put stuff out there and see that people use it. You'll build a reputation that way, and that's what you're going for. If you keep things secret, nobody will know it but you also aren't going to gain any reputation points for it.

  • 4
    That's not to mention the sheer amount of time it takes to do this research. (You researchers know this all too well.) If someone was already trying to do the exact same thing they might be able to trim off some days by grabbing some code, but I think the time they spent monitoring you to FIND the code you put out in the open would set them back more than it would help them. – corsiKa Nov 27 '17 at 2:33
  • 2
    I suggest to edit your answer to include that some consultation with the prof. is arguably a good thing to do before publishing anything. I.e., "Consult your prof., convince him, and then put stuff out there and see that people use it. Don't go blatantly against what (s)he said, at least not after discussing it." – Clément Nov 27 '17 at 13:26
  • @Clément -- of course, communication and finding agreement is always the first step! – Wolfgang Bangerth Nov 27 '17 at 19:59
  • Maybe you want your contributions to explain what you will be needing it for. So that if someone invested the time to copy your work you could have a history of steps you were taking to solve the problems you found along the way. And it will be easier to put the spotlight on the unethical person trying to claim your work. – Salvador Valencia Nov 28 '17 at 18:14
10

In response to your third question, my group actively pushes to make our work open source. This is particularly important for our more refined/developed tools, which I believe are closest to your own work.

The reasons behind this push are many but a primary incentive is the increased visibility and collaboration opportunities. Making our code available and open to all is a great way to increase uptake.

We also believe that performing science 'in the open', as it were, improves the quality of the science done. Our group actually requires that all of our papers are published as open access, open source is therefore a natural extension of this.

3

I would like to echo Wolfgang: this just isn’t something that happens.

But more to the point, your professor seems to misunderstand what “publishing” means:

he suggested it might be a bad idea to [publish the application during development] because of the potential of someone scooping the work and publishing it before we get a chance to do so.

If you made your code public, you published it. Sure, this might not be the very academic type of publishing that your professor had in mind but that’s irrelevant here: for the purpose of scooping, it establishes a clear priority. If somebody actually took your code/idea and tried to pass it off as theirs in a scientific journal, this would be plagiarism and there are mechanisms to catch that. (Admittedly these mechanisms occasionally fail but they would probably at least help you getting your results published as well.)

In summary: not only is scooping not a realistic concern with Open Source software, but early publication actually mitigates the risk of being scooped.

In practice, most bioinformatics labs — particularly the famous ones — usually open-source their code way ahead of formal publication in a scientific journal. This is true for most recent bioinformatics software that you’re likely to use.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.