当我谈开源时,我谈些什么?

这本来是一篇打算投稿给《程序员》杂志的稿子,可惜他们用不上了。于是我就打算发在这里,欢迎大家多多批评。


关于开源,我有很多的感想,但是在一篇文章之中,我可以谈些什么呢?在与程序员杂志的编辑杨爽聊天时,我虽尚未理清自己的思路,却想到了一个听起来不错的标题《当我谈开源时,我谈些什么?》因为像这样一个看起来完全开放的标题,似乎什么都可以往里面装。简直可以随便涂涂就写出一篇形散神不散的散文了。

一、关于创新

那么,到底应该如何看待开源呢?近日我在读的一本书:美国的Steven Weber写的《开源的成功之路》其中说到一个非常重要的世界观的区别:关于人类的动机,具体到编写软件上,究竟是为了挣钱?还是像真正的艺术家一样就是为了创作和尝试?在比尔盖茨看来,盗版的行为,偷窃软件,让程序员免费干活,最终会抑制创新。而在开源黑客看来,发布软件却不发布代码,限制了合作的范围,也阻断了别人可能的改进和进一步创新。看起来,两边都说的很有道理,而且有趣的是,都在拿创新说事儿。究竟什么样的激励,才能激发更多更好的创新呢?是金钱?还是纯粹的爱好、乐趣和荣誉感呢?

公平一点说,如果没有软件版权、专利法、代码编译与加密技术,软件产业可能远远没有现在那么庞大,也难以养活像现在那么多的程序员。也许只会剩下一部分真正热爱编程,有没有钱都要编点什么的人了。但是,我更想从另一个角度来提问:“这个世界上,最重要、最伟大、最具有影响力的创新,有多少是金钱激励出来的呢?”

再提一个问题来问咱们程序员自己:“选择程序员这样以一个职业,是因为它能够有一份足够体面的薪水?还是因为它让我有机会创造一些改变世界的东西呢?”最能够激励创新的,难道不是创新本身吗?在《失控》中我读到过一段话,曾令我激动万分。研究人工生命的最高远的动机是“目前,普通的计算机程序可能有一千行长,能运行几分钟。而制造人工生命的目的是要找到一种计算机代码,它只有几行长,却能运行一千年。”如果我们能够创造出这样的代码,那简直就是一个程序员,最高的追求。

所以,在谈开源的时候,我想谈的第一点,是关于创新,是究竟什么样的模式,才能更好的激发创新?

二、关于生活方式

除了《开源的成功之路》,还有一本书,也很值得一读。Steven Levy写的《黑客–计算机革命的英雄》。豆瓣上有一位Pope写书评,非常精当:“这本书并不是很有吸引力,因为每翻过几页,就恨不得撇开书,抡起胳膊大干一场。”是的,那些黑客英雄的故事,令我们读来大呼过瘾,那样的生活、那样热血的日子,真是令人神往的日子!

在《黑客》的第二章,以非常概括的方式,介绍了“黑客伦理”:任何人与任何规则,都无法阻断人类的好奇心;没有权威,凭实力说话;你可以在计算机上创造出艺术与美;计算机可以让你的生活更美好……

如果你看了以后,也深有同感,那么成为一个黑客就是你自然的选择。成为一个黑客,就是选择一种生活方式,选择无尽的探索与创造;选择用键盘书写代码,来改变这个世界;选择向全世界展示自己的成果;选择和全世界的聪明头脑联接在一起。而对于黑客来说,无法看到源代码,无法了解事情是如何运作的,无法掌握与控制那些系统,这简直就是一种难以想象的罪恶。

所以,在谈开源的时候,我想谈的第二点,是关于生活方式,以及选择这种生活方式时,背后的信仰。

三、关于现状

我这篇文章,是用简体中文写的,面向的目标读者是国内的开发者。无法否认的一点是:现状的确不容乐观!

曾经我在CSDN接受过一次书面采访,CSDN的记者提了很多问题,整篇文章的标题是《拥抱开源从中受益》。但是,下面的跟贴评论,实在是令人丧气:收入可怜,没有属于自己的居所,开毛源;开源在咱们的社会主义初级阶段根本行不通。搞技术的都是穷人,开个狗屁的源;估计开源在中国,就是有钱,有房,有车,有老婆,有孩子,还没什么具体的事情干的人,无聊了然后去弄弄的东西;

这是现状之一。

在国内,我看到很多人自称屌丝。而程序员,则自嘲为码农。自我贬低,自我嘲讽,自怜自艾,自诩为苦逼。放眼望去,人家全是高富帅,官二代。唯独自己是看不到未来,买不起房的矮穷挫。

这是现状之二。

