Linux拜托你发展地更快一些吧
虽然本人比较尊敬微软,但是却对Linux世界有着不折不扣地迷恋,不仅因为我开发的软件几乎都要运行在unix平台上,而且由于我一直希望操作系统能有两支或三支力量来主导,这样就能构成良性的竞争。可是我们目前看到的情况是,光linux阵营就有好几十支队伍,而且这些队伍都有相当数量的用户(当然,这与windows没法比)。不要跟我说Linux其实是一支力量,这样的话可能你自己都不相信,这些发行版之间互相不买账,而且竞争激烈,除了共用一个内核外,很多东西都不一样。现在看起来,让这些队伍团结起来,似乎比linux和微软合作还要难(Nowell已经开先河了)。也许你想说这正体现了linux开放的本质,确实这一现状也不是某个人能决定的,就是因为linux太开放了所以大家都有自己的一套搞法,根本无法形成一个能构成解决方案的系统,只有系统才是有价值的,单独的模块没有使用价值。没有标准的开放就是一团糟。
发行版中Ubuntu可能还算是佼佼者,Fedora其实也不错,但是令我们感到很不解的是,在微软的系统中,总是后一个比较好的版本来接替前一个版本的位置。但是在Linux中,总是某个发行商替代另一个,往往是一群人发现某个版本比较好用,然后大家一窝风都去尝鲜,过一阵子又出现了一个更好的发行版,于是那个版本又开始热起来。这样给用户带来的迁移成本其实很大,所以造成了很多用户都不敢过多地相信某一个Linux发行版,因为他们不知道自己的投入是否值得,不知道哪一天是否又来一路英雄风光一阵子,大家总是处在一个等待的状态,等待更好的版本,等待戈多。。。不变的就是,硬盘里面那个飘在空中的windows
打造基于Google API的文章关联服务
这些日子一直有人在问我要Magike的“相关文章”插件,大家也不理解为什么像“相关文章”用户体验这么好的东西,为什么我不放到程序中。实际上我要说的是,像blog这种个人站点如果消耗自己的资源来做相关文章实际上是得不偿失的。首先是消耗服务器资源,相关文章的匹配查询是很消耗资源的,无论你做什么样的优化都是如此。其次是准确度也有问题,如果你想让查询更加轻便那么准确度就会下降。
那么有没有比较好的解决方案呢?答案是肯定的。我们可以通过google提供的API来打造完全适合本站的文章关联服务,如果你熟悉google的API你会发现它提供了一个叫做Google Feed Ajax的API,这个API可以跨域地实现feed的调用。没错,它是跨域的,但是通常我们都说AJAX是无法跨域的,难道google有什么独门秘笈或者后门吗,其实google使用的并不是ajax技术。如果你用过jQuery,那么你肯定知道jquery里面有一个getScript的API,它在1.2.0的版本后增加了一个新特性"across domain",就是跨域。在1.2.0以前这个函数是无法实现跨域的,因为它使用的是ajax方法把js从本域中取出然后执行,而1.2.0以后它是通过在header里面把script节点动态增加进去实现跨域调用的,因为我们都知道,script标签是可以调用其它站点的js脚本的,而一旦你动态的修改了header里面的节点,浏览器就会自动去下载并执行这些资源(这是浏览器的特性决定的),这种跨域的实现颇有些hack的味道,但是的确非常可行,因为已知的浏览器都支持这种方式。