SRS为何加入木兰社区孵化?

凌云时刻

SRS正式加入木兰开源社区孵化,我想很多朋友只是大概知道木兰社区是国家级的开源社区,是一件很值得荣耀的事情,其他的事情可能就了解不多了。

这次和大家分享下我对这个事情的理解和思考,如果有疑问欢迎评论区留言,我以后有机会再解答。

就从我知道一部分疑问开始吧。

自己玩开源不是挺好么?


Q: 自己玩开源不是挺好么?为什么一定要加入一个开源组织?

A: 自己玩开源没有什么不好,加入开源组织可以做得更好,而且不妨碍继续贡献。

开源项目如果只是要活下来,完全不需要特别大的投入,只要不放弃持续投入就能继续做开源。

SRS已经活了8年,再持续活8年也不是什么问题,我考虑的不是活下来或被使用,而是如何能做得更好。

先分享下做开源项目都有哪些事情,以及大概需要多久时间投入,按一个版本计算:

 方向规划,哪些功能该做哪些不该做。由于人比较少,大概1周。

 功能实现,比如源站集群可能2周左右,WebRTC大概8周。

 写PPT,LVS和GOTC分享,平时公众号分享,大概4周。

 文档更新,一个版本的文档更新,双语Wiki,逻辑更新,大概4周。

 UTest测试,一般投入4周左右。

 Bugfix,一般8周。

这样算下来,SRS 3.0大概23周,SRS 4.0大概29周。一年我能投入的时间大概是10周,这就是SRS一般的版本发布都在2年左右。

一年法定假期是11天,加上可用年假大约20天左右,周末按每周投入1天,一共可投入70天也就是10周。

很明显,这里有些事情是大家比较愿意做的,有些并非是必须我做的,如果有更多的人参与,质量会更高。

由于音视频的门槛很高,这几年业务发展非常快,目前主要的矛盾已经是抢不到人了,开发者跟不上市场的需求。

如何让更多的开发者能入手音视频?开源项目是唯一途径,开发者只能从代码开始学习,代码都没有怎么学。

音视频的开源,真的对新开发者很友好吗?我认为非常不友好,太难了。

或许你觉得SRS的文档还比较容易上手,但学会推拉流并不是音视频的入门,而是要落地到业务场景,比如用开源自己做个直播产品,或者做一个开会的产品,或者做一个在线教育产品。涉及的就是多个开源产品的组合了,如下图所示:

如果有更多的活跃的贡献者,我就可以往开源方案做一做,结合多个开源项目,让音视频开发更简单。

为何不加入Apache?

Apache基金会是一个知名和开放的基金会,能加入Apache基金会孵化也是很值得骄傲的事。

SRS一直是一个中文社区,主要的用户也是在国内,音视频的业务规模也是国内更大,走得更先进。

木兰社区也是非常重量级的社区,也是开放的开源社区,我认为音视频项目,在国内开源社区孵化的优势更大。

木兰开源社区[1]是2018年国家重点研发计划“云计算和大数据开源社区生态系统”项目重点成果,由中国电子技术标准化研究院牵头,联合北京大学、国防科大、联想、腾讯云,以及开源中国、北航、中科院软件所、西南大学、华为、阿里云、浪潮、新华三、中电标协、中科院东莞育成中心、湖南酷得共16家单位共同承担。木兰开源社区立足中国,面向国际,联合汇聚国内开源生态圈相关方,共同打造国内开源生态,推动本土开源项目孵化,在推动培育开源贡献文化的同时,与国内外各开源社区融合发展。

隆重介绍下SRS的三位重量级导师:

 陈绪,江湖人称绪总,开源资深领袖,网上一搜一大堆的介绍。阿里云智能技术战略总监,主要负责战略规划、技术生态、投资评估、前沿技术等方向。同时任中国开源软件推进联盟常务副秘书长,从事开源软件工作超20年,对云计算产业有较深刻理解。过往经历主要涵盖开源社区,市场合作,战略规划,投资分析等。曾任Sun中国工程院工程师,北京泰宇科技技术总监,英特尔云计算战略总监等职。师从中国科学院高庆狮院士,2002年毕业于北京科技大学信息工程学院,获工科博士学位。2012-2014在清华经管学院学习,获EMBA学位。

 周明辉,北大计算机科学与技术系教授,在软件工程领域顶级国际期刊和会议 TSE、TOSEM、ICSE 和 FSE 等发表多篇论文,获 FSE 2010 ACM SIGSOFT 杰出论文;入选2012年教育部新世纪优秀人才计划;获2018年国家杰出青年科学基金。多次担任著名国际会议 ICSE、FSE、ASE、ICSME、SANER 和 MSR 等的 PC 和 PC Chair。主持制定了首个中英双语开源协议“木兰宽松许可证”并获得OSI 认证[2]

 单致豪,腾讯开源联盟主席,TARS 基金会董事主席。十余年互联网大规模系统研发、运营、管理经验,先后在百度、新浪、腾讯任职。负责过公司操作系统、应用安全、全球负载均衡平台、消息中间件、公共登陆、流程系统、运营平台、运营规划、资源及预算管理等。负责 TARS 开源的技术发展以及社区运营工作,把腾讯应用十多年的微服务架构体系推向开源之路,并且成为腾讯捐赠 Linux 基金会的第一个开源项目。

