中国开源年会COScon2022北京线下分会场中,Shifu开源项目不仅是北京分会场的组织者,Shifu的创始人陈永立也受邀在圆桌论坛环节与另几位在开源领域深耕多年的嘉宾大咖聊聊他们对于开源的看法。

对话嘉宾

陈永立,Shifu项目创始人

张家驹,红帽首席架构师

金发华,EMQ联合创始人

苏丹,TiDB 社区首席架构师

郭悦,亚马逊云科技开发者市场总经理

主持人:杨东杰,CSDN开发者生态运营

Q1:在开源团队中是什么样的工作体验 ?

陈永立:有好有坏,但利肯定是远远大于弊的。第一点体验好的地方,还是我之前所说的信仰为主。实际在开源社区我们都在为自己的信仰工作,所以也不觉得苦累。至于第二点,由于开源社区里的人都非常熟悉了,也非常友好,非常就事论事,所以能够根据技术来进行很深度的交流,而不会像商业中掺杂着各种KPI。当然也有体验不好的地方,比如有的社区管理比较松散,挂一个贴过一年都没人理你,这样可能会打击一些想进入开源圈的朋友的信心。所以我也要呼吁一下大家,开源既然做了,就要把治理做的更深度,做的更好一些。

苏丹:我认为非常重要的一点,你和你的用户是平等的关系。通过一些商业团队和甲乙方的关系作对比,你会发现社区简直堪比天堂。个人最大的感受是做社区推产品的时候并不是把产品硬塞给你的客户, 套用现在商业上比较流行的一个词就是“用户成功”。因为我和我的用户是平等的,所以我会给他真真正正能够帮助他的建议:如果这个产品确实能帮到他我会推荐,不适合他我同样也会告诉他,用这种方式去和用户建立一种平等和信任的关系。

金发华:我认为开源和商业闭源软件差别较大的点在于软件的交付方式上还有很大的区别。在商业产品交付的时候涉及到的整个链路是通过销售和客户去沟通授权然后去做方案,到最后成单收货记录,整个链条是比较长的。假如在交付过程当中出了一些问题,比如客户那边发生一个bug,需要一条一条链路报到上边来,我们再重现他发生的问题。写过代码的都知道,解决问题可能并不是特别难,难的是重现问题,会花费特别多时间。而开源相比较的好处在于,专业的开源用户在使用过程中遇到了问题,他会直接去看代码提pr,这样可以让软件的交付以及迭代周期变得非常快,同时软件质量也会提升得特别快。 而我们在做开源软件的时候,确实是因为热爱,所以不会计较credit,不会特别在乎这个东西应该是怎么怎么样的,而能够去帮你想办法解决这个问题。当然在开源社区里,也会有一些不是很成熟的用户,他们用这个软件的时候会提出一些很无语的要求,我们会礼貌地让他去论坛里提,但也告诉他并非必须得帮他解决这样的问题的。因为作为一个商业机构,做开源商业化软件肯定会有一些生存压力。所以有好的一面也有不好的一面。

张家驹:开源更多的是让最终的个体开发者有机会去按照自己的意愿表达自己的声音。在人生中有太多身不由己,但是开源是唯一一片净土,在这里你可以按照你自己的想法去做,并且放出来看看有没有人喜欢,尽管它可能也很傻。 这是一个优胜劣汰的过程,我有我的想法你有你的想法,大家都放出来,如果你的想法确实很好,就自然会有更多的人去支持你,拥护你的项目,给你提补。 对于用户来说,我们现在对开源可能有一种误区,刚才金老师也提到一些不合理的期待, 用户当时会觉得反正有现成的东西何乐而不为,但是任何东西里面都可能是有问题的,用户要知道这里面的风险,在享受自由的同时也要承担这样的风险。也不要把开源的开发者想太坏,认为开发者会在代码里给你埋坑。 另外我觉得要给开发者以充分的自由。比如今天开发者对开源很高信仰,想一直做下去,但过个五年十年他不再开源了,这同样是他的自由。就跟人结婚离婚一样,今天我特别爱你,到未来离婚的时候,之前的爱也不能说是假的。当然开源变闭源肯定会影响项目,你可以再另起炉灶,但给别人充分的自由,这个世界是多样性。 目前开源在整个的开发者的团队里还是小众的,有信仰的人还是比较少的。更多的人不是没有信仰,而是在面对日常生活压力时把信仰磨没了。 从我个人来讲,在开源的公司里工作显然经济收益不如其他的选择。所以对于开源这件事,无论是从开发者还是使用者的角度去看,不强求每个人都这样做,但尽可能给别人多一些的宽容。希望更多的人能参与进来,哪怕只是在工作之余有一些想法。 最后一点,对于开源的治理不需要太多自顶向下的制度,而要留给开发者自由。如果开发者进圈里玩什么,先做什么后做什么已经定好规矩了,某种程度上也限制了其他人的创新。之所以开源加速创新就是因为可以随便去想去做,由开发者群体,由市场去检验最终的结果。

