软件为什么要开源?

开源软件有很多优点。总结起来,最重要的有三个。

首先,开源软件对用户权利的保护更加充分。举个例子,如果有一天微软公司不复存在,那么Windows、Office等原本由微软公司维护的软件很可能会因为没有人继续维护而被淘汰,但是开源软件就不存在这个问题,开源软件不会因为有人不存在而变得停滞不前。用户曾经花大价钱购买的386和486微机,现在只能当作一堆废品,因为缺乏性能优异的应用软件的持续支持,但是强大的免费软件却可以在这些386和486微机上很好地运行。

其次,由于开源软件分布广泛,开源软件的问题更容易暴露出来,这使得开源软件在解决这些问题时更加完善。

最后,开源软件更容易满足用户的个性化需求。由于软件中过度引入工程管理,软件的标准化程度越来越高。这当然可以增加软件开发的效率,但是这使得人们需要根据一个模型来操作软件。正常人用软件很方便,左撇子用起来很不舒服。随着手机和PDA等新产品的出现,这种个性化需求会更加强烈。因为开源软件的源代码是开放的,这些个性化的需求更容易得到满足。软件不能简单用工程来表达。在这个问题上,开源软件的开发方法给了人们深刻的启示。

创立软件联盟的刘鹏指出,开源文化是人类几千年智慧的结晶,是历史发展的必然趋势,谁也阻挡不了。今天,任何人都不可能否认互联网所蕴含的价值,但人们有没有注意到它在发展初期是什么样的?几十年前,互联网只有一些核心协议,应用价值并没有显现出来,但这并不会阻碍互联网发展到今天的样子。互联网本质上是发展初期的开源形式,今天的开源软件与此非常相似。发展趋势本身就有一种力量。Windows之所以应用如此广泛,是因为它符合现代操作系统的标准。现代操作系统的标准是一种趋势,Linux也符合这些标准,这使得Linux注定成为一个优秀的操作系统。

刘鹏也认为:“目前开源软件的发展进入了低潮期,这其实是开源软件发展的必经阶段。因为开源软件早期的商业推广模式有问题,所以出现了今天的发展低谷,说明这个低谷并没有超出发展趋势。我们在90年代中期采用开源技术解决路由技术,这个项目在商业上也取得了巨大的成功。其实国内有很多开源项目,比如Hopen,都做得非常成功。所以,面对暂时的困难,认为中国没有开源,认为开源没有希望,都是肤浅的。

中国工程院院士倪光南指出:“从产业层面看,以Linux为代表的开源软件增强了中国软件产业的议价能力,增加了软件的市场空间。一定要看到,国产CPU必须要有Linux的支持,否则太窄了,无法投入实际应用。”

开源的本质

在很多人眼里,开源就是只付出不回报。但开源的本意是“当程序员可以对一个软件的源代码进行读取、再分发和修改时,软件就进化了”(只要程序员对软件的某一部分进行读取、再分发和修改,就可以称之为开源)。即使是极其严格的GPL协议也只要求使用GPL源代码,而BSD协议只要求在最终用户许可中保留原始协议。

从这个角度来说,开源软件也可以像别人赚钱一样赚钱,开源和商业利益并不完全对立。在国内安全体系不健全的情况下,国内的软件公司和程序员完全可以通过使用开源软件来解决吃住问题。开源软件不仅包括Linux等系统软件,现在流行的ERP、CRM、知识管理、商业智能等都可以基于开源软件开发。

对于个人程序员来说,加入开源社区并非没有收获。国外很多程序员在社区培训中受益匪浅,成功人士也不少。国内软件工程技术人员很少参与大型开发项目。中软COSIX项目虽然失败了,但是通过这个项目参与大型项目开发的人员已经被国外几大软件公司瓜分了。但是,真正的问题是,程序员一方面抱怨没有项目可以实践,另一方面又不愿意加入开源社区得到锻炼。不管国内程序员怎么想,开源社区绝对是一个获取大型开发项目经验,扬名立万的好地方。

对于软件公司来说,开源是增加软件需求的好方法。软件发展到今天,由于工程方法的过度引入,软件越来越趋于标准化。对于个人用户来说,同样的软件对于习惯用右手的人来说很方便,但是对于习惯用左手的人来说就不方便了。对于企业用户来说,管理软件的使用必然伴随着管理方式的改变。但是,并不意味着管理软件带来的管理变革总是适合用户。这时,用户会提出系统必须与管理交互的要求。显然,开源软件更方便处理这类问题。