做开源还需要导师?那必须的,子曰“独自开源而无导师,则孤陋而寡闻”。

在中国做开源,国外的各种经验和模式不见得在中国能行得通,中国的开源一定要走出中国特色的开源道路。这已经不是想不想的问题,也不是愿意不愿意的问题,是必须得走的路。

要走出自己的开源的道路,靠自己摸索得走多少弯路,导师作用就非常大了,视野和格局都完全不一样,太重要了。

是否要换木兰协议?

协议肯定要换的,但会有个过渡期。预计SRS 4.0依然使用MIT协议,SRS 5.0使用MIT+木兰协议[3],预计SRS 6.0切换到木兰协议不再使用MIT协议。

其实MIT[4]协议,和MulanPSL-2.0[5],都是OSI认证的协议,都是国际认可的开源协议。而木兰协议也是BSD兼容[6]的协议,在开放性和商业友好上完全没有问题,基本上可以认为使用木兰协议,和使用BSD协议差不多。

至于为什么不用BSD而要用木兰协议,具体可以看为什么我们国家要搞自己的开源协议。我学习了下,一方面在语言上英文的协议有些不清晰的,特别是对于非英语母语的开发者来说;另外,木兰协议避免了互诉的漏洞。总之,中国开发者,用木兰协议就对了,阿里的重量级数据库OceanBase[7]也用的是木兰协议。

如何使用双协议,以及如何在代码中使用开源协议,Linux基金会定义了一个SPDX[8]的规范,Linux内核[9]也是遵守这个规范的。比如:

// SPDX-License-Identifier: GPL-2.0 OR MIT

POCO[10]使用的是Boost协议BSL,但也是遵守了SPDX规范,它在LICENSE[11]中加了说明:

Boost Software License - Version 1.0 - August 17th, 2003

......

---------------------------------------------------------------------------
Note:
Individual files contain the following tag instead of the full license text.

    SPDX-License-Identifier:    BSL-1.0

This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

这样在代码中就只需要简单的按照SPDX说明下用的协议,可以是单协议,也可以是双协议了,比如:

// Copyright (c) 2012, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier:    BSL-1.0

SRS 4.0使用MIT协议,也遵守了SPDX规范,参考67272f0[12],这样后续切多协议会更方便。

会不会沦为KPI项目?

KPI大法好啊,开源项目如果用上了KPI大法,那发展速度还不杠杠的。

来一起围观下SRS十年的KPI,现在一般改头换面叫OKR了,其实本质上没有差别,就是鞭策自我前行的大法:

SRS的目标(O)是:提升视频开发者的创造力。SRS的关键结果(KR)定义了三个:

 公众号100K关注:只有足够多的开发者关注,SRS才能反过来影响足够多的开发者,才能算提升创造力,如果只提升了一百个开发者的创造力,显然是不能算达到目标的。

 SRS 100K star:只有达到足够多的Star,才能说明开发者是认同SRS的方向,只有不断更新和把握了互联网视频的方向,才有可能提升开发者的创造力,如果拥有的能力是淘汰的能力,比如是赶马车的能力,影响足够多的开发者又有什么意义呢。

 100万开发者:音视频开发者太少,严重阻碍了各行各业的应用,而开源最大的贡献就是让开发者多起来。只有开发者多了,行业的应用才会繁荣,产生巨大的价值,社区和音视频的商业化也才会更有价值。

SRS将持续努力,不避锋芒,不媚逢迎,不辞风雨,不患得失,不畏将来,不念过往。

具体怎么孵化?

这次主要是给大家介绍下,为何要加入木兰社区孵化。我们已经开始探讨孵化的详细计划和时间表,初步暂定孵化SRS 5.0,因为SRS 4.0已经差不多在Release阶段了。

给大家再介绍下SRS的吉祥物,莲藕战神,打不死活得久:

以及木兰社区设计的LOGO,是我们孵化的第一个成果哦:

这个LOGO的含义如下,满满的文化和艺术气息:

后续消息敬请期待。

References

[1] 木兰开源社区: https://mulanos.cn/
[2] OSI 认证: https://www.163.com/dy/article/F9M6RV5N0511CUMI.html
[3] 木兰协议: https://license.coscl.org.cn/MulanPSL2
[4] MIT: https://opensource.org/licenses/MIT
[5] MulanPSL-2.0: https://opensource.org/licenses/MulanPSL-2.0
[6] BSD兼容: https://www.apache.org/legal/resolved.html#category-a
[7] OceanBase: https://gitee.com/oceanbase/oceanbase/blob/master/LICENSE
[8] SPDX: https://spdx.org
[9] Linux内核: https://www.kernel.org/doc/html/latest/process/license-rules.html#license-identifier-syntax
[10] POCO: https://github.com/pocoproject/poco/blob/master/LICENSE
[11] LICENSE: https://github.com/pocoproject/poco/blob/master/LICENSE
[12] 67272f0: https://github.com/ossrs/srs/commit/67272f0721db044d98e324df23bc0d2a3e8817c8#commitcomment-51515520

来源|SRS开源服务器

END

长按扫描二维码关注凌云时刻

每日收获前沿技术与科技洞见

投稿及合作请联系邮箱:lingyunshike@163.com

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值