大图书馆 #4 开源之迷

《开源之迷》[1]是“开源之道”[2]主创适兕所著“开源之道三部曲”的第一部。本书的“迷”是着迷的“迷”,旨在向读者介绍什么是开源,以及开源令人欲罢不能的优势。适兕在《适兕是如何生存的[3]提到,自己从 2015 开始运行“开源之道”,2018 年辞去全职工作,一心发展开源之道。开源之迷,一至于此。

本书发售前,我曾经应邀写了一小段推荐词,不过最后因为出版的原因没有随书印刷。这里附上原文内容,也可以对比只读样章跟读完全书以后体感的差别。

适兕老师将他多年关注、学习和参与开源世界的理解灌注在开源之道三部曲当中。这本《开源之谜》里,我最期待的内容莫过于“在所有人看见的地方工作”。这一章的名字取自适兕老师推荐的三十多本开源之书其中一本,开源运动之所以冠上这个名字,就有强调源代码及其研发协作活动的公开性的原因。如果你想知道开源协同为什么是软件开发模式的必然方向,开源协同的价值和做法,阅读这本《开源之谜》一定不会错。

在所有人看得见的地方工作

实际拿到本书以后,才发现《在所有人看得见的地方工作》一章非常单薄,前后仅十页的篇幅。除了引用 Linus 对外公开 Linux 项目的邮件以外,就是对想法公开、交流公开且归档以及流程公开几个点做了少数几句议论。姑且不说与同名开源书籍《WORKING IN PUBLIC》相比,例证详实程度和议论深度都难以望其项背,单是读完这十页的内容,留下的印象也不过是做什么都要公开,而对于为什么要这么做,具体可参考的案例和可能遇到的问题,则只字未提。

不过,后一篇《开源世界的日常》花了五十页的篇幅从源码到 DevOps 系统,从沟通渠道到市场营销,讨论了一些典型的用例,还算做了一点补救,但是还是没有讲清楚为什么要这么做,以及可能遇到的问题。

除去补充前一章的部分,《开源世界的日常》一章讨论市场营销的部分质量是不错的。开源 群的运营和发展不仅无需刻意避开市场营销,甚至应该主动思考如何让开源软件在市场形成强大的影响力。

Perl 群当中的相当部分成员会在 IRC 或邮件列表上讨论新功能和 CPAN 上新的软件库,目标用户是谁,如何高效地推广到目标用户群体当中。Apache 群在项目成熟衡量模型[4]当中,明确指出市场营销是参与贡献的一类。

适兕在书中提及了 站、博客和论坛等等渠道,并介绍了运作这些渠道所需的基本知识。我想这跟他多年以来运营“开源之道”项目密不可分。除了线上渠道,适兕在书中还强调了线下活动的价值和典型线下活动的案例。我在分享《How the ASF builds communities》[5]的时候也专门讨论了 Apache 群当中的线下活动,就是在赛博朋克化和个人原子化的环境下,强调人与人面对面的连结的重要性。

开源的范畴非常广泛

从适兕在本章和全书的举例当中,我也发现了一件有趣的事情,那就是开源的范畴是非常广泛的。

《开源之迷》一书中,适兕举例往往选择 Linux Kernel 及其相关的项目,这是因为他开发软件的时间里大部分是在和 Linux 发行版打交道。我自己撰文举例的时候,往往也举的是 Apache 项目尤其是大数据项目的例子,还有参与过的 Perl 群和 TiDB 群的例子。

除此以外,开源还有非常多的类别。

?区块链技术最初的论文是公开的,以太坊[6]是开源软件,HyperLedger[7] 也是开源软件。?应用监控系统 Apache SkyWalking[8] 是开源软件。?角色扮演游戏的开发框架 EasyRPG[9] 是开源软件。?Linux 发行版上广泛使用的办公软件 LibreOffice[10] 也是开源软件。?绝大多数编程语言要投入实际使用所需的编译器、解释器、运行环境、标准库和实用工具,几乎也都是开源软件。