与国内软件公司对开源敬而远之的局面相反,Sun公司毫无保留地向业界公开了Solaries操作系统的源代码,微软也宣布将投入巨资开发的Windows CE 70%的源代码以象征性的5美元价格转让给业界。微软和Sun公司当然明白这样做的好处。源代码开放后,行业更容易形成基于某些产品的技术标准,这将为技术拥有者带来更大的市场。对于下游服务商来说,更容易为用户提供更好的服务。从表面上看,微软和Sun在服务市场上损失了一些收入,但这种损失会在产品市场上得到更多的补偿。

从根本上说,开源和非开源开发只是开发方式不同。开源方法开发的软件产品也可以通过不同的商业模式实现其价值。开源不是怪物,也不会让一些公司失业。相反,开源可以培养更多的高层次人才。开源软件可以应用于核心应用,创造更广阔的需求市场,从而改善软件产业环境。

来自CSDN网站的关于开源的调查显示,只有总人数的十分之一的人有“开源会让公司失去收入来源”和“加入开源社区意味着只付出不回报”的想法。明确不到3%的受访者无条件不加入开源社区;另一方面,十分之七的人认为开源有很好的商业前景,十分之八的人认为可以从开源中获得回报。

然而,日益成熟的开源技术与惨淡的生态环境形成了强烈的反差。开发者对开源的高涨热情也与开源社区的惨淡形成了强烈的对比。开源,被赋予了太多的使命,让我们感到前所未有的沉重。面对这些鲜明的对比,我们不得不开始思考一个问题:中国的开源之路在哪里?

中国开元路在哪里?

谈开源在中国的发展,这肯定是见仁见智的事情。这个问题的答案涉及心态、人才、政府支持、行业等多个方面。应该说经过几年的普及,开源在国内确实有一批粉丝,政府在这方面也做了很多努力。现在需要的是把这些力量汇聚成一股合力。因此,发展开源首先要保持良好的心态,然后选择正确的方法,最终实现开源成果向产业的顺利转化。当然,政府支持也是不可或缺的。总之,开源软件的推广是一个系统工程,需要太多的公权力和睿智的思想。

开源心态

对于很多事情,态度往往决定一切,开发开源无疑属于这种事情。从事过开源实践的人对开源行业的人有一个* * *认识,就是开源行业的人的浮躁。对此,无论是早期创立Turbolinux的Iris Miller,还是将开源软件引入中国的龚敏,以及开源实践者刘鹏,都深有同感。

开源软件行业的人比较浮躁,经常不听别人的话就开始批评。这时候如果他们能静下心来再听别人说五分钟,结果往往是五分钟后,这种指责就没办法说下去了,因为他们误解了别人的意思,自己的观点是正确的。其实浮躁不仅仅是国内开源的专利,国外开源也是。在Linux开发初期,Linus曾经删除了Linux系统的一些程序,遭到了身边20多位资深开发者的反对。这些人在网上公开发帖,称莱纳斯先生在决定是否删除之前,应该征询他们的意见。但是莱纳斯先生马上回复了这些问题,说他看了所有关于这些程序的文件,最后发现这是一个黑洞,保留这些程序的后果只会继续这些错误。最后,每个人都向莱纳斯先生道歉,并承认他们没有阅读所有的文件。

浮躁最大的后果就是容易得意忘形,于是开源变成了带有感情色彩的开源,Linux也一度变成了让人用了就想哭的Linux。* * *创意软件联盟副理事长刘鹏认为,发展开源,要从“进化”的角度看待开源软件。从“进化”理论的角度来看待开源软件的发展,就是从市场需求的角度来考虑开源软件的发展。开源软件成为具体产品后能否存活,取决于市场是否有需求。如果没有需求,靠指令强行生产,肯定会出问题,这个产品的寿命也不会太长。如果有需求,即使目前看起来很难,这个产品还是有生命力的,会有企业克服很多困难把这个产品做出来。如果用“进化”的观点来看待开源软件的发展,就不能忽视“拔苗助长”的现象。

洪峰则认为,开源软件的开发应该有一种学习的态度,因为这不是你今天投入多少,明天能产出多少的问题。很多知识都是人类几代人积累的结果。天才科学家花了1.50年解决了微积分中的琐碎问题,而解决根号问题却花了1000年。

