天空下的雨

用乐观的生活,品味非凡人生。 博客搬家了,欢迎进入新博客:www.sh96.cn

的存档

30

Java开发者需坚守的十大基本准则【转自IT168】

  有许多标准和实践准则可适用于Java开发者,但此处要说的,是每个Java开发者需坚守的基本原则。

  一、为代码加注释。虽然每个人都知道这点,但有时却不自觉忘了履行,今天你“忘了”加注释了吗?虽然注释对程序的功能没什么“贡献”,但过一段时间,比如说两星期之后或者更长,回过头来看看自己的代码,说不定已经记不住它是干什么的了。如果这些代码是你个人的,那还算是走运了,不幸的是,当然了,大多数时候都是别人的不幸,很多时候大家都是在为公司写代码,写代码的人也许早已经离开了公司,但别忘了一句古话,有来有往嘛,为他人,也为我们自己,请为你的代码加上注释。

  二、不要让事情复杂化。程序员有时候总是对简单问题想出复杂的解决方案,比如说,在只有五个用户的程序中引入EJB、对程序实现了并不需要的框架(framework),之类的还有属性文件、面向对象解决方案、多线程等等。为什么要这样做呢?也许我们并不知道是否这样会更好,但这样做也许可以学到一些新东西,或者让自己更感兴趣一些。如果是不知道为什么这样做,建议多请教经验丰富的程序员,如果是为了个人的目的,麻烦让自己更专业一点。

  三、始终牢记——“少即是好(Less is more)并不总是对的”。代码效率虽然很重要,但在许多解决方案中,编写更少的代码并不能改善这些代码的效率,请看下面这个简单的例子:

if(newStatusCode.equals("SD") && (sellOffDate == null ||
todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null &&
todayDate.compareTo(lastUsedDate)>0)) ||
(newStatusCode.equals("OBS") && (OBSDate == null ||
todayDate.compareTo(OBSDate)<0))){
newStatusCode = "NYP";
}

  能看明白if条件语句是干什么的吗?能想出来是谁写的这段代码吗?如果把它分成两段独立的if语句,是不是更容易理解呢,下面是修改后的代码:

if(newStatusCode.equals("SD") && (sellOffDate == null ||
todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null &&
todayDate.compareTo(lastUsedDate)>0))){
newStatusCode = "NYP";
}else
if(newStatusCode.equals("OBS") && (OBSDate == null ||
todayDate.compareTo(OBSDate)<0))
{
newStatusCode = "NYP";
}

  是不是读起来容易多了呢,在此只是多加了一个if和两个花括号,但代码的可读性与可理解性就一下子提高了一大截。

  四、请不要硬编码。开发者经常有意“忘记”或忽略掉这点,因为有些时候开发日程逼得实在太紧。其实,多写一行定义静态变量的代码能花多少时间呢?

public class A {
public static final String S_CONSTANT_ABC = "ABC";
public boolean methodA(String sParam1){
if (A.S_CONSTANT_ABC.equalsIgnoreCase(sParam1)){
return true;
}
return false;
}
}

  现在,每次需要将“ABC”与其他变量进行比较时,不必记住实际代码,直接引用A.S_CONSTANT_ABC就行了,而且在今后需要进行修改时,也可在一处修改,不会翻遍整个源代码逐个修改了。

  五、不要“创造”自己的框架(framework)。确切来说,有数以千计的各种框架存在,而且大多数是开源的,这些框架都是优秀的解决方案,可用于日常程序开发中,我们只需使用这些框架的最新版本就行了,至少表面上要跟上形势吧。被大家广为接受的最为明显的一个例子就是Struts了,这个开源web框架非常适合用在基于web的应用程序中。是不是想开发出自己的Struts呢,还是省点力气吧,回头看看第二条——不要让事情复杂化。另外,如果正在开发的程序只有3个窗口,就不要使用Struts了,对这种程序来说,不需要那么多的“控制”。

  六、不要使用println及字符串连接。通常为了调试方便,开发者喜欢在可能的所有地方都加上System.out.println,也许还会提醒自己回过头来再来删除,但有些时候,经常会忘了删除或者不愿意删除它们。既然使用System.out.println是为了测试,那么测试完之后,为什么还要留着它们呢,因为在删除时,很可能会删除掉真正有用的代码,所以不能低估System.out.println危害啊,请看下面的代码:

