Google 需要性爱
看到一篇趣文Google Needs Sex,翻译过来。
Brad DeLong 给我们写了 两篇关于“Google遇到的麻烦”的文章(墙),这两篇文章基本上是说, 制造网络欺诈和网络垃圾信息的人会尽其一切努力来和搜索引擎进行博弈,这样一来,其会让搜索到的结果对我们越来越没有帮助(译注:百度的竞价排名成为了制造网络欺诈和网络垃圾信息甚至洗脑的温床)。于是,人们开始去使用其它一些影响地较少的搜索引擎,准确的说,是那些垃圾信息和欺诈信息的东西还不适应于这些搜索引擎。
这让我想到了Sex。
如果你查看一下进化论,你就会知道为什么有性繁殖是有进化性的,是有可持续性的,而进化也是需要巨大的成本的。
为什么自然界不用克隆来繁殖呢?我所理解的最有说服力的答案是—— 防御寄生生物。如果每一代的生物体都和上一代完全的一样,寄生生物就总有一天可以破解生物体的防御,就是为什么!如果我们的某个香蕉园里种植着“克隆香焦” ,那么一旦某种病菌传播开来,那么我们整个香蕉园里的全部香蕉将毁于一旦。所以,混杂基因的模式会让寄生生物或病毒更难破坏我们的防御。
因此,Google的 ...
编程引言补充
之前收集过《22条经典的编程引言》,发现还有一些未收录的,下面这些引言也很有意思的,希望你喜欢。
“The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.” – Tom Cargill
“最开始的90%的代码使用了程序员90%的时间,剩下的10%的代码也需要90%的开发时间”——Tom Cargill(这不就是中国谚语——“行百步半九十”)
“In order to understand recursion, one must first understand recursion.” – Author Unknown
“要知道什么是‘递归’,你首先需要知道‘递归’”——无名氏
“I have always wished for my computer to b ...
22条经典的编程引言
下面的这些经典的引言来自英文,也许有些我翻译的是不很好,所以,我提供了中英对照,如果有问题,请大家指正。
过早的优化是万恶之源。Premature optimization is the root of all evil!– Donald Knuth
在水里行走和以一个需求规格进行软件开发,有一点是相同的,那就是如果水或需求都被冻住不了,那么行走和软件开发都会变得容易。Walking on water and developing software from a specification are easy if both are frozen– Edward V Berard
Hofstadter 定理:“一件事情总是会花费比你预期更多的时间,就算是你已经考虑过本条Hofstadter 定理”。It always takes longer than you expect, even when you take into account Hofstadter’s Law.– Hofstadter’s Law
有些遇到问题 ...
笔记本电脑的发展史
这是一段比较有趣的历史,让我们回顾一下笔记本电脑的整个历史吧。可能叫便携式电脑比较好一点。
1970 – 1981 第一个便携式的电脑概念
上世纪70年代,Alan Kay 在 Xerox PARC开始有了便携式个人电脑的想法。到了1981年, Osborne 1问世,其由Adam Osborne创造。如下图。Osborne 1 有一个5英寸的屏幕,还有一个可选的电池,两个5 ¼” 软驱,一个 modem 接口,还有一个键盘。当时的价格是$1,800(包括一块电池)。
1981 – 1984 : Gavilan 和 IBM
没有多久Gavilan Mobile Computer公司也进入了这个行业。其第一个便携式电脑的原型和今天的笔记本电脑非常相似,而且只有4公斤重并且配备了一个可以运行9个小时的镍镉电池。无论是从性能还是设计上来说,在1983年,这已经是非常超前的。而且这是 Galvin 第一次向市场引入了“移动PC”的术语。
Osborne 1的出现后, 微软公司的Kazuhiko Nishi 开始了一个便携式电脑的原型,其采用了LCD显示屏,重量2 ...
惹恼程序员的十件事
程序员应该是一个比较特殊的群体,他们因为长期和电脑打交道所养成的性格和脾气也是比较相近的。当然,既然是人,当然是会有性格的,也是会有脾气的。下面,让我来看看十件能把程序惹毛了的事情。一方面我们可以看看程序员的共性,另一方面我们也可以看看程序员的缺点。无论怎么样,我都希望他们对你的日常工作都是一种帮助。
第十位 程序注释
程序注释本来是一些比较好的习惯,当程序员老手带新手的时候,总是会告诉新手,一定要写程序注释。于是,新手们当然会听从老手的吩咐。只不过,他们可能对程序注释有些误解,于是,我们经常在程序中看到一些如下的注释:
r = n/2; //r是n的一半
//循环,仅当r- n/r不大于t
while ((r-n/r) <=t){
… …
r = 0.5 * (r-n/r); // 设置r变量}
每当看到这样的注释——只注释是什么,而不注释为什么,相信你一定会被惹火,这是谁写的程序注 ...