Q2:对开源项目有哪些误解?

陈永立:对于我来说,遇到最多的是“我拿来就用,就万事大吉了”的这种想法。实际上开源软件包括社区,我认为它是self-fulfilling prophecy,也就是自我实现的预言。你越信,你越会给它贡献,然后它也会变得越好,直至越来越接近成真,这样才能真正的转起来。而不是别人开源了我就一直伸手,还期待着肯定能万事大吉。所以我希望大家在用开源软件的时候,也反过来给它进行反哺,哪怕只是把你的问题反馈出来都是有价值的,要是能贡献代码就更有价值了。我也是这么要求自己,如果要用开源软件,遇到的问题都会尽量反馈,如果能改就尽量给他改了。

金发华:我做开源软件经常会被问到一个问题,开源软件怎么活?这是一个很现实的问题。首先大家对开源软件有误解,把它等同为免费的。如果自己技术能力足够强,在某种程度上可以这么理解。 至于怎么去做开源软件的商业化从而实现变现,目前有很多方法。最多的一种就是基于开源软件做一些周边商业化的功能。比方说一些比较大且重要的客户有管理、审计、安全等等各方面的需求,但一般开源软件本身会关注在比较核心的功能上。另外一种是SaaS模式,把软件放到公有云,这样更多针对的是一些中小客户,客户可以根据自己的情况来选择到底用哪种方式。一些技术能力比较强的特别是较大的互联网公司,实际上并不会只是单纯的付费方,他们可能会更多的来参与你的开源社区,对项目做一些贡献。反而是一些传统企业和中小企业,会选择开源商业化和SaaS的服务。

苏丹:我要分享一个在社区里的亲身经历,因为TiDB从1.0到现在6.0其实迭代了很多个版本,每个版本或多或少都有一些bug。数据库作为基础设施,大家格外关注的是它的稳定性,但也会出现这样那样的问题,使得用户体验感不好。 这时候我们社区个人本身也会感到很着急,同时会面临着一种双重压力,一个是来自用户,有的用户能理解,有的会埋怨,还有对于产品的担忧等等方面,在社区的接触管理时遇到一些用户埋怨的时候,真的非常心痛。你不能够说人家的不对,因为这确实造成了一些麻烦,所以尽量用理解的方式去解决问题,用最大的真诚去解决到这个问题。当然也正是因为有这些敢于发声的用户,才能够让产品不断地往前走。 这件事虽然让人很心痛,但是从另一个角度来讲,他们也在推进着我们去严格对自己的要求,然后把代码的质量提高了,功能完善了,给了我们一个拥有更高稳定性所以能够向世界看齐一个机会。

Q3:开源项目的国际化与本地化?

陈永立:我想从另外一个角度来谈谈这个问题。先来定义一下什么叫国际化,国际化在我看来无非就是有人用,有人贡献,有人付钱,这些东西就是国际化。当然要加一个限定条件,就是在某个地区,现在国际化就不只是在国内了。所以我觉得都是一样的,你要做国际化,先要让有人开始用,这肯定得贴近人家的习惯。比如在硅谷就有很多community做很多meetup。这就是我们需要做的很重要的点,先要了解当地用户的喜好,他们平常喜欢用什么样的方式进行沟通协作,再有针对性的去做。