public class BadCode {
public static void calculationWithPrint(){
double someValue = 0D;
for (int i = 0; i <10000; i++) {
System.out.println(someValue = someValue + i);
}
}
public static void calculationWithOutPrint(){
double someValue = 0D;
for (int i = 0; i < 10000; i++) {
someValue = someValue + i;
}
}
public static void main(String [] n) {
BadCode.calculationWithPrint();
BadCode.calculationWithOutPrint();
}
}

  从测试中可以发现,方法calculationWithOutPrint()执行用了0.001204秒,作为对比,方法calculationWithPrint()执行可是用了10.52秒。

  要避免浪费CPU时间,最好的方法是引入像如下的包装方法:

public class BadCode {
public static final int DEBUG_MODE = 1;
public static final int PRODUCTION_MODE = 2;
public static void calculationWithPrint(int logMode){
double someValue = 0D;
for (int i = 0; i < 10000; i++) {
someValue = someValue + i;
myPrintMethod(logMode, someValue);
}
}
public static void myPrintMethod(int logMode, double value) {
if (logMode > BadCode.DEBUG_MODE) { return; }
System.out.println(value);
}
public static void main(String [] n) {
BadCode.calculationWithPrint(BadCode.PRODUCTION_MODE);
}
}

  另外,字符串连接也是浪费CPU时间的一个大头,请看下面的示例代码:

public static void concatenateStrings(String startingString) {
for (int i = 0; i < 20; i++) {
startingString = startingString + startingString;
}
}
public static void concatenateStringsUsingStringBuffer(String startingString) {
StringBuffer sb = new StringBuffer();
sb.append(startingString);
for (int i = 0; i < 20; i++) {
sb.append(sb.toString());
}
}

  在测试中可发现,使用StringBuffer的方法只用了0.01秒执行完毕,而使用连接的方法则用了0.08秒,选择显而易见了。

  七、多关注GUI(用户界面)。再三强调,GUI对商业客户来说,与程序的功能及效率同等重要,GUI是一个成功程序的最基本部分,而很多IT经理往往都没注意到GUI的重要性。在现实生活中,许多公司可能为了节省开支,没有雇用那些有着设计“用户友好”界面丰富经验的网页设计者,此时Java开发者只能依赖他们自身的HTML基本功及在此领域有限的知识,结果,很多开发出来的程序都是“计算机友好”甚于“用户友好”。很少有开发者同时精通软件开发及GUI设计,如果你在公司“不幸”被分配负责程序界面,就应该遵守下面三条原则:

  1、 不要再发明一次轮子,即不做无用功。现有的程序可能会有类似的界面需求。
  2、 先创建一个原型。这是非常重要一步,用户一般想看到他们将使用的东西,而且可以先利用这个原型征求用户的意见,再慢慢修改成用户想要的样子。
  3、 学会换位思考。换句话来说,就是从用户的角度来审查程序的需求。举例来讲,一个汇总的窗口可以跨页或者不跨页,作为一个软件开发者,可能会倾向于不跨页,因为这样简单一些。但是,从用户的角度来看,可能不希望看到上百行数据都挤在同一页上。

  八、文档需求不放松。每个商业需求都必须记录在案,这可能听上去像童话,似乎在现实生活中很难实现。而我们要做的是,不管开发时间多紧迫,不管最终期限多临近,对每个商业需求都必须记录在案。

   九、单元测试、单元测试、单元测试。关于什么是单元测试的最好方法,在此不便细说,只是强调,单元测试一定要完成,这也是编程中最基本的原则。当然了,如果有人帮你做单元测试自然是最好,如果没有,就自己来做吧,当创建一个单元测试计划时,请遵守以下三条最基本的原则:

  1、 先于编写类代码之前编写单元测试。
  2、 记录单元测试中的代码注释。
  3、 测试所有执行关键功能的公有方法,这里不是指set和get方法,除非它们是以自己独特方式执行set和get方法。

  十、质量,而不是数量。有些时候因为产品问题、期限紧迫、或一些预料之外的事情,导致常常不能按时下班,但一般而言,公司不会因为雇员经常加班而对之表扬和奖励,公司只看重高质量的工作。如果遵守了前九条原则,你会发现自己写出的代码bug少且可维护性高,无形中质量提高了一大步。

