Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/samsongli/meirendaddy.com/blog/wp-includes/kses.php on line 948
February 27, 2010

刚才收到我在北京的网友来信,全文如下:

http://help-yifan.org/situation.html

为呢照顾小怡帆,潘家父母亟需在波士顿儿童医院附近寻租房.

大概一年左右.不知道有没有在波士顿的热心朋友能帮忙给点建议之类的.比如大概区的选择,价位等.

多谢多谢

并祝大家

元宵月儿圆又圆,香甜汤圆圆又圆,亲朋好友更团圆,元宵佳节,

带着圆圆的祝福,希望你从今万事皆圆,全家团团圆圆!
************我是爱心分隔线************
各位走过路过,不要错过,帮忙敲下酱油瓶,传个话。了解波士顿的,给个建议,让他们全家能安安生生治病养病。我给大家行礼了。

Robert写了《思考:未来的web服务是否还需要用户注册的部分?》,提出中小型web服务可以不单独建立注册模块,一个可能的方法,是使用google或者facebook的账户服务。真的是有趣的问题大家都会考虑,我当年也写过《接着说facebook:facebook能成为网络身份证吗?》,当时马上要去深圳出差,没有继续写下去。文章的最后两段,其实说明了我对这种类似Microsoft Passport的第三方认证的考虑。

先说一下我对问题的理解吧:基本上,网络服务和用户之间,还是在沿用当年UNIX终端验证用户的方法:用户名+密码。非常简洁有效的方法,明码的用户名解决了名字空间里面冲突的问题,密码用来验证用户的身份。这是一个双向的契约模型:用户名用来唯一确定用户,密码作为主机和人之间的身份契约。

随着网络服务的增加,用户需要维护的契约越来越多,不仅在用户名的名字空间冲突逐渐增加,用户不得不选取各种用户名来代表自己,密码也成为更大的负担。为了减轻用户负担,微软提出了第三方认证的passport方法。基本上就是把各种锁的各个钥匙,变成微软一家的万能钥匙,只要开了微软这把锁,后面的锁都开了。

我在《接着说facebook:facebook能成为网络身份证吗?》一文的最后,给出了攻击这种万能钥匙的方法。就是假扮成passport的合作伙伴,在自家门面上,挂上和其他真正合作伙伴一样的锁,盗取用户的万能钥匙。这个办法不是我发明的,很早就有人用这个办法,骗取人们去看谁在MSN上面block了他们,然后盗取MSN密码。类似的,meebo这种让人们输入各种聊天工具密码的网站,也很容易被人伪造而盗取密码。

总结下来,这种万能钥匙失效的原因,是把原来的双方(主机和用户)契约,变为了三方(主机,用户,万能钥匙提供商)契约。三方契约本身并没有错,错在契约失效的时候,如何控制损失。在双方契约(用户名+密码)模型里面,用户和某个网站之间如果契约失效(如密码被盗),用户的损失局限于所有和这个网站相关的资料;而在万能钥匙的三方契约里面,一旦密码被盗,损失的是用户的万能钥匙,后面所有依赖这把钥匙的锁,全都可以被攻破。

尽管万能钥匙的方法不可靠,但是还是会有提供商去推广,因为掌握了用户的行为,就意味着商业机会。不过这种和用户利益背道而驰的方法,我不看好。契约过多的问题还是存在的,也会有新的方法最终解决这个问题。

刚才在buzz上看到朋友推荐另外一个朋友写卢安克,跟过去看了柴静写的这篇,还有卢安克本人写的一点东西,摘录几句,不评论,评论就乱了。

“目的是好的,但是是空的。”他说。

“空的?

“空的,做不了的,如果是有了目的,故意去做什么了,没有用的,没有效果,那是假的。

“你是说这样影响不到别人?”我下意识地喃喃自语。

“这个很奇怪,我以前也没想过,想影响别人,反而影响不到。因为他们会感觉到这是为了影响他们,他们才不接受了。”

/////////////////////////////////////////////

“当然会发生改变,改变自会发生,但这不是我的目的,也不是我的责任,也不是压在我的肩膀上的。”

“改变不是目的?”

“它压着太重了,也做不到”他说“但你不这么想的时候,它会自已发生”。

/////////////////////////////////////////////

“你知道还会有一种危险是,当我们彻底地理解了现实的合理性,很多人就放弃了。”这是我的困惑。

“那可能还是因为想到自己要改变,所以没办法了,碰到障碍了,就放弃了。我也改变不了,但也不用改变,它还是会变。”