可以说,现代软件开发,基本不可能离开开源软件。

不同项目的风格是不一样的,受到目标人群、技术领域和利益多寡的影响,在一个 群当中合理的规则或惯例,照搬到另一个开源 群当中,可能会面临水土不服的情况。这是我在《开源 区的治理模型应当因地制宜》[11]以 TiDB 群为例讨论过的问题。

开源世界的人物

要说《开源之迷》当中我最喜欢的章节,非《开源世界的人物》莫属。在这个篇章里,适兕充分发挥了向导的定位,从参与的普罗大众,到计算机科学家、程序员,再到律师、布道师、学者和商人,一口气从自由软件运动到开源运动再到今天,横跨多个领域介绍了与开源有关的关键人物以及他们的贡献。

本书定位就在揭示开源的迷人之处,适兕作为向导带领读者领略开源的魅力。我必须承认在阅读这一章节的时候,好几次我都为开源历史上出现过这样的人,他们做了这样的事而感慨不已。

其中印象最深的是适兕放在最初提及的“不起眼的推动者:大众驱动的开源”。在关注到开源世界的明星之前,在看到一个一个成功的项目之前,首先要强调的是开源软件乃至整个开源生态,能有今天的成就,包含了每一个参与者的努力。开源软件是每一个参与者添砖加瓦堆砌而成的,Linux 的贡献者已经超过了一万人,提交数超过了一百万个,这不只是一两个明星开发者的功劳,而是开源的胜利。

其他人物介绍也很出彩,这里不做展开复述,只讲几个名字。

Tim Berners-Lee[12] 和他发明的万维 构成了开源的平台基础,其代码本身是公共领域的,即任何人可以随意使用,其协作方式是日后有名的 RFC 模式,时至今日仍然有大量的开源项目采用。

最后,在写成这篇书评之前,我常引用本书对于“搭便车者”的论述,即如果只是作为消费者使用开源软件,缺乏上游思维,孤僻地认为可以和开源 群隔绝开来,其结果必然是“任由投喂,失去创新能力”。

总的来说,这本书对想要了解“开源”这个话题的读者来说,还是值得一读的。它可以是带领你探索开源世界的方方面面的一本介绍性书籍,适兕也是一名不错的向导。期待“开源之道”三部曲的后续两作发布,如同适兕所计划的一样,讨论清楚如何实践开源,以及为什么要做开源。

References

 《开源之迷》: https://book.douban.com/subject/35716759/
 “开源之道”: https://opensourceway.community/
 《适兕是如何生存的: https://opensourceway.community/posts/the_way_of_open_source/how-to-make-money-of-open-source-way/
 成熟衡量模型: https://tisonkun.org/open-source-guides/apache-maturity-model/
 《How the ASF builds communities》: https://www.bilibili.com/video/BV1ya411i7qr
 以太坊: https://github.com/ethereum
 HyperLedger: https://github.com/hyperledger
 Apache SkyWalking: https://skywalking.apache.org
 EasyRPG: https://github.com/EasyRPG
 LibreOffice: https://github.com/LibreOffice
 《开源 区的治理模型应当因地制宜》: https://zhuanlan.zhihu.com/p/397682701
 Tim Berners-Lee: https://en.wikipedia.org/wiki/Tim_Berners-Lee
 Richard Stallman: https://en.wikipedia.org/wiki/Richard_Stallman
 Linus Torvalds: https://en.wikipedia.org/wiki/Linus_Torvalds
 《大教堂与集市》: https://book.douban.com/subject/25881855/
 Eric S. Raymond: https://en.wikipedia.org/wiki/Eric_S._Raymond
 Fabrice Bellard: https://en.wikipedia.org/wiki/Fabrice_Bellard
 Tim O’Reilly: https://en.wikipedia.org/wiki/Tim_O%27Reilly

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91480 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年3月25日
下一篇 2022年3月25日

相关推荐