27

压力真的很大

今天听王总说:我进入了项目小组,自然是非常高兴,能提前进行BS系统的开发了。

上午,项目总监给我们讲了整个系统的设计方案,感觉非常之复杂。因为刚学习JAVA,Struts,还没什么实践经验,就进行这么大的系统开发,压力特大啊。正如总监所说,给你们压力是让你们更有信心做下去。恩,应该对自己有信心的。 努力吧,加油!

十一就要来了, 明天下午就可以放假了。十一过后,就要面对项目开发了,估计假期不会很轻松的玩了。突然想起好久没和父母联系了,他们应该又在埋怨我了吧。这次十一又不会回家了,其实还是非常想念他们的。

对了,10月4日是我的生日耶,哎,看来又是平凡的一天了。现在天气又变了,秋冬的衣服也都在家里没带。我想买衣服,但买了衣服就没的饭吃了,现在又不好意思向家里要钱。我怎么沦落成这样?难道这就是所谓的最艰苦的时期?

我不会抱怨,因为我相信这一切都会过去的,即将到来的是美好明天。

23

10大免费英文流量分析网站

作为互联网公关和营销人员,了解目标互联网站点的数据非常重要,例如流量、排名,甚至是访问者的来源和其他特征。这样,才有助于选出最佳的合作网站,同时监控互联网营销的表现。幸运的是,目前有不少免费的工具可以使用,yanyuelong收集了10大免费数据研究、流量监测和用户挖掘的网站。

1. Compete:可以比较不同网站之间流量的变化和排名情况。还可以查看用户搜索的关键词,即类似于Googleinsights的关注点。以及获得自己定制的网站排名.

2. Cubestat:看看自己的网站值多少钱吧。

3. Xinureturns:分析网站在搜索引擎、网站排名中的情况。

4. Aiderss:评估每一篇博客或文章的分数,提出优化意见。

5. Quantcast:详细查看网站的访问者信息。

6. websitegrader,输入网址可以对网站做一个全面体检,提出SEO的建议。

7. Alexa:这个就不用说了。

8. Icerocket:博客的关键词趋势。

9. Twist:查看twitter上的关键词趋势。

10. 中文的比较少,我这里列两个吧。 互联网实验室的排行榜以及中国网站排名。数据不一定准,权当参考。

又看到一些,记录下来吧:

11. MyNetworkValue:看看你的社交网络值多少?

20

我的障碍是什么?

我看到过这样一句话:“在您眼中,一个人是不是有价值,那您就在他的一切欲望和一切行动的前面设置障碍吧。如果他真有价值,他将会排除或绕过这些障碍。”

我的障碍是什么呢?自卑、逃避和放纵、贫穷。我们经常犯错、经常困惑、经常思虑阻塞,但我们不能因此放弃思考、停止思考。如果说我还有什么可以挽救的话,也许就只有这颗疲惫困苦的心灵了。

我们认为从小长到大,再长到老,这就是生活。可是,这真的是生活吗?真正的生活是什么呢?生活就是追求的过程。

