互联网产品,永远是业务导向的,是个快鱼吃慢鱼的世界,在产品设计时,要减持用用80/20原则
来快速滚动,去满足用户的需求,mysql的发展又证明了这一点。现在经常看到一些人动则
设计一个“完美”而庞大的方案,设计出来倒也无所谓,但是如果硬要在一次迭代中完成,那就有问题了
from:http://www.infoq.com/cn/news/2008/05/david-mysql-success
MySQL创始人兼技术负责人David Axmark在主题演讲中从开源社区的角度分享了MySQL的发展历程,指出对开源产品而言,准确的定位和开放的架构是产品成功的关键因素。
MySQL从项目开始就很好地考虑到了商务价值,虽然所开发的产品(MySQL数据库)是免费开源的,但是为了能赚钱,很快他们就成立了一家公司。根据David的经验,免费软件和赚钱并非就是不可调和的,只要你找到正确的道路。
对MySQL来说,成功道路上的一个首要关键因素是产品的实际应用性,David回忆说:
到底MySQL为什么能够成功呢?首先我认为是我们解决了一个共同的难题。当时人们希望自己的信息能给发布给客户,并且能给在线浏览。这个问题虽然存在已久,但是一直未得到解决,MySQL的出现让这个问题迎刃而解。那时很多人,尤其是企业开发领域的人,虽然用了多年的数据库,对MySQL并不了解。而对从事互联网数据库应用开发的人来说,MySQL恰好迎合了他们的需要。
可以说,MySQL完全是随着互联网的兴起而发展起来的。在人们对MySQL还缺乏了解的时候,为了能多争取一些用户,MySQL尽可能地将安装过程简单化,并且为不同的系统都提供了简易的安装程序。但只有这些显然还不足以留住用户,MySQL在技术架构方面做了独特的设计,使得不论是终端用户还是合作伙伴都可以根据自己的需要定制MySQL:
MySQL到现在也没有一刀切的解决方案,用户或者开发人员根据自己的实际项目情况,可以在MySQL里选择不同的应用。你可以调整自己的数据库结构,而不影响客户的前端使用;你可以自己定制存储引擎等。
MySQL的架构是开放的,其他的公司可以在MySQL上做很多增值的应用,比如存储引擎方面的InnoDB;专注于数据索引领域的ScaleDB;甚至提供硬件系统的Kickfire,他们可以通过芯片技术和MySQL相结合,使得数据能给跑得更快,也能进行更快速的索引等。在跟踪新技术方面,当64位硬件技术推出之后,几星期后MySQL就提供了基于64位的软件平台。
除了准确的定位和开放的架构,David还提到开源社区里开发人员的反馈,开源产品背后商业供应商所给予的资源独立性,代码的安全性和良好的生态系统等,都会影响开源产品的发展。至于开发者所关注的MySQL和Sun的合作是否影响自己的发展,David表示说,MySQL和Sun都是国际性的软件公司,文化上的融合没有问题,另外很重要的一点就是Sun也是一个技术驱动型的公司,这对MySQL的未来发展是有益的。