姜宁:如何参与开源社区贡献

一、开源的历史

提到开源,还有一个词叫自由软件,也就是 Free Software,Free ≠ 免费,更多强调的是自由。下图几个著名的操作系统 Linux、BSD 都是自由软件,自由软件保证大家学习、使用、修改、分发软件的自由。

2000 年左右,出现了各种各样的基金会,例如 Open Source、Mozilla、Apache 等,大家都在推广开源,也就是我们现在说的 Open Source。

近十年来,以 GitHub 为代表,Social Coding 慢慢发展起来,越来越多人通过相互协作的方式进行开源软件的开发。

二、开源共同体

01  开源的本质是开放、协作

  • 开放:降低信息获取成本

  • 协作:跨越各种界限进行协作

02  参与开源项目是最好的实践场所

开源共同体(社区)是什么?

  • “A community usually refers to a group of people who interact and share certain things (Open Source Project) as a group.”

  • 社区通常指一群人互相交互和共享某些内容(开源项目)。

开源共同体的特点:

  • 共同的兴趣、爱好

  • 需要有一定的场所进行交流(Internet)

  • 大家扮演不同的角色:用户、开发者、布道师

开源共同体的价值:

  • 客户以及用户支持

  • 商业宣传拓展,帮助客户成功

  • 支持与教育 产品,技术支持

  • 商业能力拓展

三、开源软件开发

01  上手开源项目的步骤

  • 体验快速指南,具体了解该开源项目做了哪些事情

  • 尝试自己编译源代码、部署运行,试图解决问题

  • 在 IDE 中部署调试,了解其运作模式

  • 结合官方文档熟悉项目架构

  • 总结使用场景,学习笔记,发点文章

  • 结合业务,参与社区交流

由于大家的目标是一致的,所以很多事情能够自然而然地发生。学会使用文档,通过文档交互、邮件列表等方式进行交流,传递项目相关知识,一步步互相了解,一步步往前走。

02  如何快速融入开源共同体

  • 培养自己的好奇心,有足够的好奇心探究其工作原理(从一个好问题开始)

  • 使用好搜索引擎,快速获取信息,了解其运行原理、架构等,并参与互动

  • 围观开源开发记录,看看问题是如何解决的

  • 在网上多混圈子,通过问问题或做贡献展示自我,结识更多的同道中人

  • 找个项目做贡献成为 Committer

‍姜宁老师表示,前 Apache 软件基金会主席 Craig Russell 有一句话,翻译成中文是:“你待人如人之待你、谦虚有礼、达成申信、虚怀若谷、敢于担当、求同存异、同心协力、共创未来”。这是想参与并融入到开源共同体里的人需要注意的,可以此精神为指引。

猜你喜欢

转载自blog.csdn.net/Huawei_KYYL/article/details/127763167