2025技术预测|AI研究与应用|小红书、华为仓颉的AI实践 了解详情
写点什么

专访 Kohsuke Kawaguchi:如何依靠开源项目养活自己

  • 2017-11-23
  • 本文字数:2416 字

    阅读完需:约 8 分钟

时至如今,开源软件已成为互联网的基石,过去曾敌视开源的公司如今比任何人都更急切的拥抱开源。

虽然开源项目很多,在 Github 上的开源项目数量已经超过 100 万,但很多个人项目无人维护,也没有人敢用,由公司创建的开源项目正在主导开源。部分发展较好的个人开源项目转向社区,如鼎鼎大名的 Linus 创建的 Linux 成立了基金会,依靠捐助和付费会员来维持开支,但也有另外一些项目走上了另一条路,就是基于开源项目创立公司。Jekins 和它的创建者 Konsuke Kawaguchi(川口耕介)就是其中的典型代表。

Jekins 和 Konsuke 的过去

11 月 18 日,由开源社主办的中国开源年会 COSCon17 在上海召开。Kohsuke Kawaguchi 在大会上做了《黑客觅食记——围绕开源项目创建一家公司》的分享,在演讲后,我对他做了一个简短的采访,了解了更多细节。

Konsuke 长的非常高大,简直不像个亚洲人,但稍微接触一下,你就会发现他行为举止十分彬彬有礼,十分照顾他人感受,正是典型的日本人做派。

平时,他喜欢称自己为 Hacker,意为充满激情,乐于探索未知的那群人。据他自述,Konsuke 从初中就开始接触编程,在读书期间就已经开发出一系列的共享软件。正是看上了他这份才能,Sun Microsystems 邀请他加入公司。Konsuke 接受了邀请,从此开始了在美国的生活。

在 Sun Microsystems 期间,Konsuke 开发出了 Hudson,也就是 Jenkins 的前身,后来正式创立了个人开源项目 Jenkins。随后 Sun Microsystems 被 Oracle 收购,在工作了一段时间之后,Konsuke 选择离开,并创建了自己的公司 InfraDNA,再后来 InfraDNA 与 CloudBees 合并,现在,他是这家公司的 CTO,提供基于 Jenkins 的企业级持续交付服务。

今天,Jenkins 已经是持续交付领域最知名的工具之一,在全球范围内超过 50 万台机器上运行,影响超过 100 万开发者,帮助他们进行持续集成和持续交付。今年 4 月份,Jenkins 发布新版本,带来新的用户界面 Blue Ocean,大大改进了用户体验。

基于开源软件创建公司

开源软件是很多开发者的兴趣和激情所在,像 Linus 一样为开源软件全职工作,可能是很多开发者的梦想。

Linus 创建了 Linux 和 Git,两个都是当今互联网的支柱。在 Linux 基金会成立后,Linus 开始全职在家开发和维护 Linux 内核。

Konsuke 在演讲中说,他相信开源是大势所趋,但现在存在一个问题,开源作者虽然花费巨量的时间精力贡献开源代码,为很多公司创造了价值,但他们本身很难从中获取合理回报。基于开源项目创建公司的想法由此而来。

在开源项目基础上做公司并非异想天开,之前红帽公司早已做出了很好的示范。红帽早些年通过维护 Linux 企业级发行版以及其它开源软件,向企业提供支持服务,目前已经是市值数十亿的大公司。

Konsuke 十分推崇红帽模式,并认为与红帽相比,开源作者亲自参与公司运作会在掌控开源项目发展方向、与社区协作等方面更有优势。同时在商业模式上更灵活。

Konsuke 总结了基于开源项目公司的商业模式:

  • 专业技术支持。由于开发者亲自开发项目,对项目了如指掌,因此可以很轻松的胜任此开源项目的技术支持。缺点就是个人精力有限,无法同时服务很多人。
  • 企业级产品。与技术支持相比,如果开发者提供企业级产品,他可以售卖给很多人从而获利。但是,面向企业售卖软件需要在营销、销售等地方投入很多精力。
  • SaaS 产品。通过付费订购的方式向用户每月收取一些费用。这种模式理论上可以服务无限多的人,随着云计算的发展,SaaS 模式也被越来越多的人认可。不过,这种模式也有一些不利的地方。仍然有很多人不理解 SaaS 的意义,认为自己通过开源项目也能搭建出同样的服务。另外就是 SaaS 提供商会不断的面临各种个性化的功能请求,你需要不断的拒绝他们。这并不容易,因为他们是付钱给你的客户。

Konsuke 最终选择了第三种,即他现在所在的 CloudBees 公司,向外提供基于 Jenkins 的 SaaS 服务。

开源商业化需要注意的一些问题

从项目招募开发者

运行一个公司并不容易,其它公司遇到的问题,Konsuke 的公司同样会遇到,而有些问题更为独特。比如人才——

由于你需要基于开源项目去开发和提供服务,你需要对这个项目十分了解的人。Konsuke 就提到,他们从 Jenkins 的社区招募了不少的开发者。这样的开发者可以保证他们是合格并且动力十足的,通过雇佣他们让他们在喜欢的项目上工作,可以更快的做出突破性的进展。并且,Konsuke 还发现这些开发者来自各行各业,他们背后的企业通常会对项目有需求,因此经常会带来一些销售线索,算是意外之喜。

但从项目招募开发者的前提是,这个项目需要一个运转良好的社区,有大量的开发者可供选择。因此想依靠开源项目做公司,需要有意识的去培养社区。

另外,如果从项目招募了过多的开发者,也有一些风险,开发者会分不清到底是为项目工作还是为公司工作,一旦产生在方向上产生分歧,开发者受到的伤害会更大。另外,人们可能会认为公司正在操纵这个项目。另外开源项目中的开发者都跑去开发商业项目,开源项目的社区会有一些问题。

公司与开源项目的关系

Konsuke 指出,一旦开源项目创始人或重要人物基于项目创建公司,有时会很难把握公司与开源项目之间的边界。

比如,公司员工应该以何种程度参与社区?在为开源项目布道时要不要宣传自己家的商业产品?公司和社区在开源项目发展方向上产生分歧怎么办?这些都是需要仔细思考并妥善处理的问题。

这其中一个较好的策略是尽量回源(work upstream),和开源项目使用同一份代码库,特性在内部开发完成之后合并回开源项目主分支。在开源项目发展方向上,尽早定下路线图,然后按路线图进行开发,避免冲突。

品牌和商标等

一般开发者可能对于商标等法律术语不太了解,但如果要建立公司,这些是非常重要的,最好在开源项目时就考虑好这些事情。

另外对于公司来说,开源作者的个人品牌对于招募人才、推销产品也是非常有帮助的。

结语

开源项目是有价值的,但开发者的时间也应该是有价值的,Hackers gotta eat,如何靠开源项目养活自己,这就是 Konsuke 和 Jenkins 的思考和给出的答案。

2017-11-23 23:572598
用户头像

发布了 164 篇内容, 共 106.4 次阅读, 收获喜欢 392 次。

关注

评论

发布
暂无评论
发现更多内容

上新啦KIT

HarmonyOS SDK

HMS Core

谈谈我工作中的23个设计模式

阿里巴巴云原生

阿里云 云原生 技术文章

W3C发布小程序技术标准白皮书

Onegun

小程序 微信小程序

大数据培训前景怎么样?

小谷哥

前端哪个培训学习比较好?

小谷哥

小程序插件和小程序组件,有区别?

FinFish

小程序 移动开发 跨端开发 小程序插件 小程序组件

租便宜的云服务器能干啥?有什么好处?怎么选择?

行云管家

云计算 服务器 云服务器

极客时间架构训练营模块八作业

李晨

架构

2023跳槽一定不能错过的java面试集——前百度资深架构师整理

钟奕礼

Java 程序员 java面试 java编程

大咖说·图书分享|深入浅出Node.js

大咖说

node.js

预告|2022 星策 Summit 首批嘉宾确认,大会火热报名中!

星策开源社区

机器学习 开源 数字化 管理层 企业转型

java程序员京东T3岗面试回顾:多线程+数据库+中间件+JVM+spring

钟奕礼

Java 程序员 java面试 java编程

Java最常见的230道面试题,临阵磨枪,不快也光!涨薪指日可待

钟奕礼

Java 程序员 java面试 java编程

移动跨端框架发展史及优劣对比

FinFish

前端框架 跨端框架 移动端跨端 跨端发展

教育机构客户管理系统功能方案详解!

优秀

CRM系统 客户关系管理系统

工信部领导莅临2022南京软博会诚迈科技展区参观指导

科技热闻

前端培训中应该怎么学习web前端

小谷哥

移动跨平台技术方案选型建议

Onegun

移动端 跨端开发 跨端框架

SQL面试 100 问

FunTester

国密浏览器是什么?有哪些?有什么特点?

行云管家

国密 国密浏览器

面霸是怎样练成的?“2023”带你过关斩将,手撕面试官

钟奕礼

Java 程序员 java面试 java编程

火山引擎VeDI推出这款产品 助力企业实现以“人”为中心的数据洞察

字节跳动数据平台

大数据 数据分析 火山引擎

Function源码解析与实践

京东科技开发者

编程语言 Function 编程‘’ 后端、

web前端培训学习后还有做前端开发的吗

小谷哥

MobPush for HarmonyOS

MobTech袤博科技

应用 Serverless 化,让业务开发心无旁骛

Serverless Devs

2022年中国新能源汽车出海市场发展洞察

易观分析

新能源汽车 出海

大数据培训程序员都去做什么了

小谷哥

行业分析| 实时音视频的多种用法

anyRTC开发者

音视频 实时音视频 实时通信 语音通话 视频通话

技术实战:初创项目前端框架选型

FinFish

前端开发 前端框架 技术选型 移动开发

Go1.20 新版覆盖率方案解读

大卡尔

Go 测试覆盖率 11月月更

专访Kohsuke Kawaguchi:如何依靠开源项目养活自己_语言 & 开发_徐川_InfoQ精选文章