大学毕业了,这样这样的感觉更加强烈!其实,走出一步来,有时就是这么轻松。
勇敢地寻觅自己内心里真正的希求,发现它,然后追求它。我们也许还发现不了,也许发现了却不知所措,也许正在披荆斩棘。追求,是一种脚步,我们迈出步伐,我们才能看到脚印。

这些日子也算是经历了不少的波折,也学到了不少关于生存之道的东西,对于生活大概也就在失败中更容易学会成长吧。

又过了一天..每天就这么重复得过着。。。感觉有点空虚,,一个人坐在电脑旁发呆。。不知道还要过多久。 时常对别人说:一个人过得很好的,其实也闷着呢,只是在安慰自己罢了。 为自己加油! 每天成长一点点! sh96.cn

18

[转]丁磊的新有道,比谷歌更google

    喜!我今天下午还在和techweb的罗亮、谷歌爱好者zousuper一起吃午饭,听两位帅哥讲下午有道推新版,原本觉得不会有什么新玩意,事实上,我的判断和偏执是错误的。

新有道(youdao.com):比谷歌更google

      新有道推出了新闻搜索、个性化主页、地图搜索、视频搜索和词典beta2版本,现在是网页、新闻、地图、视频、音乐、博客、书签、词典等全领域服务,也就是说新有道是一个全功能的搜索引擎了。创新是有道值得尊敬的地方,尽管现在它的市场份额还不大,我们应该尊敬坚持创新的中国互联网公司(因为这样的中国公司太少了)。

     值得赞扬有道的是,个性化主页做的很好,新闻搜索做的比百度、谷歌都强。谷歌有个性化主页,但是只是翻译版,新有道的个性化主页更符合中国用户的习惯,搜索首页的背景个性化算是中文搜索引擎的创新(美国ask好像玩过,不过中文的,有道是第一个做的)。

      新闻搜索news.youdao.com 很好很强大。早在去年,我的朋友frank(现在是宣亚国际传媒的副总裁)就和有道的市场总监胡老板交流过建立一个合理优良的意见舆论平台的想法,(frank是一位博古通今、中外通吃的才子,他对socail media的见解非常深刻。),晚上我和frank在谈只有有道适合做一个中国的technorati、techmeme:百度有技术但没有动力,谷歌中国受限于全球策略、张朝阳忙着做网游顾不上,转来转去只有低调的丁磊和技术积累深厚的网易团队最适合了。果然来了!很好!

      以后搜新闻用news.youdao.com 他们把新闻、视频、博客通过算法有效地整合了,一篇新闻介绍下面有相关的博客评论,同一页面还有新闻相关视频,更难得的是允许网友评论,看来有道的设计者们对新媒体的理解很到位,我很喜欢。

       最近的san.lu事件被热曝百度有关联,引起巨大反响,同时百度向内容扩展的速度很快,很多人在质疑百度的中立性,淘宝百度还在大打口水站。而这时候,低调的丁磊抓住了天时、地利、人和发布了全新的有道搜索,并表示“有道的发展目标就是一个中立、客观、包容的搜索引擎,不会去偏袒自家产品。”

 

笔者最后说几点有道能够得道的原因:

第一:中国雅虎搜索已死。市场还需要一个第三,有道可以在未来一年内争取这个目标。

第二:百度的过度市场化。这使得百度的品牌严重受损,给谷歌、搜狗、有道们追赶的机会。

第三:丁磊做产品我放心。丁磊和网易的低调运营风格会让他们能静下心来思考,我信赖他们做产品的能力。

第四:起点较低,不会被当作打压对象。百度谷歌很长时间内还是该领域的主要竞争者,有道可以悄悄地发展壮大。

10

我们大家都要各奔东西了

首先,今天是教师节,老师们辛苦了!

我们大家都要各奔东西了,昨天下午集齐我们寝室的人,大家聚了一下。