这个世界上有两种奇怪的逻辑(而且在国内都很常见),一种是“国外有一个好东西,咱们克隆一个吧!”,另一种是“已经有一个很好的了,我们为什么还要做一个?”。这两种逻辑背后,其实掩藏着同一种不自信,那就是:“我们不可能有创新,不可能做出更好的东西来,不可能后来居上!”这是何等的可悲!?

这是现状之三。

做开源的人,往往非常孤独。一个开源项目,默默的诞生,默默的改进,然后默默的停止,最后默默的消失。这样的孤独感,很多开源人都体会过。国内的开源人,还有一些特别的体会:被人质问:做这个干啥,又不能挣钱?被人贬低:国产的东西,会有好东西?被人反问:你们不是做免费软件的吗?怎么还要收服务费?

这是现状之四。

所以,在谈开源的时候,我无法绕过现状不谈。

四、关于良性循环

有一种常见的思维方式,就是分析复杂现象背后的因果关系。通常我们会发现一个循环依赖的因果链。既可以用于解释现状,也可以用来指导破局之法。简单的分析国内的开源领域,我们也可以发现这样的循环。因为缺乏足够多、足够好的开源爱好者,自然无法做出更多优质的开源产品;因为缺乏优质的国内开源项目,大多数开源产品的使用者,都习惯于在国外的开源社区寻找项目;因为大家的眼光都放在外面,作为受益者的个人用户与企业用户,也难以兴起回馈社区、捐赠开发者的念头;因为国内的开源人难以得到足够的赞助和支持,自然不会有很多人热心的投入开源。这样,开源人、开源产品、开源用户的循环依赖,就成了一个死结。

当然,如果乐观一点来看问题,我们也可以说:要建立一个良性循环的开源生态圈,既可以从任何一个要素入手,也不妨大家齐努力,从多个方向下手。日拱一卒、不期速成。逐步推动,总会有所进展。

如果要分一个轻重缓急,那么我认为给国内开源,找到更多的生力军,也许是可以优先考虑的做法。一方面要让更多的程序员意识到,即使不挣钱,做开源也是有收益的。我想引用微博上的两段话,来说明我的观点:@姜宁willem:知识改变命运,想通过开源项目获取知识,只要你愿意,地球上没有人能阻挡你。 在这里不拼爹,不拼公司背景,拼的是对技术追求的那颗心。 通过开源项目能实现个人价值,只是在国内这样的成功案例不多。 @Freeman小屋:相对于在闭源公司的工作,开源社区的工作决不会让你成为nobody,每一次代码提交,每一次回答问题,都是对你自身reputation的积累,并且你的工作都有track,想想找工作的时候你只要说我是某社区的谁就能拿offer了。而且,我特别希望在校的大学生,能够意识到这一点,在完全没有经济压力、思想又最为活跃的阶段,多多参与开源,绝对是有益无害,一本万利的好事情。

其次,则是帮助国内现有的,优秀的开源项目,找到用户,找到参与者,找到加盟者。让他们能够更好的发展起来,成为国内开源项目的榜样。诞生一个一个的成功故事,使得做开源,也变得越来越有吸引力。这方面的工作,我想CSDN、《程序员》杂志这样的社区与媒体平台,也许可以做得更多。如果能够出现国外那样的成熟的开源基金会,以某种公开、公平的方式,赞助各种开源项目。以及帮助那些顶级的开源项目,更好的走向商业化的方向。总之,可以做的事情非常多。

当然,帮助众多的、不知名的开源项目,能够出现、能够发展,则是开源托管平台这样的服务,应该努力做的事情了。在知乎,我回答过一个问题《GitCafe 这样的代码托管网站在国内的前景如何?》:我在盛大创新院工作,我们团队,正在做一个叫做 www.teamhost.org 的开源托管服务。说起来,还是GitCafe的竞争对手。在我看来,中国的开源社区,不是太多,而是太少太少。应该有至少10~20家,努力的、优秀的、互相良性竞争的开源托管服务社区,大家一起来做开源服务,不但竞争,而且合作。不但努力争夺用户,而且共同把开源的爱好者服务得更好。这样,中国的开源才能发展起来,而且发展得越来越好。

再其次,才是说服更多的企业,赞助开源。毕竟商业公司,不容易看到太虚幻的利益,只有实实在在的好处,才能够有说服力。当然,这个事情总是困难的。所以,对于这种困难的事情,说得太多意义不大,倒不如各自努力去做。

就此搁笔。