与浮躁相伴的,还有一种心态,就是悲观。浮躁让人头脑发热,也会让开源的发展偏离正常的发展轨道。所以内心的狂热和现实的无情特别容易让人悲观。刘鹏对此谈了自己的看法。当开源运动陷入低谷时,刘鹏也感到失落。他觉得别人亏欠自己。这时有个朋友问他:“你没有缺点吗?”为此,刘鹏反思自己,认识到“我们为国家花了那么多钱,却做了很多失败的项目。这怎么能算是国家对自己的亏待呢?”在此基础上,刘鹏认为,要想克服困难,解决问题,需要保持良好的心态。对于从事开源软件研发的企业来说,不要总是埋怨周围的环境,要从自身寻找不足。反过来,经历失败也不一定是坏事,因为失败本身就是一种财富。刘鹏坚信,只有经历过失败,才能忍受困难,才能在艰苦的环境中生存。同时,刘鹏认为,面对暂时的困难,认为中国没有开源,认为开源没有希望,都是肤浅的表现。

开源的瓶颈

Linus和Richard stallman在创立开源软件的早期,并没有解决开源软件在未来的商业发展模式,使得开发开源软件的企业在经营上遇到了很大的困难。同时,现阶段中国的软件开发者要先解决吃饭问题,要先生存下来,才能谈发展。因此,开源社区在中国的发展缺乏物质基础。这些使得国内开源的发展不可避免地陷入低潮。正因如此,国内开源界人士普遍认为,缺乏良好的商业发展模式是制约开源运动发展的瓶颈。根据CSDN的调查,十分之四的程序员选择“自己有足够的经济基础”的答案,近十分之三的人选择“获得赞助或从中获得报酬”的答案。换句话说,如果商业模式问题解决了,十个程序员中有近七个会加入各种开源社区,这是一个令人兴奋的数字。

对于这个问题,开源运动的倡导者洪峰给出了这样的解释:开源发展的瓶颈在于开源软件厂商没有发现开源项目中稀缺的东西。传统经济学的出发点是资源的稀缺性。在这一理论的指导下,政府采取强制,商业软件强调竞争力。但是开源软件只有合作,稀缺性似乎不存在。开源厂商无法发现开源软件所蕴含的稀缺性,厂商开发的开源软件的价值得不到体现,从而为开源的发展制造了瓶颈。但是随着人类的发展,合作会越来越多的被采用。我们可以从政府法制建设的完善中感受到这一点。

以开源教育为例,如果学生自学,成本会很高。很多同学大学四年学了计算机知识,还是不会编程。而如果我给出学习路线图,为学生提供辅导,学生的学习成本可以降低很多。经过两个月甚至两个月的学习,你就可以成为一名编程大师。我在这上面花了很多时间和精力,可以把学生省下来的一部分费用收起来作为费用。这是利用了开源的稀缺性。事实上,开源软件可以通过其他形式盈利。我们可以看到,数学定理虽然是开放的,但并不意味着每个人都可以成为数学家。成为数学家也需要付出大量的成本,这就是稀缺性的来源。

对于个人来说,这种稀缺性的缺乏也使得一些人不愿意加入开源社区。事实上,在开源社区中,你已经帮助了别人,并且得到了很多帮助。国外开源社区很多程序员都利用了开源社区,最后提高了知名度,找到了好工作。所以,合作也能为个人产生价值。因为国内只有少数人真正理解开源软件的意义和规则,国内大部分软件企业都是按照专有软件模式运营,这使得国内参与开源社区的人太少。所以,要想打破这个瓶颈,首先需要明确开源软件的含义。

虽然阻碍开源发展的瓶颈是商业模式,但是解决商业模式的问题会涉及方方面面,这就使得阻碍开源发展的问题变得很多。著名IT评论人严明先生将这些因素归结为知名度低、公共资源稀缺、人才匮乏、开源项目少、厂商与社区缺乏合作、应用难以普及、服务滞后、非开源代码、标准不统一等九大问题。

开源需要什么样的人才?

阻碍开源社区发展的最直接原因是普及度不够。要解决这个问题,开发者不仅要了解开源的本质,还要了解开源的发展需要什么样的人才。在这个问题上,不同的专家给出了不同的观点,但大致来说,开源人才可以分为社区内的人才和行业内的人才。这些人才既需要使用层面的人才,也需要高端开发人才。从数量上看,使用层面的人才需求多,开发层面的人才需求少,整体人才数量会呈金字塔形状排列。

