Do you guys think we should all cite Grub and BusyBox and bash and libc and setuptools and pip and openssl and GNU/Linux and LXC and Docker; or else it's plagiarism for us all?<br><br>#OpenAccess<br><br>On Wednesday, September 12, 2018, Stephen J. Turnbull <<a href="mailto:turnbull.stephen.fw@u.tsukuba.ac.jp">turnbull.stephen.fw@u.tsukuba.ac.jp</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Chris Barker via Python-Dev writes:<br>
<br>
 > But "I wrote some code in Python to produce these statistics" --<br>
 > does that need a citation?<br>
<br>
That depends on what you mean by "statistics" and whether (as one<br>
should) one makes the code available.  If the code is published or<br>
"available on request", definitely, Python should be cited.  If not,<br>
and by "statistics" you mean the kind of things provided by Steven<br>
d'Aprano's excellent statistics module (mean, median, standard<br>
deviation, etc), maybe no citation is needed.  But anything more<br>
esoteric than that (even linear regression), yeah, I would say you<br>
should cite both Python and any reference you used to learn the<br>
algorithm or formulas, in the context of mentioning that your<br>
statistics are home-brew, not produced by one of the recognized<br>
applications for doing so.<br>
<br>
 > If so, maybe that would take a different form.<br>
<br>
Yes, it would.  But not so different: eg, version is analogous to<br>
edition when citing a book.<br>
<br>
 > Anyway, hard to make this decision without some idea how the<br>
 > citation is intended to be used.<br>
<br>
Same as any other citation, (1) to give credit to those responsible<br>
for providing a resource (this is why publishers and their metadata of<br>
city are still conventionally included), and (2) to show where that<br>
resource can be obtained.  AFAICS, both motivations are universally<br>
applicable in polite society.  NB: Replication is an important reason<br>
for wanting to acquire the resource, but it's not the only one.<br>
<br>
I think underlying your comment is the question of *what* resource is<br>
being cited.  I can think of three offhand that might be characterized<br>
as "Python".  First, the PSF, as a provider of funding.  There is a<br>
conventional form for this: a footnote on the title or author's name<br>
saying "The author acknowledges [a] <purpose of grant such as travel><br>
grant [grant identifier if available] from the Python Software<br>
Foundation."  I usually orally mention them in presentations, too.<br>
That one's easy; *everybody* should *always* do that.<br>
<br>
The rest of these, sort of an ideal to strive for.  If you keep a<br>
bibliographic database, and there are now quite a few efforts to crowd<br>
source them, it's easier to go the whole 9 yards than to skimp.  But<br>
except in cases where we don't need to even mention the code, probably<br>
we should be citing, for reasons of courtesy to readers as well as<br>
authors, editors, and publishers (as disgusting as many publishers are<br>
as members of society, they do play a role in providing many resources<br>
---we should find ways to compete them into good behavior, not<br>
ostracize them).<br>
<br>
The second is the Python *language and standard library*.  Then the<br>
Language Reference and/or the Library Reference should be cited<br>
briefly when Python is first mentioned, and in the text introducing a<br>
program or program fragment, with a full citation in the bibliography.<br>
I tentatively suggest that the metadata for the Language Reference<br>
would be<br>
<br>
    Author: principal author(s) (Guido?) et al. OR <a href="http://python.org" target="_blank">python.org</a> OR<br>
        Python Contributors<br>
    Title: The Python Language Reference<br>
    Version: to match Python version used (if relevant, different<br>
        versions each get full citations), probably should not be<br>
        "current"<br>
    Publisher: Python Software Foundation<br>
    Date: of the relevant version<br>
    Location: City of legal address of PSF<br>
    URL: to version used (probably should not be the default)<br>
    Date accessed: if "current" was used<br>
<br>
The Library reference would be the same except for Title.<br>
<br>
The third is a *particular implementation*.  In that case the metadata<br>
would be<br>
<br>
    Author: principal author(s) (Guido) et al. OR <a href="http://python.org" target="_blank">python.org</a> OR<br>
        Python Contributors<br>
    Title: The cPython Python distribution<br>
    Python Version: as appropriate (if relevant, different versions each<br>
        get full citations), never "current"<br>
    Distributor Version: if different from Python version (eg, additional<br>
        Debian cruft)<br>
    Publisher: Distributor (eg, PSF, Debian Project, Anaconda Inc.)<br>
    Date: of the relevant version<br>
    Location: City of legal address of distributor<br>
<br>
If downloaded:<br>
<br>
    URL: to version used (including git commit SHA1 if available)<br>
    Date accessed: download from distributor, not installation date<br>
<br>
If received on physical medium: use the "usual" form of citation for a<br>
collection of individual works (even if Python was the only thing on<br>
it).  Probably the only additional information needed would be the<br>
distributor as editor of the collection and the name of the<br>
collection.<br>
<br>
In most cases I can think of, if the implementation is cited, the<br>
Language and Library References should be cited, too.<br>
<br>
Finally, if Python or components were modified for the project, the<br>
modified version should be preserved in a repository and a VCS<br>
identifier provided.  This does not imply the repository need be<br>
publicly accessible, of course, although it might be for other reasons<br>
(eg, in a GSoC project,wherever or if hosted for free on GitHub).<br>
<br>
I doubt that "URNs" like DOI and ISBN are applicable, but if available<br>
they should be included in all cases as well.<br>
<br>
Steve<br>
______________________________<wbr>_________________<br>
Python-Dev mailing list<br>
<a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-dev" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/python-dev</a><br>
Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/wes.turner%40gmail.com" target="_blank">https://mail.python.org/<wbr>mailman/options/python-dev/<wbr>wes.turner%40gmail.com</a><br>
</blockquote>