项目经理是如何看开源的

关于开源的认知,笔者目前还在比较粗旷的阶段,本文仅结合了对开源概念的基本理解,浅谈项目经理眼里的开源是怎样的。(一个不懂技术的非代码贡献者,是如何看开源的)

一、我理解的开源

---想到开源,我的脑海中会浮现的关键词有:开放、共享、源代码、社区、Apache项目、GitHub、贡献者、用户 等等;那么,让我们一起聊聊它们吧。

开源

开源(Open Source)全称为开放源代码,具有开放/共享的理念和能够流传久远的潜质(这是我认为的两大特点),它的主要协作者被称为“程序员”。

从代码诞生以来,“程序员”是一个伟大的词,他们也有一个更好的称呼 叫 “工程师”。为什么说程序员很伟大呢(甚至非常神奇),因为觉得 他们所创造的“代码”,改变了世界的模样。比如,我打字的电脑,通讯的卫星,以及手机电话等,它们的实现 都离不开一串串的代码。也请试想一下,如果没有代码,没有程序,那么我们现在的世界会是怎样?

从代码诞生以来,“开源”和“闭源”被称为了两个有争议的词。闭源,会使代码所实现的功能会具有竞争力,也为创造者带来应有的收益;开源,具有开放/共享的特质,允许更多的人参与到优秀作品的创造,从而使“开源”之路 走的更宽 也更稳。综上,开源和闭源 其实都是非常重要的部分,它们共同促进了源代码的发展。

为什么我觉得“开源”具有流传久远的潜质呢?试想一下,开源 需要非常多的参与者,但是他们的技术水平参差不齐,这就使得 开源要不断降低参与成本,来让更多人更快融入进来,直到“全民coding”的时代到来!

开源社区

源代码本身是以独立的功能/软件为载体出现在用户面前的,当我们想让更多的人参与进行时,“开源社区”就扮演了重要的角色。-----开源社区是承载开源代码和和开源文化的土壤。

开源项目实践

举一个例子:Apache APISIX

Apache APISIX 是一个优秀的开源项目。和传统网关相比,它是一个动态、实时、高性能的 API 网关,具有更加丰富的流量管理功能(比如南北向流量处理 灰度发布 服务熔断等)。和其他项目对比,它成长的速度更快,从开始孵化到毕业仅用了1年多的时间;同时,近两年时间里 新增了超过300位的代码贡献者。(可以说是既厉害 又有潜质的项目了~)

  • 它的治理模式:

    1. 设有自己的项目管理委员会(PMC),保证了项目的基本秩序;

    2. 成员来自不同国家的企业或组织,社区组成具有多元化,也使项目受众群体更广;

    3. 使用 Apache License 2.0 为开源许可证(一种允许免费商用的开源协议),代码托管在 GitHub 平台(大家可以灵活coding和相互讨论)。

    4. 大家可以通过代码、文档、布道等方式为社区做贡献,并通过贡献获得属于自己的影响力和个人成长(角色由 contributor 成长为 committer、PMC的过程,也是非常有趣的)。

企业版的探索

企业版是开源版的拓展,一方面它能更好的面向企业市场,去服务更多的人/组织;另一方面拓展后会有新需求/实践案例来丰富开源,进而形成反哺,最终完成相互成就。(每个开源用户的任何自定义行为,本质上都是自己的企业版)

开源带来了什么

        一个好的“产品”,一定是服务于社会的。我们看下“开源” 为个人、组织、以及源代码的发展 分别带来了什么

  1. 为用户/组织 带来了无边界的技术交流

    1. 开源资讯和答疑

    2. 开源解决方案、更好的服务/产品

  2. 为贡献者带来了学习和实践的机会

    1. 解决问题的思路,学习成长的机会,工作机遇,人际圈等

    2. 开源项目(积累社区经验)、影响力、成就感等

  3. 为源代码发展 带来了人才、高质量代码、高实践项目

        保证了源代码的高质量自我迭代---沉淀了大量开源项目的实践经验,和无数开源用户的灵感&素材&bugfix等

二、项目经理可以做哪些社区贡献