下午觉得太热,到网吧上了下网。 晚上吃饭喝酒,一起讨论人生,各自谈谈自己将来的打算,还说以后有机会大家一起开个公司,说了很多。一直搞到十一点左右。

 

未完....

06

[转]淘宝百度C2C正面交锋 淘宝屏蔽百度蜘蛛

  对于淘宝屏蔽百度蜘蛛,淘宝网公关总监卢维兴表示,淘宝上有一些用户的隐私数据是肯定不允许搜索引擎抓取的。对淘宝是否完全屏蔽了百度的索引,卢维兴表示对此还不清楚。

  今天实际上已经是完全屏蔽了http://www.taobao.com/robots.txt   可以看出

  User-agent: Baiduspider
       Disallow: /
       User-agent: baiduspider
        Disallow: /

  这个淘宝的蜘蛛门事件将是影响深远,既是拉开了淘宝与百度的c2c的市场正面交锋。也将是以后众多网站效仿的例子。

  从民间上,有一些这样的看法

  1 此举为断臂壮举。本来淘宝从百度来的流量越来越少,百度的人为干扰很严重,屏蔽是迟早的事情。与其以后等死,不如先揭竿而起。这个在历史上也有很多类似的经典故事。破釜沉舟,断臂 断尾求生。与其被百度炒鱿鱼,不如先把百度给炒了。

  2 屏蔽了,抢先让网民和舆论站在淘宝一边。百度最近几年的不公正搜索行为,已经在it界和站长界引起了公愤。

  3 可能是让网民增加对淘宝的依赖性 比如有些网民可能会从百度上搜索淘宝上的东西 这样一旦百度商城上线可能威胁到淘宝.让网民知道百度中搜索不到淘宝 必须去淘宝上选择.

  4 从51.com taobao.com 还有众多sns 和行业类网站的作为,大家是用闭门羹给百度一击。目前的搜索市场也能感觉出,专业的搜索还是google 是真正的做搜索的搜索公司。而百度只是为做公司而做的搜索, 短视和不公行为有失搜索的职业道德。

  5 如果这次淘宝成功的策反。将是给以后更多网站对百度等霸权的策反提供参考  相信很快,众多个人网站和行业网站,也将纷纷举起抗议百度搜索的大旗。 已经有一些被百度恶意降权和封杀的网站已经在结盟行动了。如果有一天 数千个某类行业网站突然宣布,全部屏蔽百度蜘蛛,都将给百度公关和权威性带来很严重的挑战。

05

[转]Google Chrome新浏览器即将掀起的的7大巨浪

上次写到4000字是陈士骏来台湾,这次再写4000字则是因为Google正式推出新的浏览器「Chrome」,震憾业界。 Google也厉害,其实在同一天也同步推出了Picasa人脸辨识功能,硬就是比Flickr出的其他的更上一层楼…而且有用,但,与Chrome比起来当然是不同的level的事件了。看到这位网路巨人的大动作,我也想从中试着拼凑出一些互联网上明后年可能产生的形貌,在这边记录下来!

认识Chrome,大家都从这篇蛮复杂的漫画开始。它开宗明义就说Google Chrome的特色目标就是更稳定、更快(它将原本Webkit下的JavaScript引擎再改写,降低记忆体且不至在高度互动程式中变慢或挂掉)、更安全(自动更新恶意网站与网路恶意程式清单并保护浏览器),全部开放原始码,还包括一个父母或情人最不喜欢的「完全匿踪」(incognito)功能,上网干什么事再也没人知道,就算有人来查勤也一关拍屁股走人了事……但,做浏览器毕竟是十年的功夫,Google Chrome仍然有些东西,似乎来不及做进去,譬如等页面的时候没有显示目前已下载多少(虽然此BAR通常也是供参考而已),也没办法轻松整理「我的最爱」等等。

重要的是,为何Google推出Chrome?