“那我们做什么呢?”

“把自己的事情做好。”

卢安克自己说:

下载1997至2002年的文章 (在这本书里有很多因为当时不理解才写出的误解)

下载2003至2006年的文章 (写这本书的时候,我的理解能力已经好一些)

下载2007至2008年的文章 (写这些文章时,我已经理解了村民,但没理解城市)

因为获得的理解,我将就没有东西可写

February 26, 2010

能买到一个核和1G内存,250GB的存储,加上100瓦电力,构成的计算能力。

February 25, 2010

大学时候,学的最差的大概就是算法了。当时总是喜欢多想一步,问一下这个算法到底是为什么。结果老师也答不出。

同一个学期,学的最高兴的,是操作系统。教课的是当时的系主任,国内的操作系统大牛。听他老人家讲课,总是能深入浅出的理解里面的设计理念。比如进程的调度,以CPU时钟资源的公平分配为原则;比如虚拟内存的大小,是方便和节约的折中;比如缓存的分配,是历史数据向未来的有效预测等等。

那个时候就开始了解,其实算法,无非是人的决策,在计算机上面的表达。

后来到了这边读书,导师发明的算法,是解决路由问题里面对稀缺资源的调控。那个算法的精妙,就是引进了经济学的原理,让各个信号去竞争这些资源,稀缺的资源“价格”提高,使得某些信号转而去使用相对“便宜”的资源,从而达到资源调配的目的。

类似的,当我设计和他的算法相配合的算法的时候,也是把现实生活中的处理方法引进了算法里面,对于一个NP-hard问题,既然不能在多项式时间和空间找到最优解,那么就在处理的过程中,对某些“看似”最有希望的部分结果,进行拓展,最后得到一个相对优化的结果。

在web领域,因为有人的参与,就有了更多算法改良的空间。pagerank是利用了人多年在web上面积累的url数据作为网页权重的投票;相应的协同过滤,也是利用人的行为数据来提取人的兴趣。

但是在算法利用免费的人力进行优化的同时,基于这些算法建立的网络应用,也对人的行为产生了不可忽略的影响。在03年google的CEO Eric Schmidt 去系里讲座的时候,就有学生问他,如果将来大家都依赖google,不在网页上面添加链接了,google怎么办。Eric略一迟疑,说估计不会的。事实上,当google把AdWords引入以后,巨大的流量瞬间转变成了钱,人们不仅没有停止添加链接,反而变本加厉的建立起link farm以求在SRP上面占据首位。Google也不得不针对这些link spam进行算法的修改。

同样的,协同过滤虽然为Amazon带来了无数的新销售,同时也使用户的行为趋同。

February 20, 2010

Robert写了一篇很好的“Ideas 的演变 — How to kill too many ideas ”,里面提到ideas是如何从少到多,然后又从多到少,以及如何用scrum来管理ideas。我也经历过这个少-多-少的过程,所以看了以后很有共鸣。另外我也想说一下scrum的利弊。

先说ideas的成长过程。我看来,想法数量的变化,是随着对业界的了解逐步加深而变化的。在涉足互联网之前,我因为对计算能力的追求,一度沉迷于计算机体系结构。开始对提高计算能力,只局限于使用嵌入式汇编;等对计算机的体系结构有了了解,就深入到存储体系,以及针对流水线进行优化;后来接触到超长指令计算机,以及可配置计算,终于触及了数据流计算机;这个时候回头看看,忽然发现,原来很多的性能提升,其实并没有摩尔定律这么坚定有效,可以预测。于是很多对计算能力提升的想法,就变得不那么实际了,这个时候,ideas就少了。

对web也是一样。我对web的着迷,同样是出自对数据和算法的迷恋,开始接触web的时候,想法还不多,等对行业有了了解,想法就喷涌而出,但是像Robert说的,等到用自己的资源这把尺子去衡量的时候,实际的想法其实只有那么几个。这个时候,也才真正理解了业界前辈的叮嘱:idea is cheap。也就是到了这个时候,才认真的翻检所剩无几的几个想法,挑一个自己最有热情的,埋头做下去。这个时候,别人问起我有什么idea,我一般也说不出什么,倒不是不想分享,主要原因,是这个时候已经不是虚无缥缈的想法了,而是一个可以执行的行动计划,只需要机械的去执行,中间按计划修正目标就是了。

