32

I am a senior postdoc and have recently published a bioinformatics algorithm in an academic journal. For that publication, I was listed as the first author of the manuscript, and my principal investigator (PI)/supervisor as the senior author. Both of us were listed as corresponding authors.

As a follow-up we decided to submit an application note pertaining to that algorithm. Once again, the same authorship (and corresponding authors) was maintained. Additionally, the algorithm had been developed into a webserver that was placed on the PI's lab website.

The PI asked me to put the algorithm on Github. Accordingly, I created a repository on my personal account and later added the PI as a collaborator. I am a Github novice user but my understanding is that this would be sufficient to push/pull the repository and generally make modifications to it.

However I was very surprised that my PI specifically requested a Transfer of Ownership of the repository from my account to his account. The other solution is to fork the repository onto his account, but the PI doesn't like this solution on the basis that it makes it harder for him/her to maintain a copy in their lab.

So the questions:

  • Is the request to transfer ownership a fair request? My rationale is that since I created the code, the repository should be on my personal account! And since the algorithm is broadcasted on the lab website and the PI is the senior author, then he/she has been properly acknowledged and their ownership of the algorithm is also properly represented!
  • How will transfer of ownership affect my future career prospects and search for Assistant Professor jobs, especially as my field (bioinformatics) is heavily dependent on coding and algorithm development?
  • What other GitHub alternatives are there (besides forking and transfer of ownership), which would still allow me to keep ownership of the repository and have any changes directly synchronised to a copy on the lab account?
10
  • 10
    Do you hold copyright, or does your lab? Commented Jun 17, 2015 at 19:18
  • 7
    If they wrote the software as part of their job for an institution, then the research institution holds the copyright, and the research institution should get a Github organisation to store their code under. Personal Github accounts are for what people do in their free time. Commented Jun 17, 2015 at 20:15
  • 4
    @RemcoGerlich that is a common situation, but depends on the institution.
    – Davidmh
    Commented Jun 17, 2015 at 21:33
  • 13
    The other solution is to fork the repository onto his account, but the PI doesn't like this solution on the basis that it makes it harder for him/her to maintain a copy in their lab. This makes exactly zero sense. I can't even begin to guess
    – o0'.
    Commented Jun 18, 2015 at 7:45
  • 3
    Keep in mind that you can maintain your own fork under your own account even after a transfer. So potential employers will be able to find the project via your account, and see your contributions.
    – Raphael
    Commented Jun 18, 2015 at 9:00

5 Answers 5

42

The PI asked me to put the algorithm on Github. Accordingly, I created a repository on my personal account and later added the PI as a collaborator. I am a Github novice user but my understanding is that this would be sufficient to push/pull the repository and generally make modifications to it.

It is. The problem is that a personal account is, well, personal, and not overly suited for professional activities, such as research projects. To this end, GitHub uses the notion of "organizations", which can also own repositories. AFAIK there is very little practical difference between having a repo owned by a personal account and an organization, only that having it under your personal account gives the impression that this is a project of yours (as opposed to a project of your lab).

However I was very surprised that my PI specifically requested a Transfer of Ownership of the repository from my account to his account.

From your personal account to his would be a little weird. From your account to an organization with the name of your lab sounds like entirely fair game to me if for no other reason than to maintain the "corporate identity" of your lab.

The other solution is to fork the repository onto his account, but the PI doesn't like this solution on the basis that it makes it harder for him/her to maintain a copy in their lab.

Well, if you end up having to maintain both forks your PI is correct. Forking is easy, but keeping two forks up-to-date is unnecessarily cumbersome.

Is the request to Transfer Ownership a fair request? My rationale is that since I created the code, it the repository should be on my personal account!

... and since you likely created it on grant money of the lab, having it under the account of the lab is at least equally fair.

How will transfer of ownership affect my future career prospects and search for Assistant Professor jobs, especially as my field (bioinformatics) is heavily dependent on coding and algorithm development?

If bioinformatics isn't completely unlike any other computer science field, then very little people in a hiring committee will care about code in the first place, and nobody will care about whether the repo that contains the code is yours, or the one of your lab, or even the one of your PI where you committed a lot to.

What other Github alternatives are there (besides forking and transfer of ownership), which would still allow me to keep ownership of the repository and have any changes directly synced to a copy on the lab account?

You can set up a Git repo with two origins, and you always push each change to both origins. However, that seems somewhat cumbersome for rather questionable gains.

9
  • 2
    Regarding the last question, with post commit hooks you can do that automatically.
    – ff524
    Commented Jun 17, 2015 at 19:21
  • 12
    @YoungAcademic, as an employee of a university, and developed code in that role, your rights are a matter of unversity policy, regardless of where the repository is. You are probably encumbered, and have little freedom to operate without involvement of your current university. Commented Jun 17, 2015 at 19:47
  • 17
    @YoungAcademic I would also suggest creating an organization. However, frankly, this is probably not the right fight to fight, as I cannot imagine the question having any particular relevance to later job searches. GitHub maintains who commited the code anyway, so who owns the repo is just a detail no matter what.
    – xLeitix
    Commented Jun 17, 2015 at 19:52
  • 1
    @GeoffOxberry Let's not get carried away here.
    – xLeitix
    Commented Jun 19, 2015 at 11:36
  • 1
    @xLeitix: Let's also not be naive. Multiple people on this thread have assumed the integrity of the repo is inviolable, which is untrue. I believe the risk of misconduct here is low, but to act as if it doesn't exist ignores the fact that there are bad actors in academia, and fraud happens. Also, who writes the code is of material importance for non-academic job searches, and on grant applications, NSF and DOE (among others) are placing increasing emphasis on code artifacts, so it would behoove the OP to get credit for their code, if they can do so without alienating their PI. Commented Jun 19, 2015 at 18:39
