3

如果有人为 R 库提供了有用的代码块,那么他们在包文档中的适当角色是什么?

为什么重要

我已经看到此类案例的贡献者角色,但在查看作者和贡献者的定义后,我认为作者是合适的角色。但可能还有其他更合适的东西(或者可能作者/贡献者)

国会图书馆怎么说

作者:

负责创作内容主要是文本作品的个人、家庭或组织,无论媒体类型(例如印刷文本、口语、电子文本、触觉文本)或流派(例如诗歌、小说、剧本、博客)如何)。也用于个人等通过对其他创作者的作品进行释义、改写或改编,从而使原作的性质和内容发生实质性改变或改变表达媒介的情况下创作新作品

贡献者:

负责为资源做出贡献的个人、家庭或组织。这包括那些作品被贡献给更大作品的人,例如选集、连续出版物或其他个人作品的汇编。如果有更具体的角色可用,则更喜欢那个角色,例如编辑器、编译器、插图画家

可能的混淆点

  • 当拉取请求被接受时,github 会将 PR 的创建者称为“贡献者”
  • 在日常对话中,为项目提供有用输入的人可以合理地称为“贡献者”
4

2 回答 2

6

正如之前的答案所指出的,这个想法是区分不同代码贡献的重要性。手册页?person解释:

新方案还增加了根据 MA​​RC 代码列表的子集指定角色的可能性(URL: https ://www.loc.gov/marc/relators/relaterm.html )。在编写 R 包的上下文中赋予人员角色时,建议使用以下用法。

  • "aut"(作者)用于对包做出重大贡献并应出现在包引用中的完整作者。
  • "cre"(创建者)用于包维护者。
  • "ctb"(贡献者)用于贡献较小(例如代码补丁等)但不应出现在包引用中的作者。

那里还提供了在 R 包的上下文中使用更多角色的建议("com", "cph", "ctr", "dtc", "fnd", "rev", "ths", "trl")。citation("foo")如果包“foo”没有专用的 CITATION 文件,上述引用是您从中获得的“默认”或“自动”引用。如果有,您仍然可以通过citation("foo", auto = TRUE). 有关?citation更多详细信息,请参阅。

回到“作者”与“贡献者”的问题:当我们编写上述文档(以及霍尼克等人在 The R Journal 中的随附论文)时,我们故意只给出粗略的指导方针,因为最终决定什么是“实质性的”足够”需要由包作者自己制作。这与决定将谁包括在科学论文的作者列表中与在致谢中提及的决定并不相似——为此,不同学科/社区的实践也有很大差异。

一种常见的策略是区分三个贡献级别:

  • 那些做出很小贡献的人(如小的修复或改进)不会在描述中列出,但会在新闻或变更日志中得到承认。这适用于通过错误/问题跟踪器或 GitHub 或类似平台上的小型拉取请求做出的许多小贡献。
  • 那些提供较大补丁、小型辅助功能、针对特定情况的附加功能等的人应在说明中列为“贡献者”(ctb)。这也适用于从其他包或其他来源复制代码部分的情况。
  • 那些做出更大和/或持续贡献的人,这些贡献足以在说明和包的默认/自动引用中列为“作者”(aut)。

参考: Hornik K、Murdoch D、Zeileis A (2012)。“谁做了什么?R 包作者的角色以及如何引用他们。” R 杂志4 (1),64-69。doi:10.32614/RJ-2012-009

于 2020-02-22T23:27:21.667 回答
2

我认为这是一个非常有趣的问题,我之前也想过这个问题。

不幸的是,我认为您提供的两个定义并不像您想象的那么清楚。一个问题是,根据您阅读它们的方式,您可能会争辩说作者和贡献者都是在包中编写代码的人的正确标签。只需看看定义中使用的类别中的 R 包是什么:

您可以将一个包视为“内容主要是文本的作品,无论媒体类型如何”——在这种情况下,写在上面的人将是作者——或“个人作品的汇编”——其中如果添加了个人作品(例如功能)的人将成为贡献者。

在 Hadley Wickham 的《R packages》一书中,关于作者的部分不得不说:

  • cre:创建者或维护者,如果你有问题,你应该打扰的人。

  • aut:作者,对包做出重大贡献的人。

  • ctb:贡献者,那些贡献较小的人,比如补丁。

(这篇文章的原始来源似乎是这篇文章:Hornik, Murdoch and Zeileis (2012)

使用贡献的大小来确定某人是作者还是贡献者似乎是处理区别的好方法。

留下什么是实质性贡献的问题。最终,我认为这必须在作者和贡献者之间进行协商。理想情况下,创建者/维护者制定了指导方针,或者在可能的 PR 之前讨论了该问题。

我在此建议的一个经验法则是询问如果没有一个人的贡献,该软件包的核心功能是否会存在。如果答案是“否”,那么这个人就是作者。如果答案是“是的,但它们也不能很好地工作”,我认为这个人应该是贡献者。

于 2020-02-21T13:27:44.520 回答