是否有要求增强开源项目的指南?

偶尔我会想到我使用的开源软件应用程序的增强function。 通常我会在项目托管的任何地方进行跟踪并记录请求。 我不打算提供任何代码,我只是想提出一个建议。

有些项目有这些要求的指导方针(不允许它们,允许它们,但对“我的toos”皱眉等),但其他项目没有。 是否有任何广泛适用的指南或广泛提及如何恰当地做到这一点的文章? (以及有关从Ubuntu上下文发出请求的任何注意事项?)

  1. 在正确的地方提问。

    真正让开发人员烦恼的一件事是人们在错误的地方询问事情。 这适用于各种通信,并找到特定项目的正确方法确实需要一些调查工作。

    从项目文档开始。 大多数大型项目都有一个关于错误的部分,这些部分往往暗示某些类型的错误最佳位置。 如果项目规模较小或非正式,直接沟通(电子邮件或聊天/ IRC)并不是一个坏主意。

    如果开发人员确实对您发送直接电子邮件感到恼火,并且您已经寻找替代方案,那么他们就会因为没有说清楚而感到错误。

    在我们的(Ubuntu)环境中, Launchpad用于bug, Brainstorm用于更广泛的function请求。 在很多情况下,您希望向上游游到项目所在的地方。 如果您可以获得修复或上游添加的内容,您可以与Ubuntu维护人员讨论如何获取补丁或更新到Ubuntu。

  2. 检查是否存在现有请求。

    我们在这里关闭了很多重复项,我知道Launchpad也是如此。 重复浪费人们的时间,因为他们必须经历分流过程。 如果你能找到关于某事的现有主题,那就去吧。

    大多数跟踪器都有“订阅”function,因此您可以保持最新状态。 如果进展看起来停滞不前,我认为没有太多人会介意“有什么进展?/我可以做些什么来帮助吗?” – 风格戳。

  3. 讲礼貌。 要彻底。 乐于助人。

    我们几乎从不欠开源开发人员的任何东西(除非你直接雇佣他们),所以请记住,他们是有生命和工作的人。 您的要求应该清晰,有礼貌和完整,以避免浪费时间经历需求更多信息/不完整请求的瀑布。

    无论您的能力如何,请始终了解您是否可以采取任何措施来帮助解决问题。 即使您无法直接帮助,如果您可以从开发人员那里弄清楚需要发生什么,其他人也可以提供帮助。 如果你认识那些可以做某些元素的人,你可以将它们介绍给主题并询问他们是否喜欢帮助你。

  4. 如果可以,请考虑捐赠,赞助或招聘。

    是的我认为我建议贿赂。 如果你真的需要一个function,没有它花费你的钱(直接或浪费时间),我认为不想直接赞助改进是不公平的。

    许多项目不喜欢现金支付,但有些开发商可能会对此持开放态度。 他们是人和人(不幸的是)需要钱。 我已经聘请了一个小项目的主要开发人员一天来改进对我来说非常重要的商品,但在项目规模上却是非常低级的。

    如果您无法让项目中的任何人帮助,那么总会有人们自由编码的自由网站。 我认为没有理由你不能聘请某人来处理你的bug,将补丁推送到bug追踪器进行审查。 只需说明他们需要按照项目中的指导方针工作,并明确说明他们的工作将如何获得许可。

    这不是一种非常可持续的做事方式,但它是一种可以直接帮助你的回馈方式。 如果你绝望的话,值得一看。