开发一款软件的成本,免费开源软件推荐( 六 )


以开源教育为例 , 如果学生自己去学习,那么付出的成本将非常大,许多学生在大学中专门学习了四年计算机知识,还是不会编程;而我如果给出了学习的线路图,为学生提供辅导,学生的学习成本就可以下降很多 。经过两年甚至两个月的学习 , 就可以成为编程高手 。我为此付出了大量的时间和精力,因此就可以把学生节省下来的成本的一部分,作为费用收上来 。这就是利用了开源的稀缺性 。实际上开源软件完全可以利用其他形式实现赢利 , 我们可以见到尽管数学定理都是公开的,但这并不表明每个人都能够成为数学家 。要成为数学家还就需要付出很大的成本,这种成本就是稀缺性的源头 。
对于个人而言,由于找不到这种稀缺性 , 同样使得一些人不愿加入开源社区 。事实上 , 在开源社区内,你给别人提供了帮助的同时 , 也得到了非常多的帮助 。国外开源社区内的许多程序员都是利用了开源社区 , 最终他们提高了知名度,也找到了很好的工作 。因此,合作也能对个人产生价值 。由于国内只有很少一部分人真正理解开源软件的意义和规则,中国软件企业大多也是在按照专有软件模式在运作,使得国内参与开源社区的人太少 。因此,要想打破这个瓶颈,首先就需要把开源软件的含义讲清楚 。
虽然阻碍开源发展的瓶颈是商业模式问题,但要解决商业模式的问题又会涉及到方方面面的问题,这就使得阻碍开源发展问题变成了许多个,著名的 IT 评论人雁鸣先生把这些因素归结为普及程度低、公共资源稀缺、人才缺乏、开源项目少、厂商和社区缺乏合作、应用难以推广、服务滞后、源码不开放、标准不统一等九个问题 。
开源需要什么样的人才
阻碍开源社区发展的最直接的原因就是人气的缺乏,而要解决这个问题,除了要让开发人员明了开源的本质外,还需要让他们明白开源的发展究竟需要什么类型的人才 。对这个问题,不同的专家给出了不同的意见,但大致分起来,开源人才又可以分为社区内的人才和产业内的人才,这些人才当中既需要使用层面的人才,又需要高端的开发人才 。从数量上看,使用层面的人才需求较多,而开发层面的人才需求较少,整体人才数量将呈金字塔状排列 。
就开源社区内的人才来看,洪峰认为 Perl、Linux 等开源软件的创立者都是精英,而中国开源社区缺乏的恰恰就是这种精英 。开源社区需要各种层次的人才,有应用型人才,也有开发型人才,但就目前来说 , 急需的是高水平的开发人才 。要成为高水平的开源开发人才,要迈过一个很高的门槛,而国内迈过了这个门槛的人还太少 。怎么叫迈过这个门槛了呢?基本要求是把 Linux 内核研究过一遍 , 还要能熟练使用各种开发工具 。Linux 的内核压缩以后是 20M , 打印出来后相当于 60 多本砖头厚的书,国内很少有人能完成这个工作 。而这只是一个学习的过程,真正要成为能对开源社区做出贡献的人才,还要具有相当的创造性 。
洪峰同时认为,中国开源社区的成长空间是惊人的,北京有这么多聪明的学生,他们之所以没有加入到开源社区内,是因为高校没有给出适合学生的清晰的发展路线图 。如果我们给出他们清晰的发展路线图,中国的开源社区的发展将是充满光明的 。
在产业层面,刘澎认为要发展中国的开源软件,在现阶段所需要的不是精英 。事实上,也不存在什么精英 。所谓精英只不过是比别人早几年认识到了开源软件 , 如果宫敏先生当年不把开源软件引进到中国 , 会有另一个人把开源软件引进来 。Linus 写 Linux 内核确实付出了艰苦的努力,但并不是说另一个人就不可能完成这件事情 。Linux内核并不能直接应用,真正让 Linux 成为一种优秀的操作系统的原因,在于后期大量的工作 。