I work for Institute X, an academic institution looking to expand its commercialization opportunities. I want to develop with them a hybrid-open-source strategy for the code written by me and my team. The basic idea is that general-purpose platform code be released as open-source, whereas more-specific and more-innovative application code (built on the platform) should remain protected. My question is about the open-source part, and for that I'm proposing the following:
Release the code under an open source license. Part of our reason for doing this is the same as our reason for publishing scientific findings: we want other scientists to use our work, take it further, improve the world (and along the way, improve our reputation and fundability). Partly it's also because we will benefit from the project's active usage by a broad community, which should provide the feedback that will help us maintain it. We want it to perform robustly, and its documentation to make sense, for our future employees, and we're happy to let the rest of the world be our proving ground for that. Internal-only projects in academic institutions tend to end up shakily duct-taped together and poorly documented, and hence not reusable—by exposing our code to a broader public we want to tie ourselves to the mast with the aim of avoiding that.
Use the GPL. Partly because that's a way of ensuring that, to the extent we have made the code free, it remains so. Partly it's also the because the GPL is restrictive: the strings it attaches provide a disincentive to many commercial use-cases, which in turn provides an incentive for some users to contact us about other licensing options.
Remain (explicitly) open to parallel licensing: if users want to remove the GPL strings, work out some mutually beneficial licensing agreement with them. Thus, the code still has potential value to us as copyright-protected IP.
I'm unaware of the best practices for this, but the first step in the GPL How-To seems to be to get the company/institute to disclaim copyright interest entirely and assign it to the author. The copyright statement in the release would then read "(c) 2018 [Employee's Name]". However this advice seems to be written under the assumption that open-sourcing is equivalent to the institution having zero interest in the IP. That's not the case—given the parallel-licensing strategy it would actually make sense for Institute X to retain the copyright, while permitting parallel release under GPL.
So under the assumption that X retains copyright, let's consider the project's future. Say I leave Institute X. Afterwards, I might still be best-placed to improve/maintain the project, and of course nothing would stop me forking it. But I would not be the copyright holder so I would be bound by the GPL just like anybody else. To my mind that's good for me, but less so for X: it means (a) I couldn't transfer the copyright for my improvements back to X, and (b) I'd have no incentive to do so. So to me it seems to make sense to write an agreement now that would grant me both that right and that incentive (a cut of any licensing fees).
I'm asking whether this makes sense, and what precedents there might be for this kind of strategy—does it have a name? More specifically, what precedent is there for this kind of agreement between coder and employer? Are there template agreements out there? Or would Institute X have to work out the details from scratch? The latter might discourage them from adopting this route at all.