19

From the perspective of a PI, I think the request to transfer ownership is fair. Your university (through a fellowship, or through a direct position) paid for the software's creation and assigning "ownership" to a github organization that corresponds to your lab seems like a reasonable approach to ensure that others in the lab will continue to be able to use and develop the software. As a PI who's in it for the long haul, one often worries what happens if the student or postdoc decides to quit the project or quit academia altogether (which is what most of them eventually do, statistically speaking) and what that will do to the continued usability of their codes; moving them into a central location that is controlled by the PI is one way to at least eliminate the possibility that the code might simply disappear at one point. That's not a judgment on the student or author, it's just being realistic and pragmatic.

As for the impact on your future employment: it makes no difference. First, git records who wrote the code, and it will continue to show you and not your adviser as the author of the code. Second, if you state in your CV/your website/your application documents that you wrote the code available at github.com/X/Y, everyone will simply believe this unless they have evidence to the contrary (in which case they can look up there who really wrote it -- and find that it really was you), so your word that you're the author typically counts for much more than where it is actually hosted. Third, in all likelihood you're still the one who knows the code best. If anyone wants to use it but doesn't have the technical skill to do so, they will still come back to you and ask whether you're interested in collaborating -- whether the repository is under your name or that of your former lab -- given that nobody in the lab likely knows as much about it as you do. In other words, you will still reap the benefits.

In summary, I think the request is fair. I also think that you're not losing anything by it.

8
  • 2
    I think this answer contains some good points in favor of transferring ownership of the repository from the OP's personal account to an organizational account. But as I understand it, the professor wants to transfer ownership to his personal account. I don't think you've justified how that would be fair.
    – David Z
    Commented Jun 18, 2015 at 10:51
  • 1
    That's semantics. Whether the account is called "Bangerth research group" or "Bangerth" makes very little difference in real life. Commented Jun 18, 2015 at 11:30
  • 1
    I don't agree. The name on the account is irrelevant, of course; the issue of who owns and controls it is very relevant. In fact it's the core issue of this whole Q&A. (One might, of course, argue that the whole question makes very little difference in real life.)
    – David Z
    Commented Jun 18, 2015 at 12:28
  • That's what I'm saying. The reality is that the PI would control both his and his research group's accounts from a practical perspective. Who has the legal rights to the code is an issue not affected by how you call the account. Commented Jun 18, 2015 at 15:27
  • 1
    His partner could easily delete the codebase from github and reupload it as it would appear to be only developed by him. Commented Jun 18, 2015 at 16:00
4

Firstly, if the code is GPLv3 this sounds like an non-issue. Anyone can legally fork the repository and work from there. If your PI wants his own copy he can just create it. If the repository gets transferred then anyone, including you, can create their own fork from that.

A fork will retain the commit history, showing you as the author. But the same is true for a transfer, the transferred repository will still show you've done the commits. So whether you fork or do nothing the net result will be roughly the same. It's just the first impression when someone finds the repository through Google. During interviews you can still show it's your work.

Practically, this is why GitHub organisations exist. I'd create an organisation for the lab and transfer the repository to that organisation. That way the location of the repository doesn't create an assumption about the person who wrote the code, but it is clear the code belongs to the organisation. That organization could also contain any future projects of the lab.

3

A very broad answer but: whether the PI's request is completely reasonable or not, it's a request that does you no conceivable harm. Whenever you work with other people (in the presence of a power/seniority differential or not) you have to make certain compromises and do things in a way which is not exactly what you would do if you were alone.

It sounds like you have a fruitful collaboration. I don't think this issue is worth jeopardizing it.

I say "very broad" because I fear I am missing some nuances of your situation. For instance you say you are a "senior postdoc" but I don't know what the "senior" means. I have never experienced any hierarchy within postdoctoral positions, and if anything, being long in the tooth is a bad thing for a postdoc: as the position is an inherent junior/temporary one, stretching it out too long creates the impression that you couldn't move on to a more permanent position. Nor do I know what the "senior author" is, given that you have separated it from both the first author and the corresponding authors. Such things do not exist in my field, so I wonder what it means in your case...

3

One of the topics that has been hinted at in the other answers but not so directly expressed is the notion that your PI may have committed himself to providing such a GitHub repository as part of the application for the funds used to support the code's creation. Many grants now require data stewardship and code maintenance to be explicitly addressed as part of the application itself. Consequently, such a request from your PI may be an attempt to satisfy these requirements. (If I were him, personally I would have mentioned this at the time, but it's possible he may have thought such a notion was obvious.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .