虽然在过去的一年里,投融资市场在开源项目上发生了很大的变化,这种变化来自于 “资本寒冬 + 多数开源项目商业落地较困难 + AI 潮的资本分流”。即便是这样的一种不那么景气的大环境,但我们还是想说 “开源依然是一种很好的 distribution way,依然是一种不错的将产品送到用户手中的方式”。也有一种说法是 “distribution is greater than marketing”。
可是,提到开源就始终绕不过 “用爱发电” 的话题。“用爱发电” 这个词语最初是出自台湾的环保人士,他们反对核电站,主张用可再生能源来满足电力需求,他们认为只要有爱心和信念,就能克服任何困难和挑战。
当然 “用爱发电” 就是一个笑话,在开源项目上宣扬 “用爱发电” 的人不是居心叵测,就是彻头彻尾的白嫖党。例如 core.js 作者对开源社区一些人的失望透顶。
core-js 作者全职做开源维护 9 年,月均收入从 2500 美元锐减到 400 美元
另外,log4j 差不多也是一个同样 “惨状” 的项目,就因为一个严重的远程代码执行漏洞,引发了全球范围内的恐慌和修复工作,最后在这场危机中扮演重要角色的志愿者们却没有得到应有的尊重和感谢,反而被一些人指责、质疑甚至辱骂。
所以,独立开发者 or startup 们,如果选择了开源路径做产品,就先思考清楚自己的商业变现方式,大大方方地谈钱,再认认真真地做开源。不要不思考商业,冲进去就是一顿用爱发电。
下文我们将分享 3 个商业上比较成功的开源项目,它们的共同特点就是 —— 小而美、有趣、side project 发展而来、作者商业敏感。
tailwindcss 是一个快速开发现代 web 应用的 css 框架。最核心的点是提供了一种 utility-first 的理念,utility-first 这个东西其实也没有多神奇,就是一堆非常非常多的小组件,比如 button,文本框,甚至是一种颜色等等,总之 tailwindcss 就提供了一大堆非常零碎的组件工具集。utility-first 就为后面能够赚钱奠定了基础。
tailwindcss 目前在 github 上拥有 66k 的 star。npm 的下载量更是惊人,特别是在 2020,2022 两年出现了加速拐点。
tailwindcss 这个项目完全是作者 Adam Wathan 的个人 side project 发展而来,所以,我们每个人都可以重视自己的兴趣项目,也许某天它就给你带来了可观的物质回馈。哪怕是业余时间,今天国内的很多老板 or 管理者们也不太喜欢自己的员工投入时间到 side project 上;但很欣慰,我们也看到极少数团队的招聘 jd 上明确写着 “拥有自己 side project 的优先”。不用怀疑,我们做管理者的时候,也会优先考虑拥有 side project 的简历。
Adam Wathan 做的这个 side project 是一个链接分享网站,叫 digest,有点类似于今天的 hackernews。
最后,由于 Adam Wathan 和他的朋友忙于其他的一些项目后,就对这个 digest 的 side project 失去了热情,项目就被扔进了垃圾桶。Digest 这个项目虽然被扔进了垃圾桶,但 StyleSheets 被遗传了下来,也就是 Adam Wathan 在之后的其他项目中都直接 copy 了这个样式表。
几年后,Adam Wathan 又开始了一个新的项目叫 KiteTail。同样的操作,在这个项目中也是 copy 之前的 CSS 样式表,并且继续改进它。在做 KiteTail 的时候,Adam Wathan 就在 youtube 上开启了直播写代码,KiteTail 项目本身并没有吸引广大观众,反而是其应用的 css 框架被大家注意到,纷纷提出将 css 部分打包分享的 “无理” 要求。
这里不得不提倡一下,作为独立开发者要从 0 做起来一个产品并推向市场,一个可选的方式 —— 定下一个目标并对外宣布,然后 "build it in public" 。毕竟你没有专门的市场营销预算和资源。
本着认认真真开源分享的精神,Adam Wathan 和他的朋友们就开始着手对这个 css 框架代码进行了重新的设计、优化以使其能够满足更多的场景要求,然后完整开源。开源一年后,Adam Wathan 就辞职全职投入到 tailwindcss 开源项目中,期间 Adam Wathan 还和朋友一起写了一本书叫 《Refactoring UI》,这本书让作者获得了大笔的收入,这笔收入应该是支撑 Adam Wathan 稳定投入 tailwindcss 开源的关键。
tailwindcss 开源项目疯狂增长,大量的用户基于 tailwindcss 的一堆小组件去构建自己的 web 应用,也有不少聪明的用户基于这些小组件构建了应用模板,比如blog 系统、文档系统、电商等等,进行分享。随着 tailwindcss 的流行度不断上升,Adam Wathan 看到这里面巨大的潜在商机,于是创建了 tailwind labs 公司,并且推出了 tailwindcss UI 这个付费产品,它是一个基于 tailwindcss 的组件库,提供了大量现成的 UI 组件和模板,让开发者可以更快更方便地搭建网站和应用。tailwindcss UI 在上线后半年收入了 200 万美元。时至今日,已经不可同日而语,但 tailwind 依然是一个很小的团队。
可以看出,tailwind 提供 utility 开源工具集,有了很好的流量之后,再基于工具集封装场景化的商业解决方案。它这里的开源工具集和商业模板解决方案位于两个不同层次的平面之上,完全没有任何的冲突, 这就是一个很好的模式。总有一部分人群不喜欢自己去折腾工具,又或者是不知道如何更好的使用工具,这一部分人群就是目标客户,和开源社区的 hacker,可能根本就不是一个群体。
大家一定要意识到:tailwind 这里的开源工具和解决方案之间存在着非常明显的一条界线,跨过这条界线带来的价值增长异常显眼。比如,我们之前也做过云原生的开源项目,同时也是 to b 商业项目,从开源到商业项目之间的那条价值界线就不太明显,跨过这条界线后增加的价值很大一部分是在服务层面,这个对客户来说就不是一个很好的感受。其实,今天很多商业上的开源项目,都存在这个问题。
Sidekiq 是一个 Ruby 开发的后台任务系统。它由 Mike Perham 在 2012 年创建,全职投入开源工作的两年后,Mike Perham 就不认可用爱发电,高调宣布做 pro 版本进行销售,目的是让 sidekiq 可以永久地被维护下去,让社区能够长治久安。
Sidekiq 最引人注目的就数它的商业模式。Sidekiq 提供了三个版本:OSS,Pro和 Enterprise,Pro 和 Enterprise 都是商业付费版本。
最有趣的就是 —— 即便客户付钱买了商业版本,Sidekiq 作者也不会为其客户提供太多的服务支持(support),更没有私有部署的安装、调试,甚至是 POC 。购买 Pro 或 Enterprise 和使用 OSS 的唯一区别是客户可以通过电子邮件咨询 Mike Perham 本人,其次就是 Mike 会在每周五的上午 9 - 10 点提供视频答疑的时间。
Sidekiq 不是云服务,不是 SaaS,但商业版本的收费却是 SaaS 的订阅付费,每年需要 renew 。订阅制商业模式的核心在留存和续费率,为了让续费率高,大多数 SaaS 公司都需要提供完善的售后服务支持,但 sidekiq 却是一个例外,或许因为它本身就称不上是一家公司,只是一 “超级个体户” 而已。
Mike Perham 全职维护 Sidekiq 已经有 10 年以上,一个人能够用十年的时间投入到一件事情上,也是非常值得 respect。Sidekiq 在十年时间里积累了超过 1800 个 客户,累计收入超过 1300 万美元。Mike Perham 也可以走一条大众的路线,收下 vc 的投资,把 sidekiq 做成一个十亿美元的独角兽,但是他没有这样做,他只想按照自己的节奏做一些自己真正想做的事情。
值得我们思考的是: Sidekiq 如果诞生在 java、go、javascript 等生态领域,大概率就不会存在这样的一种成功方式,所以对于独立开发者 or startup 来讲,为什么一定要盯着大规模的主流市场不放呢?仔细想想自己的竞争力,主流市场的激烈竞争中能够很好地生存下来吗?找到一个利基市场、解决一个具体问题、收取合理的价格并为客户提供价值就足以创建一个有利可图且可持续发展的产品。
即便作为 startup,你要跨越鸿沟,去到一个广阔的天地,“你也应该先瞄准自己的利基市场,集中所有火力,快速夺取领导地位”。作为独立开发者,你可能不用跨越鸿沟,静静地待在自己的利基市场里也很舒服。
Dracula Theme 为 200 多款应用软件提供了主题适配,对接适配的对象(脏活累活)多了,壁垒自然就形成。光是卖主题,dracula 就收入了近 30 万美元,还有什么道理看不上主题呢?
我们认为主题这类产品,反而是独立开发者们最好的商业模式之一,一次性投入,永远复制销售,卖的不是技术壁垒,也不是客情关系,而是品味,是美。
Tailwind、Sidekiq 甚至 Dracula theme,他们的商业很小但很美,也很有吸引力,遗憾的是,不是每一个开发者都拥有如此的商业敏感性和商业执行能力,但多数时候开发者们还是无法从开源项目上赚取合适的利润。
“也许这并不是开发者们自己的问题,而是开源世界的利益分配方式不那么的尽善尽美,开源世界也许需要一个经济体系”
1953 在雷明顿兰德公司的 UNIVAC 上开发的 A-2 系统在向用户释出时附上了源代码。用户被邀请将他们的改进发给 UNIVAC。因此 A-2 被认为是第一个自由及开放源代码软件。
如果从 1953 的 A-2 作为第一个 “开源” 软件算起,到今天已经足足有 70 年的历史。 即便是从 Netscape 在 1998 年开放了其 Navigator 源代码,从而促使自由软件运动的爱好者们在 Palo Alto 的一次会议中提出并接受了 “Open Source” 一词的时间算起,到今天也有 25 年了。在如此长时间的开源历史中,大多数的开源贡献者、维护者都在 “用爱发电”。
在互联网兴起之后,部分站在开源顶端的项目还是能够获得不少的收益,诸如被捐赠等。但这些少部分受益的项目,事实上也大量依赖了其他开源项目,比如类库,就像 core.js, log4j 这类。我们可以去看看 K8s 依赖了多少其他 repo 代码,不是每一个项目都像 nginx 一样做出了最小依赖,最大化的自己写每一行代码。可是这些被捐赠、被 “天使吻过” 的受益项目,却并没有将利益合理的分配给他们依赖的开源项目,这多多少少有那么的一点点不公平。
好在,一些真正拥有 “大爱” 的程序员希望能够解决这些社区性 / 社会性问题,现在就有那么一帮人在思考如何将开源世界和 web3 结合起来,实现一个更加先进的开源协同和分配体系。这个基于 web3 的平台就是 tea.xyz,来自 Mac homebrew 作者 Max Howell 之手。
tea 是一个全新的软件包管理器,可以准确地分析出软件之间的依赖关系,基于这种依赖关系就能够更好地计算出在一个大的软件系统中,各个被依赖的开源项目的贡献占比,从而也能够将收益进行更加公平、合理的分配。这是一种将经济体系和开源世界进行的有机结合,它要解决的是一种具体的,社会性的经济问题,而不只是技术问题。
既然要解决的是经济问题,那么 tea 就需要公平的保证参与开源项目的各方贡献者都能够获得相关的利益,这里面就包括了开源项目的维护者、质量 review的人(Tea Taster)、依赖方、项目的捐赠者以及提供去中心化的存储方等等。总之,tea.xyz 不只是一个包管理器,它更是一个统一的包管理 infrastructure。通过这个 infrastructure,借助区块链等技术最终实现让所有的开源项目贡献者都能够被奖励。也许未来的某天,我们在开源世界分享的每一行代码都可能会给自己带来被动收入,这不是一件很美好的事情吗。
有兴趣的读者可以阅读 tea 的白皮书,深度地了解一下这帮人的宏伟抱负,白皮书传送门:https://tea.xyz/tea.white-paper.pdf
我们认为 tea.xyz 成功后,未来开源社区会更加繁荣和多元化。开源项目会得到更多的支持和奖励,从而激发更多的创新和贡献。同时,tea.xyz 也会促进开源社区的友好性和包容性。通过 NFT 和代币机制,可以让每个贡献者都能够获得实实在在的收益奖励,感受到自己的重要性和影响力。品茶师角色的存在,也能够提高开源项目的质量和安全性,增加社区成员之间的信任。
总之,我们觉得 tea.xyz 是一个充满伟大梦想的产品,它有可能改变未来开源社区的面貌,并为全球开源软件发展做出贡献。当然,tea.xyz 构建的这种梦想和抱负能否真正取得成功,还需要广大的开源贡献者一起参与,形成共识。
最后,愿每个独立开发者都能够找到自己满意的、可持续的商业。