第17章
上个世纪末,第一次网络浪潮兴起,NASDAQ冲到5200点的时候,另一个同时兴起的概念就是开源软件。所谓开源软件(Open Source Software)是指那些把源程序代码公开化的软件。为了外行的读者能够听明白,我们引用一段来自于度娘的解释:
“开放源码软件(open-source)是一个新名词,它被定义为描述其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。开放源码软件通常是有cht的,它的许可证可能包含这样一些限制:蓄意的保护它的开放源码状态,著者身份的公告,或者开发的控制。“开放源码”正在被公众利益软件组织注册为认证标记,这也是创立正式的开放源码定义的一种手段。
开放源码软件主要被散布在全世界的编程者队伍所开发,但是同时一些大学,政府机构承包商,协会和商业公司也开发它。源代码开放是信息技术发展引发网络革命所带来的面向未来以开放创新、共同创新为特点的、以人为本的创新2.0模式在软件行业的典型体现和生动注解。”
好吧,您可能还是没看明白,不要紧,有兴趣的话可以多找一些材料看一看。这里想说的重点在于这句话:“开放源码软件主要被散布在全世界的编程者队伍所开发”。事实上,这句话的描述是有问题的,因为在开源世界里,参与开发写代码的编程者大多数并没有“队伍”,而是个人,这里也包括非常多我国的软件工程师。
不太谦虚的说,在中国的开源软件界,作为当年中科红旗的创始CEO,我也算得上一号。开源软件不能说是从Linux操作系统开始的,但是Linux对于开源软件的贡献绝对是第一位的。
相比较21世纪初,开源软件刚刚兴起的时候,真正“能用”的开源软件并不很多,而且集中在服务器端。说“能用”有两层意思,一个是那个时候开源代码的质量,大多数的代码如果要用一定要做二次开发,而且有时候工作量很大。第二个是所涉及的技术和应用层面有限,很多东西是找不到的,只能自己写。
现在好多了。首先是软件的质量明显提高,不但在模块级,很多代码都是拿来就能用的,而且在产品级,也不用做太多的二次开发。当然如果你和我争论说开源软件中太多的BUG,您就是有点矫情了。毕竟开源软件不是商业软件,其“集市”方式的开发方式和开源+免费的模式不能像真正的商业化软件那样的高质量。第二个是在你能想到的大部分领域,在开源软件世界都能找到一些有用的东西。今天聪明的软件开发者都不会全部从头做起,当他们开始开发一段代码之前,一定要跑到开源软件社区里找找有没有能用的东西。
开源软件,为创业者带来了无穷的机会。如果你恰好可以拿一个开源软件来用,你创业的技术开发成本不就等于基本没有?
和开源软件相对应的,就是硬件的模块化。所谓模块化,说白了,就是组成一个产品的各个部件的集成度越来越高。就像盖楼中所用的“预制板”。预制板代替了之前一块砖一块砖地砌墙。现在的盖楼,“预制”的就不只是墙和楼板了。经常是一个房间一个房间的吊装,这样就大大加快了盖楼的速度。
硬件设计也是如此。想想看,当年的摩托罗拉和诺基亚,开发一个新产品要多长时间?小米手机用了多长时间就开卖了?这就是硬件模块化带到了好处。它降低了创业者的门槛,加快了硬件产品的开发速度。
开源软件和硬件模块化的开发模式带来更多的启发。往深处想,开源软件中的每一段代码都是有来源的,说有来源是说他的“作者”之所以把它写下来,一定是为了满足某种需求,从这个角度讲,在每一个开源“产品”的形成过程中就有无数个程序员收集了无数的用户需求并把试图满足需求的软件代码写了出来,然后又有人把这些代码做进一步的组织,以满足更大的需求,如是发展,逐渐形成像Linux、Eclipse、MySQL、JBoss这些大型的基本上拿来就能用而且基本上免费的软件系统。
资本界的“众筹”模式如今也是红遍天下,但“众筹”是由上而下的,也就是说,有了主题,大家凑钱。这和软件业的“软件开发外包”有几分相似。而开源软件是自下而上的,先有了一块一块的砖瓦,再有窗户门,最后有人把它改盖成房子。
在这个基础上,会不会产生更有趣的产品构成模式呢?比如“大家一起来做产品”?
也许会的。
也许有人已经这样做了。
【This chapter is finished reading】
“开放源码软件(open-source)是一个新名词,它被定义为描述其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。开放源码软件通常是有cht的,它的许可证可能包含这样一些限制:蓄意的保护它的开放源码状态,著者身份的公告,或者开发的控制。“开放源码”正在被公众利益软件组织注册为认证标记,这也是创立正式的开放源码定义的一种手段。
开放源码软件主要被散布在全世界的编程者队伍所开发,但是同时一些大学,政府机构承包商,协会和商业公司也开发它。源代码开放是信息技术发展引发网络革命所带来的面向未来以开放创新、共同创新为特点的、以人为本的创新2.0模式在软件行业的典型体现和生动注解。”
好吧,您可能还是没看明白,不要紧,有兴趣的话可以多找一些材料看一看。这里想说的重点在于这句话:“开放源码软件主要被散布在全世界的编程者队伍所开发”。事实上,这句话的描述是有问题的,因为在开源世界里,参与开发写代码的编程者大多数并没有“队伍”,而是个人,这里也包括非常多我国的软件工程师。
不太谦虚的说,在中国的开源软件界,作为当年中科红旗的创始CEO,我也算得上一号。开源软件不能说是从Linux操作系统开始的,但是Linux对于开源软件的贡献绝对是第一位的。
相比较21世纪初,开源软件刚刚兴起的时候,真正“能用”的开源软件并不很多,而且集中在服务器端。说“能用”有两层意思,一个是那个时候开源代码的质量,大多数的代码如果要用一定要做二次开发,而且有时候工作量很大。第二个是所涉及的技术和应用层面有限,很多东西是找不到的,只能自己写。
现在好多了。首先是软件的质量明显提高,不但在模块级,很多代码都是拿来就能用的,而且在产品级,也不用做太多的二次开发。当然如果你和我争论说开源软件中太多的BUG,您就是有点矫情了。毕竟开源软件不是商业软件,其“集市”方式的开发方式和开源+免费的模式不能像真正的商业化软件那样的高质量。第二个是在你能想到的大部分领域,在开源软件世界都能找到一些有用的东西。今天聪明的软件开发者都不会全部从头做起,当他们开始开发一段代码之前,一定要跑到开源软件社区里找找有没有能用的东西。
开源软件,为创业者带来了无穷的机会。如果你恰好可以拿一个开源软件来用,你创业的技术开发成本不就等于基本没有?
和开源软件相对应的,就是硬件的模块化。所谓模块化,说白了,就是组成一个产品的各个部件的集成度越来越高。就像盖楼中所用的“预制板”。预制板代替了之前一块砖一块砖地砌墙。现在的盖楼,“预制”的就不只是墙和楼板了。经常是一个房间一个房间的吊装,这样就大大加快了盖楼的速度。
硬件设计也是如此。想想看,当年的摩托罗拉和诺基亚,开发一个新产品要多长时间?小米手机用了多长时间就开卖了?这就是硬件模块化带到了好处。它降低了创业者的门槛,加快了硬件产品的开发速度。
开源软件和硬件模块化的开发模式带来更多的启发。往深处想,开源软件中的每一段代码都是有来源的,说有来源是说他的“作者”之所以把它写下来,一定是为了满足某种需求,从这个角度讲,在每一个开源“产品”的形成过程中就有无数个程序员收集了无数的用户需求并把试图满足需求的软件代码写了出来,然后又有人把这些代码做进一步的组织,以满足更大的需求,如是发展,逐渐形成像Linux、Eclipse、MySQL、JBoss这些大型的基本上拿来就能用而且基本上免费的软件系统。
资本界的“众筹”模式如今也是红遍天下,但“众筹”是由上而下的,也就是说,有了主题,大家凑钱。这和软件业的“软件开发外包”有几分相似。而开源软件是自下而上的,先有了一块一块的砖瓦,再有窗户门,最后有人把它改盖成房子。
在这个基础上,会不会产生更有趣的产品构成模式呢?比如“大家一起来做产品”?
也许会的。
也许有人已经这样做了。
【This chapter is finished reading】