加入项目的正常进展似乎是贡献一段时间,获得信任,然后被接受为社区成员(即具有提交访问权限).
现在,我已经显然知道如何以一种说话的方式获得开发的"最佳方式"; 这不是我的问题; 我希望得到的是:其他人如何被收集?当然不是每个人都去了"找一个项目并提交补丁"的路线 - 或者有他们?我不碰巧认识开源社区中的任何人,所以我只是想知道......
也许你已经认识一个社区中的某个人并且只是陷入其中?也许你对某些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添加到回归测试套件中.
浏览错误数据库并找到要处理的错误.这可能是进入核心开发的最佳方式.
查看功能请求数据库,看看是否有一个可以处理的小任务.
寻找"用户文档"请求......其中很多都涉及编写您可以提供的示例代码.
祝好运!
我在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添加到回归测试套件中.
浏览错误数据库并找到要处理的错误.这可能是进入核心开发的最佳方式.
查看功能请求数据库,看看是否有一个可以处理的小任务.
寻找"用户文档"请求......其中很多都涉及编写您可以提供的示例代码.
祝好运!
人们通常参与的方式是:
你在日常工作中使用FOSS产品
您注意到问题或缺少功能
你邮寄维护者询问这个错误/缺失的功能是否真实
维护者说是的,这是一个错误/缺失的功能
您决定尝试修复/添加错误/功能
你编码像疯了似的
你向维护者提交补丁
维护者笑着或面对或说"非常感谢!
如果你重复几次最后几步,维护者可能会给你提交项目的RCS存储库的访问权限,然后你真的会变得危险.但最重要的是,你需要做一些事情,即编写一些代码 - 仅仅对项目"感兴趣"是不够的.
我加入了DiSo和Greasemonkey.
我发现参与的最好方法是在项目的生命早期进入,或者只是非常感兴趣.有了DiSo或我正在进行的各种github项目,它是前者,我的Greasemonkey贡献,后者.
寻找一个有助于实现的项目通常不是正确的方法.使用东西并找出你想要构建/修复的内容,然后执行此操作.