下载了Chrome试用,会发现原本在浏览器最头顶上的title栏直接换成浏览器中最重要的tab,整个画面完全的拉大,也让上面的tab(代表好多网页)与下面的toolbar(代表好多桌面软体)两边刚好形成「遥遥相望、相映成趣」的错觉。当你一直开着浏览器以最大化的模式在玩,等于就宣示了Google已经站到微软头上成为自己的作业系统,也透露了Google的野心。但,从时间点来看,微软的IE 8 beta 2刚于上周推出,Google表面上似乎想办法让「浏览器」这个重要的平台,不要被微软「绑架」走,以「微软」为头号对手(如果它真有预设对手的话),但仔细一点会看到,若要这样,不需要推出一个自己的浏览器啊。推出的话,无论是五年、十年来看,未免都太慢了,不如与Firefox的合作关系再更深一点?而且,尤其看看IE 6已推出七年至今仍有高达四分之一的使用者,有些使用者当初既然不会转到FF,现在更没理由转到Chrome。有趣的是,Google的最重度爱用者,与Firefox使用者很有可能是同一群,此地无银三百两,我觉得,Google Chrome的第一阶段的「假想敌」,想当然尔是Firefox也!而,我狂想,它还很聪明的等到IE 8推出才「跟进」,让舆论去与微软IE 8摆在一起比较,以巧妙的避掉直接与FF 3比较的机会,也以免掀起「Google想偷偷霸占网路开放气氛」的质疑。

但,Google是个商业体,当然不可能永远都将所有东西「免费」、「开放」,第一阶段先让FF的使用者也来使用Chrome后,接下来更有趣了,Google举足之重,足以改变整个全球互联网产业,这个角度来看,Chrome的推出,在明年后年已经不是在谁要打败谁的问题。对创业家及关心网路趋势的人来说,Chrome的推出,有以下七点可能带来的影响:

一、Google将以「速度」一统天下:Google的产品特色向来是对于一秒钟的延迟(latency)无法忍受,让网页快一秒钟也都要放鞭炮庆祝,因此他们一直很努力在「云端」将所有的硬体都修到他们眼中水准的程度,但在「地面」,也就是浏览器这端,一直碰不到。我们可以将Chrome视为这是Google再进一步加快它旗下所有APP速度的努力,或者更强烈的说,是Google试图更「拉开」它与其他网站的差异。要知道,网站的速度会严重影响使用该网站的意愿。介面不好用,用习惯也会变得愈来愈上手,但速度慢的,用了几个月还是慢,两个差不多的网站放在一起,速度快的永远领先(除了怪怪真正强的Twitter外)。一年后,使用Chrome的这群人,或许会发现Google产品的速度已经快到没有任何其他网站可以与之匹敌,更提升了一些人对于网站使用的「要求」,或许这个对速度的要求会苛到没有任何一个网站做得到,Google旗下的所有「民生产品」通通都一飞冲天了。

二、介面被强迫简化:为了抵抗第一点的发生,网站唯一与Google竞争的方式,除了砸钱买主机、调校软硬体效能之外,可能只剩下将网站「简化再简化」 ,于是,所有目前网站必须面临改站危机,牢牢的再被剥一层皮,完完全全的再简化一层掉,考验工程师、设计师。要把一个东西复杂很容易,要简化反而难。 Google在简化介面的确有它的一套,不但在它的网站上展现它简化的功夫,在Chrome也可看出它的用心,许多按钮或控制项都是「一体多用」,譬如搜寻框以Google的OmniBox技术,很聪明,敲一敲就变成了Google搜寻;譬如「我的最爱」,只需显示一点点,不像其他都一次拉好长,此页是书签或不是书签所显示的不一样。据那篇Google漫画认为,浏览器的功能,太多不好,太少也不好,所以他们要找到功能键中的「甜蜜点」(真少人听到这样用,甜到我心),以微软的备受争议的Office新介面来说,他们也是想找到甜蜜点,但讲法似乎就不是这样?但字体果然和IE与FF都还是有点不一样,这是因为它用的是Safari的Webkit当来做rendering。当然有可能是我们写得不好,但谁能真的跟得上现在这么多浏览器的速度?当市面上从一个浏览器变两个,设计师可号称两者支援为必要的;而从两个变三个,三个都支援则变成竞争优势;从三个变四个,又变得「能躲则躲」,从四个到五个的时候,只有阿呆才会真的完全去研究怎么用,剩下的全部就缩在一个小小的范围去改了,或许这也算是Google将全球网站简化的第二步。

