一直非常想增加到一个开源项目中去,目的非常easy:分享思路。接受众人的考验,可是却没成行。

   看到这篇文章。受到一定的启示。遂转之。

注:有删减。http://www.php100.com/html/itnews/it/2012/0420/10275.html

  人们常下面3个原因而打消了參与到开源项目的念头:

  1. 我还不足够优秀

  2. 我没有足够的是时间

  3. 我不知道什么样的项目适合我

  寻求机会參与到开源项目中去,应该知道的三个基本原则:

  1. 项目须要各种能力层次的专业人才。

  2. 哪怕是微不足道的贡献也比没有好。

  3. 从你正在使用的项目作为參与到开源的第一步

  某些项目中的成员看起来就像明星。没错,他们确确实实是一个极具天赋的程序猿,然而,他们中的绝大部分不是的。

    项目须要的不过那些能把任务完毕的人。有时付出的不需太多,有时须要花大把的时间。有时它就是编程。而有时它不是。

  下面是一些參与开源项目的建议或者经验,假设你有兴趣,最好还是试试

\

  0. 增加邮件列表

       对于大多数项目,邮件列表仍然是项目开发沟通基本的渠道。

       在一个规模比較大的项目中通常有非常多邮件列表能够选择,比如:PostgreSQL项目就有不少于12个面向用户的邮件列表和6个面向开发人员的。

       我建议你关注最基本的几个面向用户邮件列表以及核心的开发人员列表。

  1. 关注并编写博客

       博客一般由核心开发人员维护,通常博客中包括项在未来版本号的一些信息。

       怎样获取这些信息呢?通常一个星级站点有包括来自非常多相关项目的新闻或者博客词条。假设有一个星级站点,

       如:http://plant.gnome.org 或者 http://planet.mysql.com ,那么你要做的不过用Google搜索”planet <项目名>”。

       同一时候你也能够用博客写下你使用项目的一些经验。记录你碰到的问题及解决办法。

  2. 增加到IRC频道

       很多开源项目都有专门的互联网中继聊天(IRC)频道,用来为开发人员和用户讨论开发问题。

       细致查找项目站点中IRC频道叫什么。

  3. 代码诊断

       Bug通常非常难报告出来,诊断高速处置bug有助于节省开发人员的时间。

       假设用户提出报告:“当我操作XX功能时,系统无法工作”。你得花些时间解决这些问题。

       还是不是会反复出现?比如该类问题是否不过发生在某种浏览器不兼容?

只在发行版有这种问题还是其他的原因。

  4. 关闭已修复的bug

       通常bug在代码库中修复了,可是在问题追踪系统中还没更新。

       清理掉这些杂乱的东西尽管耗时,可是对整个项目来说是值得的。

  5. 測试beta版或者候选版本号

       不论什么项目设计用于执行在多个平台时就有可能存在各种兼容性问题。

       当一个beta版或者候选版公布时,项目带头人希望能在不同的人和不同的平台上得到測试反馈结果,你就能够是当中之中的一个。

  6. 修复bug

       修复bug一般是贡献者開始接触代码的地方,非常easy,在问题追踪系统中找到感兴趣的bug。修复之,假设合适的话为代码的修复撰写文档。

  7. 写測试

       绝大多数项目都有測试套件用来測试代码。非常难想象測试套件中不能附加很多其他的測试在其上。

       使用測试覆盖工具诸如基于c的gcov、基于Perl的Devel::Cover,用来标识源码没法通过測试套件測试到的范围,然后增加一个套件覆盖它。

  8. 理性对待编译警告

       很多基于C项目的构建过程中常常会出现非常多古怪的编译警告。这些警告通常不是错误,可是看起来像,

       太多的警告让编译器听起来就像在发假警报,细致检查代码是否的确隐藏有bug。

  9. 附上凝视

        当你在深入研究代码时。你可能发现有疑惑的地方。这对你来是一个机会,别人也可能碰到相同的问题,给他们贴上凝视提交补丁。

  10. 创建样例

        一般项目都没有太多入门的样例,无论是web API、普通程序库、或者是GUI应用如Gimp、还是命令行工具,

         比起长篇的文档,一个恰当的样例能够更清晰更高速解释软件的使用方式。

  11. 问题回答

        參与到社区最好的方式是帮助别人。回答问题,尤其是那些初次涉及的。这对于一个项目的成长非常关键,

        即使你回答不过简单地”RTFM”(read the fxxk manual)。每一个人都要行动起来,项目假设要变得强大起来的话每一个人须要动员起来。

  

  12. 改进站点

        非常多程序猿在图形设计方面显得非常糟糕,尤其是那些不能从设计部门得到帮助的项目站点。

        假设你有网页设计方面的技能,最好还是改进下站点。站点作为项目的招牌,是值得花时间的。

        也许项目界面须要彻底改造,抑或不过一个logo,这些是社区缺乏的技能,假设我能提供一些图形设计上的帮助,别人会非常喜欢的。

  有太多的方式參与到开源项目中,哪怕是我们写一个新产品的特性的历史回想。

    每一个使用开源项目的人都能够把技术带到社区和帮助开源成为IT产业中重要的一部分。

    一句话:沟通交流。重在行动

      

posted on 2018-11-01 16:10  知识天地  阅读(326)  评论(0编辑  收藏  举报