就开源社区的人才而言,洪峰认为Perl、Linux等开源软件的创始人都是精英,而中国的开源社区恰恰缺少这种精英。开源社区需要各个层次的人才,包括应用型人才和开发型人才,但目前急需的是高层次的开发型人才。要成为高层次的开源开发人才,要跨过一个非常高的门槛,而国内跨过这个门槛的人太少了。你说你跨过了这个门槛是什么意思?基本要求是学习Linux内核,熟练使用各种开发工具。Linux内核压缩后是20M,相当于打印后60多本砖头厚的书。在中国很少有人能完成这项工作。而这只是一个学习的过程。要真正成为能够为开源社区做出贡献的人才,你必须相当有创造力。

同时,洪峰认为开源社区在中国的成长空间是惊人的。北京那么多聪明的学生,却没有加入开源社区,是因为大学没有给出明确的适合学生的发展路线图。如果我们给他们一个清晰的发展路线图,开源社区在中国的发展将是一片光明。

在产业层面,刘鹏认为在中国发展开源软件,现阶段需要的不是精英。其实没有精英。所谓精英只是比别人早几年实现开源软件。如果那一年龚敏没有将开源软件引入中国,其他人会的。Linus真的很努力的去写Linux内核,但不代表另一个人不行。Linux内核是不能直接应用的,让Linux成为优秀操作系统的原因真的在于后期的大量工作。

刘鹏坚持的观点是,现在做开源软件的人缺乏奉献意识。很多开源的倡导者,在谈到开源文化的时候,看起来觉悟很高,但是在实际工作中,开发一个具体的开源项目的时候,往往要求月薪万元。从这个角度来说,开源软件的发展急需有执行能力和对开源文化有信仰的人才。此外,国内开源软件还缺乏复合型人才。从事开源软件项目的往往是最初的研究人员。这些人只能扮演“车间主任”的角色,完成上级领导给他们下达的生产任务,却无法实现从研发到技术成果转化为商业成果的全过程。因此,开源软件行业也需要学会与市场上最聪明的商人打交道的人。

刘鹏强调,这并不意味着开源厂商不需要高层次人才。相反,我们应该以科学的态度严格选拔人才。例如,一个职业篮球队需要一个右前锋。如果你找一个以前打左前锋的职业球员,问他能不能适应右前锋的位置,你可能会得到否定的答案。但是,找一个业余通才,可能会得到肯定的答案。但是他技术水平不行,最终还是会放弃。因此,我们正在寻找高层次的专业人士。

软件技术的竞争归根结底还是人的竞争,开源软件也不例外。从技术角度来说,软件的竞争不仅仅是钱的竞争,也不是代码量的竞争,更是创造力的竞争。也正因为如此,软件产业的发展应该把人才问题放在第一位,开源因为对人才培养有更好的效果,所以更有吸引力。针对开源人才的问题,IT评论人严明先生一针见血的指出,开源的发展急需两种人:使用开源技术的管理软件的开发者和开源教育的推广者。

政府支持是灵丹妙药吗?

在影响开源发展的因素中,政府支持一直是一个有争议的问题。韩国开源软件从业者可以夸耀自己的开源软件开发水平远高于中国,其中政府的支持必不可少。另一方面,我们也可以看到政府干预带来的各种负面影响。因此,政府支持是否是推动开源发展的灵丹妙药,成为中国开源发展道路上的一大难题。

在政府支持的问题上,洪峰认为,在软件的智力竞争中,首先应该允许多种形式并存;一方面需要有国家队球员,另一方面也要有个人球员。其中,由个体玩家组成的开源社区的成长与生产和学习环境有很大关系。为什么Linux诞生在芬兰而不是中国或美国?原因是芬兰赫尔辛基大学从20世纪70年代开始就非常重视操作系统的研究,积累了大量的书籍和代码。Linus在前人的基础上创立了Linux。但是,国内的生产和学习环境对开源的发展有很多限制。如果目前在资金控制上存在垄断,并不是每个有创意的人都能拿到资金。如果你想和别人分享你的想法,你必须出版一本书,但出版行业是垄断的;如果你想传播你的思想,办教育,如果国家不承认你的文凭,你就不能招生。因此,洪峰强调,在这个问题上,政府不应该是运动员,而应该是规则制定者。要让所有纳税人受益,政府要做的就是制定好游戏规则。开源的发展仍然是一个反学术垄断的问题。

