Open source 你是如何参与开源社区的?

Open source 你是如何参与开源社区的?,open-source,Open Source,加入项目的正常过程似乎是贡献一段时间,赢得信任,然后被接纳为社区成员(即拥有提交访问权) 现在,从某种意义上说,我显然已经知道了如何参与的“最佳方式”;这不是我的问题;我希望得到的是:其他人是如何被牵扯进来的?当然,不是每个人都走上了“找到一个项目并提交补丁”的路线——或者说,他们有吗?我碰巧不认识开源社区中的任何人,所以我很想知道 也许你已经认识某个社区的人,然后就爱上了它?也许你因为一些bug而感到沮丧,并因此开始定期贡献?也许你只是在SourceForge上发现了一个项目 更新: 似乎最常

加入项目的正常过程似乎是贡献一段时间,赢得信任,然后被接纳为社区成员(即拥有提交访问权)

现在,从某种意义上说,我显然已经知道了如何参与的“最佳方式”;这不是我的问题;我希望得到的是:其他人是如何被牵扯进来的?当然,不是每个人都走上了“找到一个项目并提交补丁”的路线——或者说,他们有吗?我碰巧不认识开源社区中的任何人,所以我很想知道

也许你已经认识某个社区的人,然后就爱上了它?也许你因为一些bug而感到沮丧,并因此开始定期贡献?也许你只是在SourceForge上发现了一个项目

更新: 似乎最常见的原因只是搔痒:“寻找一个项目来贡献往往不是正确的方式。”相反,你应该通过贡献一个你已经知道并使用的项目来加入开源社区

重要: 请,请,请:告诉我你的具体经历,不要笼统的回答。此外,仅当您是项目成员或补丁贡献者时才回答。请不要就如何加入社区给出建议,这不是我想要的答案。如果您想就加入社区提供建议

很好的答案:
  • 谈论,以及
  • 谈论和
  • 他说是因为他妻子才给他捐款的
相关的:
我的个人轶事:
  • 1991年左右,Tcl社区刚起步时,我就参与其中。邮件列表和后来的usenet新闻组对于与人们联系非常重要。我专攻用户福音和教学,最终写了两本关于这个主题的书。其中一本十年后仍在出版:

  • 现在我使用了很多Python,并且非常喜欢cx_Oracle包。我再次活跃在邮件列表中,并提供了一些补丁

  • 我已经提供了我为工作编写的两个软件包。通过使它们开源,我能够得到一些不错的贡献,而且因为它们不是我的雇主当时的“秘密调味品”,他们不介意共享代码。最受欢迎的两个软件包是

    动能应用处理器——这是我在中国互联网主干网工作时建造的

    -OraPIG,Oracle Python接口生成器——它生成Python代码来调用数据库中定义的API,并包含一个XML-RPC数据库接口

  • 忠告: 与其寻找要加入的项目,不如尝试为您已经使用的项目做出贡献

    通常很难跳入“核心”开发,因为(a)在一个大型项目中,这可能需要理解相当多的代码,(b)可能已经有一个核心团队在进行开发

    因此,假设您喜欢某个软件并希望开始贡献,您可以开始围绕边缘工作。这里有几个具体的任务可以帮助你融入团队

    • 为要添加到回归测试套件中的bug编写一些测试用例
    • 浏览bug数据库并找到一个要处理的bug。这可能是进入核心开发的最佳方式
    • 查看功能请求数据库,看看是否有一个小任务可以处理
    • 查找“用户文档”请求。。。其中很多都涉及到编写您可以提供的示例代码

    祝你好运

    我加入了迪索和Greasemonkey

    我发现最好的参与方式是在项目生命的早期参与,或者只是非常感兴趣。对于DiSo或我参与的各种github项目,是前者,我的Greasemonkey贡献,后者


    寻找一个项目来做贡献通常不是正确的方式。使用stuff并找出您想要构建/修复的内容,然后执行该操作。

    我在GnuCash上做了一些修补工作,因为我妻子最近在孩子长大一点后重新开始兼职工作

    我宁愿用热扑克牌把我的眼睛挖出来,也不愿重新安装Windows,但GnuCash缺少了[某个其他会计软件包]所拥有的东西,所以我告诉她我会把它添加进去

    事实证明,他们在使用我的补丁之前做了很多改进(最终补丁的1%可能是我的东西),但至少我们现在可以使用GnuCash而不是那些专有的东西。他们的反应也令人难以置信——从提交补丁到发布补丁只需一周左右,三周后就出现在产品中了

    我还曾经研究过在Linux内核中为进程记帐提供补丁,但所需的努力远远超过了我的需要:-)

    我不定期捐款,更多的是根据需要(找到你的痒点并抓挠它)。有一些人把它当成了一种爱好,但我宁愿把业余时间花在孩子们身上,不幸的是,我的雇主不会付钱让我在其他地方捐款

    这最后一点让我特别恼火,因为:

    • Linux补丁将极大地帮助我们的产品(以及其他许多产品)
    • 正是我们另一个产品的行为改变降低了我们产品的有用性
    • 从概念上讲,解决方案相当简单(所需的工作是测试,因为问题会影响很大[任务切换]并且非常普遍[每个人都在使用Linux])
    • 编写补丁比我们最终实现的解决方案更快
    • 解决办法是一个难题(p'tooee)
    • 现在,世界上没有人能从我们的补丁中获益(包括我们)

      • 人们通常参与的方式