---开源之果实,是集众多贡献者的智慧成果。它不仅需要代码贡献者参与,同样也需要众多非代码贡献者的参与。这里 我们来看下非代码贡献者可以从哪些方面做贡献,并举例项目经理结合“专业”领域 可以尝试的贡献方法。

非代码的贡献方式

  • 写文章/做视频:

比如撰写某个项目的上手指南、踩坑记录、谈谈对开源的看法等等。

  • 做翻译

将优秀的文章翻译成不同语言,可以帮助更多的人参考学习;(只要是对这个项目有意义,都是在为它做贡献。)

  • 布道&分享

尝试和身边的人交流分享,或者在一些大会上布道开源&开源项目;(分享也可以锻炼自己的表达能力、逻辑思维能力,还可以锻炼自己的胆量~)

  • 文档完善

文档是其他人了解项目、上手项目的重要途径,我们可以帮助补充和完善社区的各类文档,甚至尝试搭建一个更好的“知识库”;(这也是一种对小白特别友好的行为)

  • 参与社区讨论/开源项目

如果你对一个项目/活动很感兴趣,可以参与到社区的日常交流&活动;(举例Apache APISIX,有:GitHub社区(github.com/apache/apisix)、Slack、QQ群(578997126)、邮件互动等等,里面会有很多的分享、答疑,如 社区周会,技术交流,定期活动)

  • 建设本地社区/发起开源项目

如果没有本地社区,你可以作为发起人建设本地社区;( Apache 软件基金会鼓励大家建设 Local Community,比如 ALC Beijing。像其他的技术社区,如:KubeSphere、云原生社区都在积极发展本地社区)

如果觉得一个idea非常棒,也可以尝试发起开源项目。

我为什么要参与贡献

  1. 个人角度

  • 更深入的了解开源项目、开源社区---为个人开源知识学习 提供思考方向和实践经验;

  • 参与&组织与开源相关的活动/项目等---可以积累到项目经验、人脉、新的实践与认知;

  • 获得更多可能性&机遇---开源背后所代表的源代码开放是一种非常棒的概念,因为它代表着你可以站在巨人的肩膀上看世界,也可以站在每个普通人的视角去感受他们的思维;透过开源,你将拥有更多的可能性!

  1. 开源角度

开源是一个需要集体参与的“项目”,并非只有贡献代码、修复 bug 才是为开源做贡献。它需要各种行业,各类职业的人来不断丰富它的内容,最终才能让开源走的更远;

比如 产品经理可以思考如何更好的打磨它,架构师可以讨论它的技术框架,UI/UE/设计者可以给出让GitHub更友好的提议、运营可以让社区保持活跃、项目经理可以帮助发起/组织开源项目……等等

结合专业领域,项目经理可以尝试的贡献方式

  • 开源之土壤(社区):帮助完善社区制度和服务体系

            在评价一个社区好坏的时候,我们不仅看它的上限,也要看它的底限;换言之,一个社区需要基本的准则,才能走的更长远;在这里项目管理者可以发挥在流程管理方面的特长 帮助完善社区制度和服务体系等;
  • 开源之种子(用户/贡献者):帮助用户/贡献者更好的解决问题和实现自我价值

    1. “任务管理”:主动收集贡献者遇到的实际问题 及跟进解决,并对重大issue做定期的回顾复盘;

    2. “活动组织”:发起或组织布道 分享 交流会,帮助贡献者排忧解惑,指引方向;

    3. 发掘“新项目”:组织或寻找更多开源项目/活动,为社区成员提供更多实践机会;(高校活动,企业招聘等 在社区提供更多实践机会----比如“开源之夏”活动)

  • 开源之果实(源代码/开源文化):帮助传播开源文化和开源知识等

    1. 源代码的标准化建设;(比如 issue/PR的收集、分析和处理,帮助issue归类 提升解决效率 FAQ规范等)

    2. 帮助搭建和完善开源的“知识库”和“文化库”,将开源知识、开源文化、开源人员事迹等 进行更好的文档化规范,传播出去,传承下来;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值