洪峰也认为,开源软件的发展应该抱着“静”的心态,抛开浮躁。不一定要先把生活做好,再去搞开源软件,但是一旦过了基本的门槛,回报就来了。要知道,很多开源软件项目的创始人,在项目开始的时候也是经济很差,但是多年的努力却带来了一种超越层面的成功。但问题是目前整个环境太浮躁了。比如大学里要求一年发表多少篇论文,但没人统计这些论文中有多少获得了国际奖项,这些论文有多原创。IT行业的主要挑战之一是原创性。创造一个新的想法会带来巨大的好处。创意来自于人的头脑,不完全来自军团作战。因此,政府需要为开源的发展创造良好的生态环境,这是政府支持最重要的部分。

另一方面,刘鹏认为必须重新审视开源的保护策略。我们不能完全采用开源软件的保护策略。如果把开源软件当成温室里的花,它永远长不大。我们应该正视一个很有意思的现象:千百年来,人人喊打的老鼠比称霸世界的人类成倍增加,而被人们视为保护动物的老虎却进了动物保护园。目前开源社区遇到了一些经济困难,但中软、红旗、创创等开源软件企业自己运营也很困难,指望他们资助开源社区是不可能的。同时,国家资金应该只用于支持扎扎实实搞开源研究的人,而不应该落入那些打着开源幌子谋取私利的人手中。

其实还有一个影响开源发展的重要问题,就是对国产软件的有效需求不足。在凯恩斯看来,当企业找不到出路时,政府应该采取一些措施刺激经济增长,比如启动公共项目。同理,政府也要考虑,在同等条件下,政府可以将采购需求向国产软件(尤其是开源软件)倾斜。中国工程院院士沈昌祥说:“目前,我国迫切需要具有A级安全性的操作系统。当国内无法开发出A级操作系统时,我们不得不采用国外的产品,这是很多保密部门的隐患。正因为如此,国家正在大力发展A级操作系统,很多从事开源软件研发的机构都来找我,要求给一个机会。这其实是需求推动开源发展的一个例子。”

由此看来,在目前的情况下,开源的发展确实离不开政府的支持。政府支持成为开源发展灵丹妙药的前提条件是,首先不能用安排替代的方法来控制开源,其次要结合开源发展的需求在宏观上给予及时的政策帮助。

开源和工业

说到开源的发展,另一个不得不提的问题就是开源与产业的关系。业内专家普遍认为,开源软件的发展可以促进软件产业的发展,反过来,开源成果产业化后,可以解决开源商业模式的问题,使开源软件得到更好的发展。从这个角度来说,开源和行业是互利的。

关于开源与产业的关系,洪峰举了一个例子:在中国西部,人们因为吃不饱饭,就想到了开山,导致了生态环境的恶化,反过来,人们也变得更穷了。这就形成了恶性循环。现在政策反了,政府开始鼓励大家种树种草,给一些补贴。这样,生活环境改善了,就业机会也增加了,形成了良好的循环,人民生活越来越好。洪峰感叹,为什么不能把同样的方法应用到开源的开发上呢?

倪光南院士指出:“政府原来的做法是支持五六种Linux,这样每家得到的支持都不够。现在政府已经开始制定Linux标准来指导Linux的发展。目前,中国制定的中文Linux标准已经引起了一些国家、Linux社区和跨国公司的关注。”一个行业的健康发展需要不同厂商的竞争与合作,标准关系到整个产业链的方方面面。信息产业部副部长苟的话可以充分表达政府在其中的意图:“从过去来看,政府对企业的支持往往达不到政府要求的科研和技术开发成果。即使实现了,也会形成新的垄断。企业往往不愿意与其他企业分享自己的研究成果,最终无法实现政府通过单个企业推动某项技术产品形成行业主流产品的良好愿望。因此,在Linux的情况下,我们的政府将转向支持基础、开放、公共和服务能力建设,而不是仅仅支持一些企业的发展,依靠他们走这条路。”

早在80年代末,倪光南先生就提出了国内IT行业“无芯无魂”的问题。当时倪光南先生的建议并没有得到普遍重视。之后为了弥补操作系统的问题,走了一条封闭的发展道路。试想一下,如果当时我们通过开源解决了这些问题,我相信今天IT行业的格局不是这样的。从这一期我们不难发现,开源在整个IT行业的地位有多重要。

老话又说了,今天的开源已经走到了技术成熟,生态环境脆弱的十字路口,风险和机遇混杂在眼前。面对风险和机遇,我们必须明白,我们今天的行动将决定冰与火融合后中国开源明天的命运。