金发华:我对这个问题的观点可能比较鲜明,我觉得开源软件必须得全球化国际化,而且要在这条路上闯出来必须在这个领域里面做到第一。 因为现在大家获取信息太容易了,随便一个项目就是同类型的,到网上一搜索马上能知道哪个好,哪个排在第一,哪个排在第二。如果功能差不多,我为什么会去选第二个?肯定会选择第一个。所以开源软件不存在我关起门来搞,只在中国搞开源软件肯定不行,放上去了那就全球都能看得到的,关起门来自己搞开发软件也不可能。我们的本地协作水平总体也是越来越高,从原始社会到封建社会到工业社会,它的协作层次也越来越高,到了信息社会全球人可以在同一个平台上进行协作,最后胜出的肯定是排在前面的。 对于我们公司来说,当时就有一些客户问我们公司的人都在哪,我们公司在中国很多地方都有,在欧洲也有美国也有。人家说你们一个小公司怎么全球有那么多人,我说其实我们公司人不多,但是由于这些软件在全球都有用户有人来参与我们的社区,很自然而然他们就参与到我们公司里面来了,做着做着马上就跑到我们这来了,接下来也去服务我们全球的用户,做起来都是很自然的。要做商业化,你肯定本地得有人,不然客户的支持都跟不上。 另外一点,如果大家要去做开源软件商业化,我建议海外的市场是绝不能放弃的,因为海外的软件市场的收入相比中国根本不是一个数量级,海外是必经之路。

Q4:开源社区如何设置考核 ?

苏丹:从我的角度来看,开源指标这个东西可能只占50%或者60%。对于产品或者对于公司来讲,更重要的是产品的一个road map,能够有一年的产品的规划其实对于一个开源产品来讲就已经非常好了。Road map对于我们是一个非常重要的东西,因为你在开源的世界里会收到各种各样的诉求,各种各样的信息,很多开源的产品他们也一直不太清楚到底什么是真需求,或者说不能够把控。 我们曾经也有过一些经历,产品做到一半了之后突然发现它跟你的未来的理念,未来你要解决的场景可能不在一条线上。如果你没有road map,即使设置了一个很高的目标,把一个一个很深的技术难题攻坚掉,但是它未来不是你要去的领域的时候,你会发现这个目标也就没有那么重要了。所以在我看来一个开源产品一定要有自己的一个初心,或者说未来的目标。

郭悦:从项目本身的维度上去讲指标,从产品运营的角度来关注的指标可能更外围一些。因为老师们本身做项目,包括GitHub上的一些数据,包括代码的健康度其实都可以作为指标。但是做设计运营就会看项目本身在业内的影响力,也就是开发者的规模有多大。不一定是真的参与到这个项目的人,可能还是在学习和了解的阶段的,我们有渠道去把这些开发者聚拢在一起。对于运营来说还是会从整个的影响力和开发者的规模去设定这个指标。 再大一点,我觉得项目本身是不同的,大家不用一昧追求一样的指标,其实我自己在经历的不同项目中,有一些完全社区产品的项目,它更多的是社区有多少多少用户在用,本身项目的普及率有多高,但是像阿波罗这个社区在建设的时候,我关注的除了大指标更核心的一个指标就是生态开发者的数量,也就是除了要找到那些用我们的人,更多是找到能够基于我们再去开创自动驾驶不同场景和领域解决方案的那些开发者。 所以大家先要认清自己项目本身,包括一些在做开源的操作系统生态的公司,其实还是要找到一些核心的贡献者,要有生态开发者数量的,指标都不太一样。 还有社区的满意度也很关键,不管是调研还是访谈,你只有拿到开发者真正的反馈才能去不断优化自己的项目,才能更好的去治理它。

本文由边无际授权发布

