偶尔我会发现一些可以改进R语言(最近是IQR命令)和R文档的小方法(比如在上周说明aggregate,tapply和by之间的差异并更好地相互连接),但我不知道如何做出真正的贡献。我查看了开发者网站,似乎我的选择要么是尝试成为一个全职的开发者,要么是创建软件包,但这两个选项都不符合我想要实现的目标。
我曾在R邮件列表中提出过IQR的变更建议,但没有得到回应,所以我认为那没有什么作用。
需要澄清的是,我所说的是基本的R语言。额外的软件包是另一回事。
有什么建议吗?
偶尔我会发现一些可以改进R语言(最近是IQR命令)和R文档的小方法(比如在上周说明aggregate,tapply和by之间的差异并更好地相互连接),但我不知道如何做出真正的贡献。我查看了开发者网站,似乎我的选择要么是尝试成为一个全职的开发者,要么是创建软件包,但这两个选项都不符合我想要实现的目标。
我曾在R邮件列表中提出过IQR的变更建议,但没有得到回应,所以我认为那没有什么作用。
需要澄清的是,我所说的是基本的R语言。额外的软件包是另一回事。
有什么建议吗?
请将您的问题发送(或抄送)至r-devel邮件列表。r-help邮件列表上的流量非常大,有些内容可能会被忽略。
在愿望类别下提交错误,详细说明您想看到的改进。
提交错误后,请尝试根据需要提供针对R代码和/或文档的补丁。我以前遇到过R中存在问题或不够简便的情况,提供了修补程序和帮助文件/手册的修改,并经过适当修改后被R核心团队接受。
如果您要添加到R代码库中,则必须证明确实有迫切需要进行添加。基本上,您正在要求R Core永久维护您的代码,除非您能证明这是必需的,否则他们不太可能这样做。
如果是添加功能,请查找一个执行类似/相关操作的流行R软件包,并建议软件包维护者包含您的函数。这样,您就不需要为简单的东西启动整个软件包,而是贡献您的代码。例如,在CRAN上有几个受欢迎的*misc
软件包。
如果您想为R文档和/或手册提供修复,请为源代码提供补丁。您可以在svn.r-project.org/R找到源代码。
希望这能给您一些启示,补丁和代码总是有益的!
对于现有软件包的补丁怎么处理?
针对软件包的开放性漏洞报告怎么处理?R-Forge项目似乎不太使用问题跟踪器,但我所在的RPostgreSQL团队启用了它(托管在Google Code上),并且这很有帮助——请看这里。我们从日本引进了一个新的、非常有用的新开发人员,这可能部分是因为该项目在那里的可见性。
实质上,试图找到一个项目/团队,熟悉并加入其中。在这个意义上,这与任何其他开源项目都一样。r-devel列表(gmane view)是R开发的好地方。
另一方面,R核心团队比较封闭,只能通过邀请加入,不太可能改变。无论如何,这已经起作用了,因此我不是那些大声哀叹的人之一。