Open Source Licenses For Academic Work?
An anonymous reader writes "We're in the process of submitting a scientific paper describing some techniques for data analysis. We'll be releasing the associated code, so we're faced with choosing an appropriate license. My supervisor insists there should be a citation clause, requiring any published article that uses results of the software to cite our paper. Of course, ideally, free software shouldn't have such encumbrances, and I initially tried to talk him out of it. However, in academia, the issue of attribution and citation is very important. Also, it is not a restriction on use of the software per se, only on publication of results. Unfortunately, I couldn't find any such license. So I wondered: what do other academic Slashdotters do?"
So, if you were to get such a license and then somebody published a result without citing your software (as opposed to mentioning that they used the software), how would you (or your boss) enforce it?
Would your boss really sue another academic for not citing the software?
Of course, as an academic myself, not citing the paper for some software that I used, is sloppy anyway.
Your academic papers don't have such a licensce. They are cited because it's considered unethical not to do so. The same would apply to using your source code.
Also, your license can't actually enforce the citation clause. I mean whoever uses the code won't necessarily be the same person who writes the paper. Additionally I have some doubts that the kind of clause you are interested in would be legally enforceable.
Science works because we trust other scientists to cite our work if they use it. If we kept our work secret unless other scientists signed agreements to do so nothing would get done.
If you liked this thought maybe you would find my blog nice too:
It's not like they can use your work without attribution in academic papers, since that would be plagiarism, right? So any specific clause that required citation would be unnecessary.
I misread that.
I don't think it is possible to enforce restraints on the output of an application.
Think of the implications of Microsoft if was able to have a similar clause in Microsoft Word, Wordpad, notepad, or even Windows.
I think the best thing he can do is ask for citations/attribution.
To be honest, I think your best option is: "Ask nicely."
Seriously, academia and publishing and citation is a massive reputation system. It almost entirely works on the honor system, with formal inquiries occurring (rarely) when there are major transgressions. Let's say you find or write some complicated open-source license that requires citation. The code will still be available. Unscrupulous people could still use the code and publish without citation. Do you really think you (or your supervisor) would ever bother suing them? I highly doubt it. But you would certainly spread the word that these researchers don't cite properly. You would certainly bring up this issue during peer review. This is where the real damage to them will occur.
So, my recommendation is to just skip the middle-man, and don't bother with the unconventional FOSS license (which would just confuse people who want to use the software but won't ever publish anything). Wherever you post the code, just include a prominent request (on webpage, in README, and code headers) along the lines of "If you publish any work that uses this software, please cite XXX." Most scientists would be happy to add that citation. The only ones who wouldn't are the ones who try to pass off other's work as their own: do you really think they care about respecting copyright?
This is, at least, the procedure used in my field. Publish your paper. Release the code using a standard FOSS license.. Add a citation request. Done.
The BSD license is from UC Berkeley, the MIT license is of course from MIT, llvm is from the University of Illinois / NCSA and uses a license almost identical to the BSD license, etc. For some reason, this sort of "free as in knowledge" type license seems to be rather popular among educational institutions.
My supervisor insists there should be a citation clause, requiring any published article that uses results of the software to cite our paper.
That is a restriction on how it can be used, and I seriously doubt it is at all compatible with Open Source. It certainly wouldn't be compatible with Free-as-in-FSF software.
If they use your software in a manner that, from an academic point of view, requires citation, then they are going to cite you anyway if they are honest.
If they use your software in a manner that, from an academic point of view, does not require citation, then your clause puts them in a difficult position. For example, their editor might insist the citation be removed, but then your license kicks in.
Besides, how are you going to enforce this anyway? Are you going to sue? What kind of damages and remedies are you going to put in there?
Just pick a standard OSI license, tell people who want to cite it how they can, and trust that it will work out. Don't try to force people to use your software in any peculiar way, even if that way does not seem "evil."
I asked a related question here several years ago. I have completed my schooling and released some open source software, some of which has been used and cited.
Copyright licenses generally protect holders from having others distribute their works in a way that they do not want. They do not place many restrictions on how the legally obtained work can be used. You might be able to use an end user license agreement that attempts to mandate citation & worse restrictions (such as not being able to publish software benchmarks) have certainly been imposed. Some authors even mandate registration before others can receive the source code & can then see who may be using but not citing their software. But I think this may actually be counterproductive & it certainly wouldn't be considered free software.
Academic integrity necessitates describing your work accurately in such a way that others can reproduce it. To do this, others will need to say what software they used to obtain the results they publish & they should choose to cite you. This won't always happen, but it will probably happen more frequently than you or your advisor think. It is certainly valid to write or call other academics who you know use your program and ask that they cite your paper in the future. In extreme situations, you can send a note to the editor of the journal that considers such papers that didn't cite your work & most editors will err on the side of strongly encouraging authors to add a citation.
Most other free/open source software that is used a lot in the sciences does not have a EULA of the type you subscribe, yet many are popular & are cited. They may have a FAQ entry or a mention in their README on what should be cited, but they don't try to make it legally binding.
You should ask yourself why you want to release it as free and open source software. Presumably, you hope that others will use it (obscurity is a worse threat than piracy) & maybe even to help you improve it. You also probably want to obtain some kind of academic prestige (which can come not only in the form of citation, but also from name recognition of both the program and the authors of that software). The best way to get this to happen is to write a solid piece of work that can do something that other works that cost (financially, time invested, and responsibilities involved) the same or less can't do as well and that other people want to do. Use a standard FSF/DFSG/OSI license (such as the GPL) & trust that everything else will work out. Getting quirky will discourage use of your software.
I publish a paper on new research, I get priority, no amount of pissing about by other people removes that priority, regardless of what may be attempted.
I am, and remain, the originator of that work, it cannot be patented by anyone else, or copyrighted, because my own work precedes that of any other. My permission must be sought, and even if given, cannot ever remove my priority.
Further developments based on it may be copyrightable by others, but this again does not remove my priority on the original research.
That's been the case for hundreds of years.
If you're wanting to ensure others cannot use your work for anything without express permission, that's a different issue, and why would you want to do that for academic research?
If its being done for business, and being financed by a company, the issue is moot, they own it.
If not, quit whining, you are either a scientist who wants to share their work openly (for which priority is fine), or a scientifically minded businessman who wants to turn a buck. Either is fine, but if your a business type, don't screw around, admit you want to make money and copyright/patent your work.
In the UK all you have to do is write your name on a work, and its copyrighted anyway, not sure about the US.
As for code? Well I've used the GPL for all my research related code, and I've had no problems.
A learning experience is one of those things that say, 'You know that thing you just did? Don't do that.' - D. Adams
How about you talk to the lawyers your school keeps around for this kind of stuff? Since you're going to be obligated to follow whatever their rules are anyway, you might as well defer to them now instead of after their lawsuit.
If you accept the basic premise of EULA's, which specify a contract, then that contract can do basically anything it likes, within the law.
Existing EULA's can and do put restraints on what you are allowed to do with an application. Consider for example 'student' versions of software, such as Matlab, Visual C++, etc, that cannot be used for commercial or research purposes. Also a lot of scientific software has a 'no commercial use' clause.
If you accept the basic premise of EULA's, which specify a contract, then that contract can do basically anything it likes, within the law.
But once you've gone that route, you've probably already given up the idea of using an OSI approved open source license.
He wants them to attribute when they use the results of the code, not when they use the code.
Personally, I think this wrong-headed.
It seems to me that one of two cases apply: the software in question is critical to reproducing the results presented, in which case it would be mandatory to cite the software in any real peer reviewed paper. Or the software is not critical in reproducing the results, in which case the developers don't merit citation in the paper, although they may be deserving of gratitude and a pat on the pack.
For example, should people who used LaTex or Open Office to prepare printed materials used in the course of their research cite those products? Only if the particular materials produced could only be produced in precise form by that software.
Now suppose you used postscript to produce images used for vitual perception experiments. Well, you'd probably want to publish the routines, and certainly stipulate they ran on such and so a Postscript implementation, if there were any chance at all that different implementations would render those images differently.
Now, in cases where results are produced that are dependent on a particular piece of software, whether that software be proprietary, open source, or in the public domain, it is academically dishonest NOT to cite the software, in my opinion.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
"...what do other academic Slashdotters do?"
I always provide attribution because it's part of the rest of the ethics of science. But for code, don't expect everyone to continue to attribute the paper itself, just the source lab and university. We use the EEG system most common to labs like ours. Everyone mentions the vendor in their work, but nobody mentions the validation papers and review of same. Similarly, everyone mentions what statistical analyses they use, but hardly anyone would even know where to begin to find the original publications validating them. If the code becomes widely accepted, expect it to become commonplace enough that the lab and university get mentioned, but not the paper.
And to be that widely accepted, you'd need to either provide ample validation in this publication, or better plan on doing a validation paper as a follow up. Enlisting similar labs for the latter would give your analysis more weight and them a worry-free pub, and everyone wins. If your analysis doesn't happen to be novel enough to warrant this (say, it's a mash up of previously known analyses) then your validation is reference of the sources, but it's not something you can expect much referencing to.
"I may be synthetic, but I'm not stupid." -- Bishop 341-B
But I guess they want citation in publications (academic paper), not just displayed in software.
DNA in your Linux: DNALinux
A clause like this is attempting to inflate citation counts beyond what would normally be expected, mainly by forcing even marginal use to result in a citation when often it wouldn't merit one (I don't cite, say, the manual for the Dell computer I use).
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
If you accept the basic premise of EULA's, which specify a contract, then that contract can do basically anything it likes, within the law.
Existing EULA's can and do put restraints on what you are allowed to do with an application. Consider for example 'student' versions of software, such as Matlab, Visual C++, etc, that cannot be used for commercial or research purposes. Also a lot of scientific software has a 'no commercial use' clause.
Before I begin: IANAL. I have, however, read widely on law, particularly copyright and contract law. The following is not legal advice.
What you say is true, as far as it goes.
But you see, saying "you can use this program, as long as what you are doing falls into one of these categories" is entirely different from stating what you can do with the output of the program after you've finished using the program.
Contracts have limits on what they can achieve, and when the requirements of a contract start to seem too onerous, courts tend to decide that the contract's aims are outside of the scope of a contract.
I've never seen a relevant test, but I would expect that a contract that attempts to stifle the freedom of speech of one its parties would be very difficult to enforce, except in very specific circumstances. Such circumstances would probably include stuff like near-equality of bargaining power between the parties, which isn't the case here (where there's a producer/consumer relationship). Contracts that cannot be simply terminated without leaving behind residual obligations are harder to form, too. In this case, you can't just say, "I don't agree to that any more" and stop using the software, because you still have the results that you obtained from the software.
My suggestion to the OP is quite simply this: pick any OSS license you like. I'm fond of BSD/MIT style licenses, and they are (as you can guess by the names) popular with academic institutions, at least in the field of CS. Release the software under that license, and put a note in the documentation politely asking people publishing results obtained from the software to include a citation to the paper about it. Include suitable example references in a number of formats, so it's particularly easy to cite.
Really, people will want to provide a citation. It backs up their paper with more depth, provides additional information about the methods they have used and gives the reader more confidence in their results to know how they were derived.
Why not just trust people?
It has to be worked out by you, your employer, your funding body, your university policies, and everybody's egos and lawyers. Any one of them can wind up preventing the sensible others from a sensible answer, especially federal regulatory policy on publicly funded research.
I prefer to use GPL myself, and encourage my employers to do so. It's well documented, easy to follow, and there is now a reasonable body of case law to work with. Whatever you do, don't invent your own, special, unique license. Dan Bernstein did that, and it helped keep djbdns, daemontools, and djbdns from becoming default system components in any OS distribution that I've ever worked with, despite their technical advantages over most other such tools.
For my own papers-about-data-analysis-programs, I've had good success with a simple "Please cite this paper" request, but nothing explicit in the license (I use BSD as my university preferred it to GPL). By success, I mean plenty of use of code(s), plenty of citations, and very few cases where I know of code being used and not cited. My observation (as an author and journal referee) is that most authors are happy to cite the papers for the data analysis algorithms with "We used Foo1.2[Barr, et al]" as it is a simple way to explain away details that are important, but not the point of their paper. So my view is that "you MUST cite ..." is best left out of the license.
Publish your work in a reputable Open Access Journal or make it available as part of the Digitalcommons. Making it visible on the Internet is the best protection against someone taking credit for your work.
Compare LaTeX output of math/statistics literate programming examples with bodies of math/statistics papers. The only significant differences are that the literate code is runnable and makes the research reproducible. The question is the academic institution's rights with respect to intellectual property in general and the answer is that science application should not be hindered by rules that encourage academic institutions to capitalize on their research findings. See "reproducible research" "literate programming".