“开源是一个自我实现的预言”,Shifu创始人陈永立说道相关推荐

  1. 人工智能不可挡 但别让恐惧成为自我实现的预言!

    ▼ 点击上方蓝字 关注网易智能 为你解读AI领域大公司大事件,新观点新应用 [网易智能讯 03月24日消息]如果没有对未来劳动力的建设性意见,我们对人工智能的恐惧可能会成为自我实现的预言. 我们对人工 ...

  2. 《刻意练习》读书心得 驳斥1万小时定律、有目的的练习、自我实现的预言、走出舒适区

    前言 本文主要内容: 关于个人成长进步的思考: 主要关键字: 内容来自于<刻意练习>的读书感悟. 驳斥1万小时定律 驳斥1万小时定律可以玩一个巧妙的思想游戏,这就是古希腊哲学家欧布里德提出 ...

  3. 推荐ApacheCN开源的一个机器学习路线图

    推荐一个ApacheCN开源的一个机器学习路线图: https://github.com/apachecn/AiLearning 注意:需要直接打开网址或者"阅读原文"才能打开文章 ...

  4. 【转载保存】推荐ApacheCN开源的一个机器学习路线图

    转载:https://mp.weixin.qq.com/s/EMWFFPsaKaGc8FO1g-htzg 推荐ApacheCN开源的一个机器学习路线图 原创: 机器学习初学者 机器学习初学者 今天 推 ...

  5. 微软开源了一个用TF实现的GNN例程库

    点击我爱计算机视觉标星,更快获取CVML新技术 2019年接近尾声,许多学术机构盘点本年度AI领域技术关键词总少不了图神经网络(GNN),业界渐成共识:CNN处理图像视频等矩阵数据.RNN处理序列数据 ...

  6. 【高数+AI】中山大学的学霸小哥开源了一个能帮你做高数题的AI

    来自:开源最前线(ID:OpenSourceTop) 链接:https://github.com/Roujack/mathAI 中山大学的一名叫mathAI的硕士学霸小哥在GitHub上开源了一个拍照 ...

  7. 为了治好你的脸盲,这家表情包网站开源了一个明星识别器丨GitHub

    郭一璞 发自 凹非寺  量子位 报道 | 公众号 QbitAI 小鲜肉太多,让人分不清,需要AI替我识别,这又是谁家的爱豆. 现在,有一家公司来拯救脸盲了,不是你熟悉的硅谷/后厂村大公司,而是一家动图 ...

  8. 微软又开源了一个机器学习框架,这次是核心产品的机器学习引擎infer.NET

    乾明 整理编译自 Microsoft Research Blog 量子位 报道 | 公众号 QbitAI 感觉微软对开源上瘾了. 在开源了跨平台机器学习框架ML.NET之后,微软又开源了一个非常重要的 ...

  9. 大学数计算机学霸曾做出的数学题,中山大学的学霸小哥开源了一个能帮你做高数题的AI...

    来自:开源最前线(ID:OpenSourceTop) 链接:https://github.com/Roujack/mathAI 中山大学的一名叫mathAI的硕士学霸小哥在GitHub上开源了一个拍照 ...

最新文章

  1. 机器学习|最简单易懂的机器学习
  2. android点击事件禁用,android-禁用所有视图的触摸事件
  3. ftpClient的连接超时设置(setConnectTimeout,setSoTimeout)
  4. spark入门_入门必读 | Spark 论文导读
  5. sata修改为ahci后系统无法启动_固态重装系统
  6. linux系统安装arcsde,Linux操作系统安装ArcSDE10
  7. Linux下共享内存的查看和释放
  8. [SQL]查询及删除重复记录的SQL语句
  9. 简述与oracle相关的程序组,北语网院18秋《Oracle数据库开发》作业_4答案
  10. qt 获取用户缩放_Qt-如何创建随窗口缩放并保持纵横比的图像?
  11. Spring Cloud 异常处理
  12. 第四十二节,configparser特定格式的ini配置文件模块
  13. VisualStudio 2010从分析到实施(3)——使用Use Case Diagram设计系统交互
  14. MacBook Air密码忘了,苹果电脑密码忘了怎么办
  15. 长序列测序数据分析的机遇与挑战
  16. 如何使用FFmpeg命令处理音视频
  17. Jquery给HTML元素绑定按键事件-回车事件
  18. 小米手环模拟门禁卡读卡失败_工作生活好帮手 篇一:小米note3模拟门禁卡 你该不该知道的可能都在这里_安卓手机...
  19. 2018年美亚杯电子数据取证大赛-资格赛wp
  20. 我的世界服务器附魔修改器,我的世界附魔辅助器

热门文章

  1. 在移动硬盘中安装win10和macos双系统
  2. 最小元素的min函数
  3. opencv-python 视频抽帧成一张张图片
  4. 小狗钱钱-博多·舍费尔
  5. is_file php 绕过,文件上传之绕过
  6. IPv6地址的无状态自动配置
  7. 计算机取代人脑的英语作文,关于电脑和人脑差别的英语作文
  8. 短视频三要素之封面,如何设计引人关注的封面呢?
  9. 单集群10万节点 走进腾讯云分布式调度系统VStation
  10. ADUM1201BRZ DGTL ISO 2.5KV GEN PURP 8SOIC