三、Email再度重翻:Gmail在Google Chrome上面跑,显然是非常的快;我家的连线已经够慢了,它竟然就像桌面软体。你说,这有什么意义?有!尽管社群网站颇有后来居上之势,但email依然是目前网路上最普及的产品类别。 Google的收益、打企业,或许不会想到email,但做到社群、合作(collaboration)这部份,它一定会以email为进入重点,Google Groups里的email也扮演比其他传统group网站还要的重要角色。事实上,大部份的使用者都有不止一个信箱帐号,我有两个Gmail加公司的也用Google服务,所以我都是FF和IE各开一个,随时用两个不同的帐号登入,我想许多人是与我一样的状况,我现在常常开Firefox与IE,趁此可以开两个帐号,我可预见的是,以后我会随时开着Chrome,专门来收email,然后让IE与FF可以来看其他网站。这是许多大厂所不乐见的。

四、Google有机会借Chrome更近开发者:「Google OS」的野心是很明朗的,但很多人看「Google OS」,还得像一只章鱼四处扩张,抢下微软自己开发作业系统,又想抢下手机厂商自开硬体等,其实或许不必这样,这点,我觉得A VC讲得已经相当贴近,就是Google的策略比较像是想「抢着复制IBM clone」,要知道为何1980年代个人电脑会兴起,都要谢谢除了IBM本身就是一个完全可以复制并开放的系统外,最重要的是,微软其实也够开放的、聚集各路好手一起帮它开发应用软体,接下来才有网际网路的这种「更开放」的事。现在已经开放、开放、开放,开放的东西太多了,Google已经发现,最关键的并不是去做一个好用的平台,而是反而去「最贴近开发者」。所以它的策略,从Google Apps到Android通通都是做大量的开发工具,而Chrome也只可被视为让这些人「多一个选择」,就算使用者不选Chrome,那也没有关系,只要开发者选择就好,开发者只要对他的使用者说:「这个超好玩的网站实在太多AJAX,抱歉,只有Google Chrome才跑得动!」所以,Google OS早就存在,而且这个OS已经是无以撼摇的市占,它推Android,就有一群人会跟过去,现在推Chrome,促使大家以它为开发目标;下次推任何平台,都会跟着过去,这是它的OS。它走的正好是以前微软晕倒所成功的路线。

五、「离线浏览」透过Chrome更广为接受:Chrome对JavaScript最佳化,让AJAX更多变,成为「互动式网站」的首选,这招可说是一边赏拐子给Flash与微软控制项,RIA可以让网路和桌面结合呈现炫丽功能与画面,但对网站来讲最重要的还是「在地运算」(local computing)这件事,尤其是「离线功能」,早在两年前写的「不断线的网站」我就渴望它了。 Google Gears提供网站可以在local存取一个简单的资料库,并且在使用者桌面上加直接快捷键可在离线时亦可叫出。相较于Mozilla Lab的Prism,在Firefox 3竟然还不是标准,如TechCrunch所言,Gears在Google Chrome却已经变成标准内建,也就是说一装Chrome就有了Gears,也就是说使用MySpace、Zoho等网站就可以立刻使用它的离线功能,而关于Gears的设定也可以在进阶选项的「网页内容」栏位即可找得到,可以说终于把离线这档事提得非常高!当然有人是拿它来加强网站速度,但我不认为只有如此。觉得这个要点是,对许多人来说,「下载」一个浏览器的「扩充套件」(plugin)这件事,从来没有做过,我不能保证我的使用者全部都会下载套件。所以,我有一天,我可能在Mr.6加一个按钮:「要上飞机了?可按此钮则下载所有的Mr.6文章在飞机上慢慢看」。除了外加「祝你一路好眠!」(这是笑话),下面再加一句「请用Google Chrome」,下载程式或许比下载内建还简单。也就是说,Chrome或许将变成所有想制作离线网站的开发商的「第一选择」。