再说Scrum。Robert提到,把ideas按照和目标的轻重缓急,以及资源是否充足来排序,把不重要的ideas放到backlog里面。这个就是scrum的方法。这个我完全同意。我这里想说一下scrum以及敏捷开发的一些体会。

Scrum和敏捷开发的好处是灵活,但是也要注意,任何形式都是有优缺点的。Scrum的一个问题,就是很容易不停的因为目标变化而重新设计,最终导致不能交付。所以在Scrum的培训里面,会着重提出:要把系统进行“垂直”分割,做成有相对独立功能的,可以使用的模块,尽早完成某些分割,提交用户使用。这个原则放在典型的三段论web应用里面,就是要交付一个包括数据源,商业逻辑和web界面的完整子系统,这个子系统因为资源不足,功能不全,但是交付的功能可以供用户使用。这样的好处很多:可以快速开发,迅速获得用户,更重要的 - 获得用户反馈,维系团队斗志,探索新的方向等等。

当然这种垂直划分,也不是绝对的。因为应用不同,各个模块的份额和相互关系不同,机械的垂直划分,容易陷入困境。事实上,用户未必是公司或者团队以外的人,如果把团队内部的不同分工也当成客户,那么对应用的划分,就可以不那么机械了。

February 19, 2010

养过娃的人都知道,刚出生的小孩子,吃了奶以后,肚子里面会有很多气泡,需要把娃放在肩膀上,用手拍背,把嗝拍出来。

其实对汽车也是一样。我这次修完水泵,去小区里面试车。大冷天,我在小区里面绕弯,一圈,两圈,三圈,车温都还是冷的;到了第四圈,就看见车温升起来了,然后直奔红线就去了。幸亏我绕的弯小,一拐弯我就进自家车库了。

去手册查了查,说可能是温控器卡住了。我那个郁闷,因为温控器在水泵下面,要是那个东西卡住,我就得重新把车拆一遍。绝望之中我去找互联网大神求救,互联网大神不屑的问:你丫给车拍嗝了么?当然大神这次是用英文跟我说的:Did you burp your coolant system?

我顺着大神的指引一youtube,还真找到一堆东西,其实就是把散热器的阀门打开,然后把车打着,就看见阀门那里冒出一股泡泡,冷却液的液面也下降了不少,添上冷却液,继续轻踩油门,又不停的冒泡,最后等不冒泡了,液面也正常了,车就算把嗝拍好了,也不过热了。

http://www.nytimes.com/2010/02/19/technology/19china.html

The Chinese schools involved are Shanghai Jiaotong University and the Lanxiang Vocational School, according to several people with knowledge of the investigation who asked for anonymity because they were not authorized to discuss the inquiry.

This is like:

Scientists from CMU and students from University of Pheonix teamed up and launched the attack.

Which, requires tons of imagination, but not entirely impossible.

February 18, 2010

攒机器这个事情,也就是以前在国内才干,当时不仅自己攒,还带着我照顾的留学生攒。对,你没看错,我在国内照顾留学生来着。

留学生的故事咱们先放着,留着以后说。这个攒机器,就是去买一堆零件,回来自己配。以前在国内,跑到小店里面,买好CPU,主板,内存,硬盘,显卡声卡机箱还有显示器鼠标键盘,回来一拼就好了,然后再跑到光盘店里面去淘几张合集回来,或者干脆去同学那里抢,哦不,是借,我们读书人,怎么能干抢东西的事情呢?

现在攒机器其实也差不多,跑到本地的店里去买点CPU加主板的打折货,然后去网上买硬盘和内存机箱,回来装起来,再弄个Ubuntu就好了。一共也就400美元不到的样子,就拼出一台4核,4G,1TB的机器。这样算算,也就是100块钱+100瓦一个核,要是在家里弄一个16核的集群,需要1600美元,没准还有折扣。

唯一的问题就是,通过无线网做remote desktop还是太慢,还不能把集群全都扔到车库里面去。

February 15, 2010

那些韩国的笑话我就不重复了,总之是全世界的好人好东西都是韩国的,或者是韩国出品的。以前我一直以为,只有少数几个是真事,大多数是网友杜撰出来搞笑的。毕竟一个国家出几个脑袋里面进水的人也是正常,韩国这样的小国家,全国人们脑袋里面都进水,也是不太可能的事情。他们到底有4.7千万的人口。

可是这次去女儿学校看表演,可真是开眼了。几个人表演太空道,配乐开始是韩国的,然后就开始放《男儿当自强》。

Next Page »