《当我谈开源时,我谈些什么?》有9个想法

  1. “总之,可以做的事情非常多” ~ 但是,作与不作毕竟不只是一时冲动就可以的,,,散文就是意思到了情绪到了就好,坚定的不解决问题的,,,- hacking 是什么, hacker 是什么,其实很简单的生活/学习/coding 的状态- 只是在中国,难以生存下去而已- 不过,如果有份正式工作,被压榨的没有到极限,出来折腾开源,的确是没有什么具体的力量可以阻止你的- 那为毛,各种场所吼开源的,都是 C*O 或是官员?- 有多少程序员,不是误打誤撞才进入 FLOSS 世界 的? 中国的高等教育一直在努力的扼杀自由精神,所有毕业生都在沉默的嘶吼: 怎么可以月入2万,有车有房有妞?!其实,都是被恐惶了的,只是,我们这些没有什么话语权的 FLOSSer,可以怎么传达这种知识我有,世界在手的淡定?更加简单的测试题是:当我家被强拆时,用什么代码可以改变这一情况?回答不能时,真心难以让小清新们愿意离开各种娱乐进入无尽的挫败后才能有一点点成就的 FLOSS 世界 ,,,

  2. 开源不是商业模式,而是分享模式,发布模式,合作模式,是一种向你的用户让渡版权的模式。在开源上寻找商业模式,我觉得应该抱着得之我幸失之我命的心态。不要在 SaaS 层面的东西寻找开源,没有意义,要往下走,往下走才能发现分享和合作的作用。

  3. 嗯嗯嗯,道兵总点出本质了,,, Hack 本身就是玩,玩自个儿想玩的,不能把生存压力当成借口,追求智慧与美是天赋人权,是任何现实无法剥夺的!除非我们自我放弃的,,,所以,FLOSS 多讲其中的乐趣,少讲商业模式,多讲让社会变的更好的趋势,少讲”成功学”…不过,向下,是最难的,要突破的知识壁垒最多…道兵总多出来分享些这方面的经验吼,,,

  4. 没错, Hack精神更多的是自我追求. 自我感觉和艺术家对艺术的追求更加类似把开源和商业扯上关系就有点类似将艺术家的艺术作品标上价格类似.-虽然是无奈的举动,却成为外人衡量艺术作品价值的标准.-成为越来越多”伪”艺术家所追求的(现在很多”行为艺术”家们做的也就是此类)-为了钱而进行艺术创作的艺术家不可能-那些打动人心,流传世界的艺术作品.不是艺术家将经济收入作为主要目的而创作的..(甚至有些艺术家活着的时候,作品一文不值,卖作品的钱还不够果腹.毕竟,像毕加索这样,人还活在作品就能卖高价的画家是极其少有的)一类比,我们就知道.我们这个行业也是类似的.- 有些人将这个职业作为谋生的手段,为的是养家糊口,供房供车- 有些人将这个行业作为投机的行业,初创投资,各种”云计算”/”移动互联网”/”电子商务”等噱头层出不穷. 像极了炒作某些艺术投资品的商人- 有些人纯粹因为个人爱好,对于心目中软件英雄的向往而走入这个行业. 不同的天分和努力使得他们走到了不同的高度.有多少人能长久保持着这种想法? 即便是以创新改变世界闻名的Apple,人们记得更多是也是乔布斯,而不是那个天才的沃兹利亚克吧.更多的强调开源的商业价值,可以起到发展壮大这个行业,推广这种模式的目的. 就像硅谷,也要靠着微软,HP这样名利双收的成功案例才能更好的激励后来者进行”创新”和”颠覆”为口号的产业发展.其实,我们恰恰就是过于”中庸之道”了. 资本主义的硅谷,宣传的是”再一次改变世界”的理想,”不作恶”的价值观,另一方面,实实在在的高薪水,高收入使得精神和物资可以高度统一. 我们这里, 初创公司和小公司一味的要员工不求回报的贡献. 技术职位得不到应有的重视,甚至要为了高那么一点点的薪水不得不屈就各种项目,技术,跳槽. 这样的例子太多太多..大公司又一味追求利润,加班,突击项目, 项目要短时间看到成效.所以, 在我们这里,即使是软件公司. 高层最关心的部门还是销售,营销. 而不是技术.因为在他们眼中,那些是能实实在在带来真金白银的部门. 而研发? 只是和工厂的生产车间一样的制造部门,甚至, 只是认为是个花钱的部门.他们不是不知道软件是”知识性”产品, 他们不是不知道IT产业是需要创新的. 可是他们也和我们的新闻联播一样,只是用嘴巴来鼓励创新. 就好像在审查的环境下,不会有百家争鸣的文学气氛, 从而也很难诞生出伟大的作品一样.微博上看到”现时的云计算感觉就和房地产行业的气氛一样”. 很有同感.在一个不适合文学家,画家,艺术家诞生的土壤上,也很难诞生出Hack和伟大的程序员. 内在的原因是一样的

发表评论

电子邮件地址不会被公开。