这问题,我琢磨过无数次了。说实话,第一次看见阿里把那个什么——哦对,Ant Design——甩到 GitHub 上的时候,我整个人是懵的。大厂不都是藏着掖着吗?怎么突然就菩萨心肠了?结果呢,没两年,腾讯、字节、华为,甚至拼多多都开始往外掏东西。不对劲,这事儿绝不对劲。
你想啊,一个商业公司,代码就是命根子,为啥要公开?难道真是突然集体良心发现?哈,别天真了。这背后的逻辑,比电视剧还精彩。
真金白银的算盘
先泼盆冷水——开源从来不是慈善。至少对巨头来说不是。你看到的是代码,他们看到的是标准。还记得 Google 怎么搞 Android 的么?开源一个移动操作系统,直接把苹果之外的全给收编了。手机厂商用着免费的 Android,乐得省成本,Google 呢?搜索、地图、应用商店一套组合拳,钱赚得比谁都狠。
阿里开源 Dubbo 和 RocketMQ,也是这路子。一旦你的微服务全家桶用的都是阿里的组件——换起来成本可就高了去了。这叫啥?生态绑定,甜得要命。腾讯开源的 Tinker 热修复框架,同样如此。你用它,就得熟悉腾讯那套技术栈,招人也好招,因为市面上全是会这套的。等于说,他们花钱养项目,却定下了行业的游戏规则。高手过招,全在棋盘外。
不过话说回来,有些开源确实是防御性的。比如谷歌搞 Kubernetes,就是为了打破 AWS 的垄断。云厂商锁死客户?那就弄个开源的容器编排,让大家自由迁移。结果呢,Kubernetes 成了事实标准,AWS 被迫兼容。这招,叫以退为进。

开发者生态的阳谋

你可能不知道,大厂对程序员的争夺已经到变态的地步了。开源,就是最阴险的招聘广告。一个漂亮的项目放出去,文档齐全,代码优雅,全球的极客都跑来瞅两眼——呦,这公司内部水平可以啊。然后呢,就有人心动投简历了。省下多少猎头费,你算算?
而且,外部贡献者简直是不要钱的劳动力。我有个朋友在蚂蚁,他说他们开源了一款图数据库,本来内部就俩仨人维护,结果社区呼啦啦来了一群大佬,提 issue、修 bug、还帮着写文档。老板乐得合不拢嘴。等于说,你用全球的开发资源打磨自家产品,最后成熟了还能打包卖云服务。这算盘,响得我在北京都听见了。
当然,吐槽归吐槽。大厂开源的项目,有些真心牛。Vue.js 的作者尤雨溪,虽然不是大厂出身,但后来被挖角,足以说明开源大神的能量。现在你去面试,GitHub 上有个几百 star 的项目,比刷一百道算法题都好使。开源,成了程序员的硬通货。
开源的未来,赌一把?
上次跟一个投资人聊天,他说现在看 SaaS 项目,是不是开源直接决定估值高低。为啥?开源意味着更低的获客成本,更高的粘性。你免费给开发者用,等他们公司大了,不买企业版?不可能的。红帽就是这条路,几十年了,活得挺好。
但这模式也容易翻车。前阵子不是有个数据库开源项目突然改协议,限制云厂商白嫖,社区直接炸了。骂声一片。说实话,我能理解。辛辛苦苦写代码,结果 AWS 直接打包成服务卖钱,一分不给。这谁受得了?可社区觉得你背叛了开源精神。两边都是理,乱成一锅粥。

未来怎么走?我猜啊,开放核心会越来越多。核心功能开源,高级特性收费。或者像 GitLab 那样,代码全公开,但运维工具、安全扫描这些卖钱。总之,纯粹的、傻白甜的开源时代——过去了。现在全是戴着脚镣的舞蹈。
但无论怎样,开源这东西,确实改变了世界。Linux 服务器、Python 语言、万维网本身——没这些,今天的互联网就是个屁。大厂疯狂开源,动机虽不纯,结果却推动了技术普惠。咱们开发者呢?别光看热闹,挑几个好项目,扎进去学。哪怕只修复一个拼写错误,那也是你代码宇宙里的一颗星。
行了,扯远了。这话题要展开,三天三夜说不完。你呢,有没有参与过开源项目?或者被哪个开源工具坑过?评论区吐槽吧,我泡杯茶等着。
我问答网