开源工具技巧架构师成长记

不在大厂,该如何从零开始推进开源业务

2019-04-19  本文已影响0人  zhanghuicuc

越来越多的国内大公司都开始参与到了开源事业中,既是展示公司的实力,又是挖掘优秀人才的一个渠道,更是对社区的反馈。不过,在大公司里,可能都有着成熟的负责开源工作的团队,如果你只是一个小厂里的一线员工或者leader,但是也有着一颗参与开源事业的野心,该如何入手呢?下面是我的一些思路。

确定开源步骤

如果是首次参与开源工作,为了降低各种未知风险,需要把这个事情分步来走。

注意开源和专利的关系

无论大厂小厂,都应注意保护自己的专利。开源前,对于已有的代码,务必确保相关的专利已经提交到了专利局;开源后,每次release新代码前,都要确认相关专利已经提出了。

License

如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种----GPL、BSD、MIT、Mozilla、Apache和LGPL----之中做选择,也很复杂。下面这张经典的讲解图一定能帮助你找到答案


image

开源代码的细节问题

目前开源的方式有几种方案可以选择或者组合。

  1. 全部开源。 几乎没有公司能做到把一个内部项目全部开源,毕竟一个商业公司会和一些商业用户有接触,这其中一定会涉及到一些license的问题,或者一些私有化的需求等,都不能直接开源出去。

  2. 将其中的某些模块以库的方式提供。 用库的方式提供出去,无非是不想让别人看到我们的实现,但是呢,这个模块又是一个必备的插件,没有这个模块,整个项目就跑不起来。以库的方式提供可能会让有些人感觉不爽,那么就可以先在内源过程中试试,根据实际情况再做决定。

  3. 部分插件不能向外提供。 如果你的项目中有些模块不能对外,但是在提供给商业用户的sdk中又必须要有这些功能,那么可以这么做:首先把各个模块的注册机制提出来,对外提供接口,在使用开源部分的时候,先把相应的模块注册进去,然后再使用。

除了开源方式的选择外,还要注意整理确定patch提交的格式\代码风格\命名规则。

在哪开源

有两种方式可以选择


关注公众号,掌握更多多媒体领域知识与资讯

image
上一篇下一篇

猜你喜欢

热点阅读