本文来自台湾 iThome 电脑报695期封面故事:开源吃掉全世界,系对国际开源社区领导者、传奇人物唐凤的访谈,其中也谈到了对中国开源社区的一些观察,认为中国的线上开源社区很活跃,其中一个突出表现是翻译。
可以跟我们介绍一下自己吗?过去的经历、背景,而又是什么机缘下,进入开源圈呢?我这二十年来都在做 Web 相关的工作,简历可以参考 LinkedIn 页面。 初次接触开源是在 1993 年左右,接触到 Peter Deutsch 等人开发的 Archie 检索系统,以及 1994 年 Annihilator 等人开发的 ES LPMud 系统。之后短暂参与 Gopher 超文本社区,但因开发团队(明尼苏达大学)要求收取权利金,所以转向 Tim Berners-Lee 新提出的 Web 架构,并参与相关的 Usenet 与 Perl CPAN 社区,之后一直持续到今天。 那您为什么会想一直参与开源社区呢? 其实当年还没有开源的概念(这个词出现在 1998 年),但已有作为其基础的黑客文化与自由软件运动。 当时因为自己对计算语言、人工智慧和网络社会很有兴趣,发现许多的工作者都在线上,相关的工具也往往都是开放的,所以会觉得作品跟大家分享是自然的事情,比较像一种生活方式。 20年是一段很长的时间,你的什么想法让您在这圈子待这么久? 开放的作品能触及到的人通常较多,而开源模式更是让愿意接力工作的人可以持续下去。 我想这是主要的想法:开站是一时的,开源是一辈子的。 一开始与现在的想法有什么改变吗? 想法没有改变,只是随着网络社会的普及,分享变得更容易了,也有更多人愿意参与。 参与开源社区的这段时间有遇过什么困难或是情绪难以接受的事,而萌生退出的念头过吗? 2006 年在巴西参加 CONISLI 年会时,因为对实作方式的取向不同,而从 Perl 6 社区退出,转向为开发 Haskell 语言。当时主要是想避免自己成为社区的瓶颈,现在看来是正确的决定,今年也将是 Perl 6 和 Haskell 双双迈向主流应用的一年。 这一两年台湾Open Source社区活动开始兴盛,您认为原因是什么?我想主流的开发平台(包括 Oracle Java 及 Microsoft .NET Core)全部开源化之后,软件开发社区与开源模式之间已经高度重叠,几乎没有差别了。操作系统更是以 Linux 与 BSD 为大宗,多年前的专属式授权系统也较为少见。 加上 GitHub 等社区网站的兴起,我想以开源方式做系统,这两年来已经为大部份IT工作者所接受。 GitHub在开源社区中扮演什么样的角色,有哪些因素使GitHub成为开源的汇集地? GitHub 首先是借由易用的 Web 界面,普及了 Git 的分散治理模式,几乎完全取代了以 Subversion 为代表的集中模式。 此外,GitHub 将源码、修订、瑕疵回报等开发过程的产物定址成键连资料,进而将它们转化成社会物件,因此取得了类似新兴社区媒体的网络效应,使 Google Go 和 Microsoft .NET 团队都放弃了自家的源码平台,移转到 GitHub 上开发,以争取社区支持。 台湾Open Source过去跟现在有什么不一样?之前主要由软件工作者参与,但随着创用 CC、自造文化的开展,现在文字、硬件、音乐、影像、设计、教育、政治工作者,也都开始参与开放文化,Source 的范围愈来愈广阔了。 可以给我们一些有趣的例子说明开源范畴的扩大,不仅只限于软件开发上? 文字如 Wikimedia,硬件如 Arduino / Thingiverse,音乐如 Blend / SoundCloud,影像如 YouTube / Flickr,设计如 Behance,教育如 Khan Academy / OCW,科学如 arXiv,政治如 g0v 等。 国际跟台湾Open Source社区有无差异?除了使用的语言之外,并没有显著差异。早年比较需要做翻译工作来连络社区,但现在自动翻译进步,参与者的英文大致都没有问题,因此国际连接的动能也很强。 开源跟社会运动间的关系?开源是一种协作的具体方式,而自由软件运动则是希望人们主动争取这种分享、协作的自由,两者是相辅相成的。 您认为亚洲的国家中,台湾在开源的表现如何(或许有个排名)? 可能因为我是安那其,开源社区也比较没有国家的观念,所以很抱歉无法提供相应的认知。 (今年的 OKFN 政府开放资料普查是有各国排名的,也许是最接近的数据了。) 那日本以及韩国等先进国家是不是开源社区也很发达? 我在开源社区认识许多日本朋友,在地社区非常发达,也多次造访当地的友人。 我没有去过韩国参与社区活动,所以并不清楚在地的情况。 中国的开源风气似乎也很盛行?例如网路资源的翻译等。 正如你所说,简体中文的线上社区很活跃,尤其是翻译的协作能量很强。 是不是国家政权的压迫,在网路的开源社区成了另一个宣泄的出口,但同时也打压了实体开源社区? 从中国友人处了解到的在地开源社区,往往是以企业与国家经济政策为推动力量,和台湾的草根发展方式稍有不同,但倒是没有听说实体社区被打压的情况。 OpenStack、GitHub在近年窜红的原因为何?和过去开源运作方式有什么不一样的地方?过去的项目运作模式,有像 IETF 那样任何贡献者都可以加入工作组的,但也有较为传统、科层式的。 GitHub 和 OpenStack 都是现代开源治理模式的好例子,前者是基础建设,后者则体现了具体的模式运作。 GitHub 和 OpenStack 对开源社区的发展有什么影响? GitHub 及其他类似的开源平台(如 GitLab 等),让没有软件开发经验的新手,也能渐进熟悉各项项目协作工具(持续集成、交互审核、待办事项等)。这降低了文字、影像、模造、甚至是数学工作者的进入门槛,让更多人能进入开源社区。 我有使用 Rackspace 的 OpenStack 服务,也理解它使运算平台的提供者与使用者,能有效合作出开源的各式基础建设,但其实我平日较常参与的是较为轻量的 Docker 生态系,以及同样基于 Linux Container 架构的 Sandstorm 社区。这类的“容器”技术,大幅简化了开源系统的部署:无论架设开发环境、串接网路服务、甚至整套系统的升级(如 Ubuntu Snappy)等,都较以往方便许多。 这让社区开发者可以花更多心思在“应用接口优先(API First)”的架构设计上,在节省技术支持时间的同时,也使“参与者”成为“贡献者”变得更加容易。 而在整体IT层面与商业模式运作上会产生什么影响? 关于降低参与社区的门槛,并且持续将维运简化后,会产生的影响,这里引用 2014 年 4 月我在 RailsGirls.tw 讲座会后座谈的部份意见: 我认为程式教学和服务业,将会变得非常分散。在 20 年前,我们有所谓“结蛹期”的概念。这是黑客词典 Jargon Files 里的一个词。它说,基本上要成为一个专业的程式员或黑客,你必须花三、四年的时间沉迷于电脑当中,你会完全打乱你的睡眠模式,一次写 20 个小时的程式。然后,到了某个点,你就会顿悟。这其实很像禅宗的想法。 一旦你到了那个点,所谓“零的转移、巫术的权势”,基本上你就成为一个巫师。一旦你成为巫师,正如松本行弘所说,所有关于性别、种族、年龄、国籍的差别都会消失。这就像《骇客任务》中 Neo 把一切都看成是绿色数字的一幕。到了那个阶段,没有东西能够影响你的客观判断。这也是一个非常禅宗的概念。 可是我认为这算是一个神话,主要是因为那个时候如果没有网路社区,要学习程式是非常困难的事。 现在有 RailsGirls 和类似的社区,我们就有了一个缓坡。你可以非常舒适地留在斜坡上的任何一点,还有很多人会在同一级阶梯上互相支持,不一定需要两三年的密集时间。用这种方式,你可以学上五、六年 —— 你甚至可以一天睡 8 个小时也不会退步。我认为这会大幅改变市场,因为除了业余爱好者和专业人士之外,阶梯上的每一点还会有细分的市场,这样市场和社区都会变得大很多。 |