日期:2014-05-17  浏览次数:20802 次

基于开源软件去开发商业应用
我曾经用Mono给公司做过一个大型的项目,这个项目一年给公司带来上百万收益。
Debian Linux + Mono 2.10 + PostgreSQL 9.0 + Apache 2.x
开发工具:VS2010 Express + MonoDevelop
用了一些零零碎碎的基于Apache、MIT、BSD许可协议的开源代码库。

挺稳定的。性能不错。

是一个B/S和C/S混合的项目,程序员都是一帮C#程序员。从服务器操作系统、服务器上的各种软件,到开发工具、使用的类库,做到了零成本。我敢说这是一次可圈可点的工程实践,在中国很少有企业真正考虑完全基于开源软件去开发商业应用,不是他们做不到,而是他们根本想都没想就认为这不可能。

我也不排斥使用商业付费软件,那些软件的存在也是有强硬的道理的。比如说,如果有一个项目一年能够为我盈利上百万,我在这个项目里花十几万购置服务器和商业软件还是很值得的。

商业付费软件、不开源但在一定许可协议下可以免费使用的软件、开源且免费的软件,以及一些开源但某些情况下需要付费的软件。。。现在的软件的选择很多了。在这里要感谢开源运动的发展,因为开源运动的发展确实倒逼一些商业软件的定价更合理,也倒逼一些付费软件推出Lite/Express这种免费版本。而付费软件也不得不做得更成熟、定价更合理、销售策略更灵活,否则用户有什么理由放着免费的东西不用而用你的付费的?

所以说,付费与免费、商业与共享、开源与闭源,这些都是相互促进的。我不同意有些人把他们放在对立的层面上。大家都是做软件的,有着不同的信念,秉承不同的理念,你做得好,用户自然选择你。不存在绝对意义上所说的Windows是Linux的敌人之类的道理,也不存在开源社区里的人就一定要痛骂M$的道理。

可能这话题扯得有点远。OK,收回来。

在你们公司,是否也考虑过基于开源软件去开发商业应用呢?
当使用一些开源软件的时候,是否也很在意它的使用许可,并小心翼翼地遵循呢?

欢迎探讨!

------解决方案--------------------
支持开源!!
------解决方案--------------------
回复了为什么还是0分~~~~~~~
------解决方案--------------------
都形而上学,无意义。

知识就是力量,知识就是金钱,和知识共享交流,本身有时就是矛盾。在今天的编程界,学习目的被商业利益半生不熟或有预谋地绑架,比比皆是。

拿楼主说的用开源软件开发商业应用,本身其实也是这样的事。所说的那些对付费软件的积极作用,难道不是幌子?如果不是,你们开发的商业应用为什么还收费?或者说收费也正常,但是不是可以把营利的一大半拿出来捐献给公益或者是开源软件的作者?因为那些核心主要的内容,毕竟是人家的劳动,而没你什么事,你所付出的劳动和那些相比起来,自己感觉能算怎样的比例?

作为同行,不想难为你,也许有时我也会干同样的事情。但我对第二行所述的事情,感到非常纠结和困扰,这不仅是目前很多软件业乱状归结的一个矛盾根源(当然不仅是这一个,也不是最主要和重要的一个,但的确是一个,尤其是对于自由程序员和小开发公司还有资深老技术人来说,在不同方面受其直接或间接影响也是很大的),也是未来如何走向的一个应该解决的问题。否则,我觉得将来软件只适合作为个人爱好兴趣而开发的公益性内容,而不适合再作为商品出现(网络对于文明程度的提升,完全支持这个顾虑不是很远的事情)。

说实话,我现在的想法是,如果有重新的选择,我一定不会以软件为业,而是象开始学习时的心态那样,只把它当作业余爱好。