当前位置:  开发笔记 > 编程语言 > 正文

您是如何参与开源社区的?

如何解决《您是如何参与开源社区的?》经验,为你挑选了3个好方法。

加入项目的正常进展似乎是贡献一段时间,获得信任,然后被接受为社区成员(即具有提交访问权限).

现在,我已经显然知道如何以一种说话的方式获得开发的"最佳方式"; 这不是我的问题; 我希望得到的是:其他人如何被收集?当然不是每个人都去了"找一个项目并提交补丁"的路线 - 或者有他们?我不碰巧认识开源社区中的任何人,所以我只是想知道......

也许你已经认识一个社区中的某个人并且只是陷入其中?也许你对某些bug感到沮丧并因此开始定期做出贡献?也许你刚刚在SourceForge上发现了一个项目......

更新:

看起来最常见的原因只是搔痒,引用singpolyma:"寻找一个有助于的项目通常不是正确的方法." 相反,您应该通过为您已经知道和使用的项目做出贡献来加入开源社区.

重要:

请拜托:请告诉我你的具体经历,请不要一般答案.另外,只有当您是项目成员或补丁贡献者时才回答.请不要就如何加入社区提出建议,这不是我正在寻找的那种答案.如果您想提供关于加入社区的建议,请回答这个其他主题.

很棒的答案:

马克哈里森谈到Tcl,cx_Oracle,kap和orapig

singpolyma谈论DiSo和Greasemonkey

Pax谈到因为他的妻子而向GnuCash捐款

有关:

如何参与开源项目

开源项目如何生存有毒人群(你也可以)

Mark Harriso.. 9

我个人的轶事:

    我在1991年左右开始时参与了Tcl社区.邮件列表和后来的usenet新闻组对于与人联系非常重要.我专注于用户传福音和教学,最终最终写了两本关于这个主题的书.十年后,其中一个仍在印刷中:http: //www.amazon.com/dp/0201634740

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

    我已经提供了一些我为工作而编写的软件包.通过使它们成为开源,我能够得到一些好的贡献,因为它们不是我当时雇主的"秘密酱",他们不介意共享代码.最受欢迎的两个包是

    http://sourceforge.net/projects/kap/动能应用处理器 - 这是我在中国互联网骨干网上工作时建立的.

    http://code.google.com/p/orapig/ - OraPIG,Oracle Python接口生成器 - 它生成Python代码以调用数据库中定义的API,并包含XML-RPC数据库接口.

建议:

不要寻找要加入的项目,而是尝试为已经使用的项目做贡献.

通常很难跳入"核心"开发,因为(a)在一个大项目上,这可能是一大堆需要理解的代码,而且(b)可能有一组核心人员正在研究它.

因此,假设您喜欢某个软件并希望开始贡献,您可以开始工作.这里有几个具体任务可以帮助您与小组融为一体.

编写一些测试用例,以便将bug添加到回归测试套件中.

浏览错误数据库并找到要处理的错误.这可能是进入核心开发的最佳方式.

查看功能请求数据库,看看是否有一个可以处理的小任务.

寻找"用户文档"请求......其中很多都涉及编写您可以提供的示例代码.

祝好运!



1> Mark Harriso..:

我个人的轶事:

    我在1991年左右开始时参与了Tcl社区.邮件列表和后来的usenet新闻组对于与人联系非常重要.我专注于用户传福音和教学,最终最终写了两本关于这个主题的书.十年后,其中一个仍在印刷中:http: //www.amazon.com/dp/0201634740

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

    我已经提供了一些我为工作而编写的软件包.通过使它们成为开源,我能够得到一些好的贡献,因为它们不是我当时雇主的"秘密酱",他们不介意共享代码.最受欢迎的两个包是

    http://sourceforge.net/projects/kap/动能应用处理器 - 这是我在中国互联网骨干网上工作时建立的.

    http://code.google.com/p/orapig/ - OraPIG,Oracle Python接口生成器 - 它生成Python代码以调用数据库中定义的API,并包含XML-RPC数据库接口.

建议:

不要寻找要加入的项目,而是尝试为已经使用的项目做贡献.

通常很难跳入"核心"开发,因为(a)在一个大项目上,这可能是一大堆需要理解的代码,而且(b)可能有一组核心人员正在研究它.

因此,假设您喜欢某个软件并希望开始贡献,您可以开始工作.这里有几个具体任务可以帮助您与小组融为一体.

编写一些测试用例,以便将bug添加到回归测试套件中.

浏览错误数据库并找到要处理的错误.这可能是进入核心开发的最佳方式.

查看功能请求数据库,看看是否有一个可以处理的小任务.

寻找"用户文档"请求......其中很多都涉及编写您可以提供的示例代码.

祝好运!



2> 小智..:

人们通常参与的方式是:

你在日常工作中使用FOSS产品

您注意到问题或缺少功能

你邮寄维护者询问这个错误/缺失的功能是否真实

维护者说是的,这是一个错误/缺失的功能

您决定尝试修复/添加错误/功能

你编码像疯了似的

你向维护者提交补丁

维护者笑着或面对或说"非常感谢!

如果你重复几次最后几步,维护者可能会给你提交项目的RCS存储库的访问权限,然后你真的会变得危险.但最重要的是,你需要做一些事情,即编写一些代码 - 仅仅对项目"感兴趣"是不够的.



3> singpolyma..:

我加入了DiSo和Greasemonkey.

我发现参与的最好方法是在项目的生命早期进入,或者只是非常感兴趣.有了DiSo或我正在进行的各种github项目,它是前者,我的Greasemonkey贡献,后者.

寻找一个有助于实现的项目通常不是正确的方法.使用东西并找出你想要构建/修复的内容,然后执行此操作.

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有