六、浏览器乍开所看到的「首页之战」:大家问,为何微软的网站还会是全球最常上的网站,台湾有时也在问,为何Yahoo!奇摩很难以打败,有时候,有一个不可抗拒的重要原因:因为,它们都被设成浏览器的首页了。 Chrome出来,大家想的也是这件事,Google已经靠搜寻引擎这档事成为许多人的首页,对于剩下的人则又施以「iGoogle」让这个首页更棒,那接下来Chrome假如有些人开始用,又可以做出什么比iGoogle还又进一步的东西,促使Google产品变成大家的首页呢?答案出来了:在「选项」里的「起始时」区块,看到有个选择是「开启下列网页」,而且可以一个又一个的「新增」,最后,它就在首页呈现好几个网站的首页图象让你点选。这招看起来不会「藏私」于Google,其实是在对Google好。我早就有一个问题,就是我不只想以Google搜寻当首页,其实很想将Gmail、Calendar等等设成首页,这样的方式我可以不必开页,它直接就在第一页显示了以上所有网页的最新的截图,我一点就看到我Gmail有没有新信等等,这场「首页之战」,Google Chrome显然隐隐的打得漂亮。

七、国际竞争:这点许多人没发现,网路虽然饱受国界之苦,各国玩各国的,但全球的「重度使用者」却是紧紧相连的;一有新东西,每个地方都会伸长脖子殷殷期盼,部落客也都会写,互相引用支援,这次Google推Chrome,短短两天,掀起全球重度使用者与部落客的大串连,以行销的角度来看,可成为一个很棒的数位行销案例,这就是网路品牌的「资讯力量」。麦当劳的品牌是连到胃,Google的品牌是连到大脑与手,它会透过键盘与滑鼠,马上传出去的;不只这样,Google虽然在组织与开发上以「bottom-up」出名,但它的全球行销却是漂亮的「top-down」,台湾这边的分公司也马上就在第一时间要开记者会公布,台湾的Google首页也同步放上了「新!立即下载Google浏览器(测试版)」(只是可能因为上得太急,「载」字好像使用了简体字,呵呵)像这样的「全球同步铺点」的动作,将会愈来愈突显Google的强。相较之下,记得在前阵子Yahoo!与微软的纷争中,Yahoo!拼命推新的产品与新的点子,但亚洲这边毫无动静,我认为,Yahoo!的总公司在全球就没有这么有由上到下的张力,或许是因为亚洲的分公司皆太强,自己的team也大,等于已经兵拆四处,不像Google这样一口气掀起全球的感染。当然,接下来Google是否能传染超过重度使用者,到全部的使用者,依然是个问号。虽然它把握这么多开发者,若台湾开发者不够众,又代表着什么意义? Google又要如何帮开发者以同样top-down的方式展到全球,这个,或许是我们可以继续期待的。

02

好想能开心的生活,什么都不想

这几天天气时好好坏的,偶而会下起小雨。

压力大了,就要释放。也许我还没有完全的让自己放松到那个状态,也或是太过于松散了吧?说不清楚自已是什么样的状态,真希望有个明理的人来帮我点破。心情好差,可以说是差到了极点,这时总会想起家人,想起朋友了。

好想能开心的生活,什么都不想,可是真的好象不行。也许这就是生活,也许我还要迷茫上一段时间,继续思考着怎么让自己开心生活,过自己想过的日子。不过那也许真的只是奢望吧...