正文

UNIX的历史 搞笑版!2007-10-22 10:50:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lost/30288.html

分享到:

UNIX的历史Unix是个倒霉蛋,生来就穷困潦倒。Unix的父亲——电话公司——每年只能给他一卷电传纸 ,所以Unix既没有得体的文档,也没有任何源代码的注释。一年又一年过去了,贝尔爸爸一 直在为增加家庭收入、养活自己的孩子而苦苦挣扎。即便如此,Unix上学时,还是只能拥有 两个字母或三个字母组成的指令名,因为电话公司再也供不起更多的字母了。在学校里,其 他拥有完整指令名的操作系统都百般嘲弄可怜的小Unix,笑他没有任务管理和终端管理功能 ,笑他只能用进程间通信和锁方式来操作文件系统。 于是,在贫穷的重压下,电话公司开始酗酒。每个周末,他喝得酩酊大醉之后,就毒打可怜 的小Unix,揍他的脸和脖子。终于,Unix离家出走了。不久,Unix在伯克利的大街上住了下来。 在那里,Unix和一群坏孩子呆在一起。他的生活变得堕落而放荡,毒品成了家常便饭。为了 能生存下去,他把他的源代码许可协议廉价出售给大专院校做医疗实验。Unix的生活不断被 大学里一群群不知名的男女黑客们肆意篡改,而且经常是几个人同时下手。Unix跌入了罪恶 和耻辱的深渊。 可怜的小Unix患上了精神病。他整日蜷缩在他自己的梦境里,只有在那里他才感觉得到安全 。他吸食吗啡,梦想着能成为一种真正的操作系统。他吸食迷幻药,梦想着自己是加了黑霉 的牦牛肉。他沉溺于他的梦境,对迷幻药的依赖越来越大。他可以在整个周末,一边喝掺了 迷幻药的鸡尾酒,一边读亨特·汤普逊的作品,同时飞快地写下些疯狂的诗篇。除了他自己 以外,没有人能懂得这些诗里的深意:  $sed <$mf >$mf.new -e '1,/^# AUTOMATICALLY/!d'  make shlist || ($echo "Searching for .SH files..."; \          $echo *.SH | $tr ' ' '\012' | $egrep -v '\*' >.shlist)  if $test -s .deptmp; then      for file in `cat .shlist`; do          $echo `$expr X$file : 'X\(.*\).SH'`: $file config.sh \; \              /bin/sh $file >> .deptmp      done      $echo "Updating $mf..."      $echo "# If this runs make out of memory, delete /usr/include lines." \          >> $mf.new      $sed 's|^\(.*\.o:\) *\(.*/.*\.c\) *$|\1 \2; '"$defrule \2|" .deptmp \         >>$mf.new  else      make hlist || ($echo "Searching for .h files..."; \          $echo *.h | $tr ' ' '\012' | $egrep -v '\*' >.hlist)      $echo "You don't seem to have a proper C preprocessor.  Using grep instead."      $egrep '^#include ' `cat .clist` `cat .hlist`  >.deptmp      $echo "Updating $mf..."      <.clist $sed -n                                               \          -e '/\//{'                                                \          -e   's|^\(.*\)/\(.*\)\.c|\2.o: \1/\2.c; '"$defrule \1/\2.c|p" \          -e   d                                                     \          -e '}'                                                     \          -e 's|^\(.*\)\.c|\1.o: \1.c|p' >> $mf.new      <.hlist $sed -n 's|\(.*/\)\(.*\)|s= \2= \1\2=|p' >.hsed      <.deptmp $sed -n 's|c:#include "\(.*\)".*$|o: \1|p' | \         $sed 's|^[^;]*/||' | \         $sed -f .hsed >> $mf.new      <.deptmp $sed -n 's|c:#include <\(.*\)>.*$|o: /usr/include/\1|p' \         >> $mf.new      <.deptmp $sed -n 's|h:#include "\(.*\)".*$|h: \1|p' | \         $sed -f .hsed >> $mf.new      <.deptmp $sed -n 's|h:#include <\(.*\)>.*$|h: /usr/include/\1|p' \         >> $mf.new      for file in `$cat .shlist`; do          $echo `$expr X$file : 'X\(.*\).SH'`: $file config.sh \; \              /bin/sh $file >> $mf.new      done  fi 后来,Unix开始在电报大街上走来走去,一遍又一遍地对自己说:“灾难:释放自由的i节 点。”有时,他会拦着陌生人,像吃了安非他明的吉娃娃狗一样,尖叫着对他们大声喊:“ 总线错误(内核映像已保存)!”或者:“未知冲突:请手工运行fsck!”人们都对他视而 不见,带着孩子的母亲则远远地绕道而过。 一天晚上,Unix看电视时,一个镜头改变了他的一生。Unix在电视里看到职业摔跤比赛的画 面,他知道他已经找到了自己真正的目标。他开始服用大量的皮质激素,把自己变得强大起 来,他要变得比小时候那些曾经打倒过他的程序都更强大。他每天早饭都要吃三打煎饼和四 打新功能。由于类固醇的副作用,他的内部元件长得越来越大,以至于他的身体都容纳不下 了。最早长大的元件是内核,然后C语言类库,再就是一大堆幽灵程序。很快,他的一个视 窗系统开始为每个打开的窗口请求2兆字节的交换空间了。Unix变得强壮而丑陋,但他仍然 在继续服药,他的内部元件仍然在膨胀。这些膨胀中的元件从他的耳朵和鼻孔生长出来,强 有力地挤压着Unix的大脑,直到把大脑压成液体。现在,Unix拥有了巨人安德烈的肌肉、象 人的身体、以及杰克·尼科尔森的古怪个性。 遭破坏最严重的是Unix的神智。因为没法消化他吞下的大堆大堆相互冲突的新功能,Unix的 人格开始分裂成为千百种互不兼容的操作系统。人们必须小心地问:“早上好,Unix,今天 你是哪个Unix?”他会回答“比斯蒂(BSD)”,或者“Domain”,或者“我是System III,但我明天就会变成System V”。精神病专家们年复一年地对Unix进行治疗,想把他的 两种最主要的人格合并到一起。这两种人格分别是:来自伯克利市中心的“比斯蒂小孩”和 一心想变成女人的南方异性癖患者“小贝尔”。每一次治疗之后,这两种主要人格都会再次 变异,就像得了精神病的逆转录酶病毒一样,而它们的混合体则往往演变成缺乏持久的生命 力,与父辈不兼容的一大堆无用的原生质。 结果,由于体内的癌变,Unix控制不了自身的平衡,一跤跌进了一大桶含有放射性毒素的袋 熊尿里。他从尿桶里爬出来,皮肤发白,头发发绿,浑身散发着死人味儿。他咧着嘴恐怖地 笑着,打算去征服全世界。 如果操作系统都是航空公司 你正在选择操作系统吗?请先选择一家你喜欢的航空公司吧。 MS-DOS航空公司:大家一起推着飞机滑跑,快起飞时一起跳上飞机,直到飞机滑翔了一段后 再次触地,大家再继续推着飞机滑跑,再次跳上飞机…… Mac航空公司:所有乘务员、机长、行李搬运工、售票员都长得一模一样,连动作和语调都 一模一样。当你向他们询问有关飞行的问题时,他们回答:“你没必要知道,你也不用问, 你能回到座位上继续看你的电影吗?” OS/2航空公司:登机之前,你必须排十次队,在你的机票上打十个戳。然后你得填一张表, 写下你想坐哪个座位,你认为这架飞机的外观应该像轮船、火车还是汽车。如果你成功地登 上了飞机,飞机也成功地离开了地面,那你就拥有了一次愉快的旅行……当然,偶尔方向舵 和襟翼也会被冻住,这时,你在坠毁前还有足够的时间祈祷。 OS/2联合航空公司:候机大厅空空荡荡,只有几个乘客在踱来踱去。机场广播通知一架飞机 刚刚起飞,但跑道上却看不到任何飞机的影子。航空公司代表用平缓的语气一次次向乘客道 歉,还不停地用手指指向窗外那架外形漂亮、功能强大的喷气式客机。他们告诉乘客他们的 飞机更为舒适,比Windows航空公司的飞机更加安全,但乘客们必须耐心等待工程师们完成 飞行系统的设计制造,也许要等到1995年夏天,也许要更久一些。 Windows航空公司:候机大厅干干净净,服务员笑语迎人,飞行员技艺娴熟,搬运工轻拿轻 放……飞机平稳起飞,爬上云端,在两万英尺高空突然爆炸。 Windows 95航空公司:航班晚点6个月之后,你开始了你的空中旅行……在云层中,飞机意 外失事。 Windows NT航空公司:乘客们自己搬来椅子,在停机坪上绕着飞机坐成一圈。他们坐在那里, 上下拍动双臂,嘴里发出呼呼呼呼的声音,好像他们正在飞行一样。 Unix航空公司:每个乘客拿着一个飞机零件和一件工具赶到机场,在停机坪集合,讨论他们 要拼装一架什么样的飞机,以及如何拼装。最后,他们拼装出几架不同的飞机,并为它们取 了完全相同的名字。一些乘客的确飞到了终点,但所有乘客都相信他们已经到达了终点。 Mach航空公司:这里并没有飞机,乘客们聚集在一起大呼小叫。他们等啊等啊等啊等啊,一 些人扛着飞机零件走到跑道上,把零件拼装成一架飞机,并不断地争论要拼装的飞机的样子 。飞机终于起飞了,但乘客们还在地面上等啊等啊等啊等啊。最后,机长用电话通知起点站 的乘客飞机已经到达目的地了。 Newton航空公司:你18个月前就购买了机票,现在开始登机了。登机时,乘务员46次询问你 的姓名,等她彻底认清了你以后,你才能坐到座位上去。你正准备就座时,乘务员又通知你 必须再次办理登机手续,因为飞机上的座位不够了,他们必须确认到底有多少名乘客。 VMS航空公司:乘客们都聚集在机库里,看着数百名机械师检修一架庞大而豪华的飞机。这 架飞机至少有十个引擎,可以搭载一千名乘客。所有乘客都爬上了飞机,两百名机械师也必 须同机飞行。机长坐进玻璃驾驶舱里,发动了引擎,这时他才注意到飞机的个头太大了,根 本无法开出机库的大门。 Windows核心源代码揭秘 Windows核心源代码解密了!以下是一段真实的Windows代码: ------------------------------------------------------------- // 当仍有内存可用时循环 while (memory_available) { // 想办法耗费掉大多数可用的内存 eat_major_portion_of_memory (no_real_reason); // 如果需要更多的内存,告诉用户:操作系统就是这个样子 if (feel_like_it)       make_user_THINK (this_is_an_OS); // 增加比尔·盖茨的银行账户余额 Bill_Gates_bank_balance++; } 会编程序的猴子一个游客走进硅谷的一家宠物店,围着一个个宠物笼子看来看去。这时,另一个顾客走进店 里,对营业员说:“我想买一只C语言猴子。”营业员点点头,走到店角的一个笼子前,抓 出一只猴子,找了一副项圈和皮带,交给那位顾客,说:“五千美元一只。”那位顾客付了 帐,带着猴子走出了店门。 游客惊讶地对营业员说:“这么贵的猴子?普通猴子也就值两、三百美元,这一只怎么这么 贵呀?” “啊,这只猴子会编C程序,编得非常快,代码紧凑,没有Bug,它确实值这么多钱。” 游客看着笼子里的另一只猴子说:“这一只更贵了,要一万美元一只,这又是怎么回事?” “噢,这是一只C++猴子,它可以用面向对象的方法编程,它会用Visual C++,还会一点Java, 这可都是非常有用的技能呀。” 游客四下转了转,突然瞧见了一只独占一个笼子的猴子。猴子的脖子上挂着价签,上面标着 五万美元。游客这下惊讶得合不拢嘴了:“这一只猴子比店里所有其他宠物都加起来还要贵 呢,它又能做什么?” “唔,我也不知道它能做什么,但据它说它是做咨询的。” 如果计算机公司生产电烤箱如果IBM公司生产电烤箱…… 他们会生产一台个头非常大的电烤箱。人们可以把所有面包都塞进去,但需要连续烘烤一整 夜。IBM还将宣布,全世界只需要五台,不,也许是六台电烤箱。 如果Microsoft公司生产电烤箱…… 你每买一条面包,就得买一个电烤箱。你没必要把它搬回家,但你一样得付帐。电烤箱95的 重量大约有15000磅(必须放在全钢结构的加强工作台上操作),耗电量差不多抵得上一座 小镇,体积大得可以占去你95%的厨房空间。Microsoft声称电烤箱95是第一台可以控制火候 深浅的电烤箱。而且,这款电烤箱还会秘密审问你厨房里的其他家电,追问它们是哪个公司 制造的。许多人都讨厌Microsoft的电烤箱,但又不得不买,因为大多数好吃的面包都只能 在Microsoft的电烤箱里烘烤。 如果Apple公司生产电烤箱…… Apple公司的电烤箱拥有所有Microsoft电烤箱的功能,而且每一项功能都要早出现5年以上。 面包从Mac电烤箱里弹出来的时候,会给你扮一个笑脸。有时,面包也会被卡在电烤箱里, 上面印有一个烧焦的炸弹图形。一旦发生故障,你就必须用一组特殊的Mac烤箱工具才能 修复它们。Mac电烤箱的全球市场占有率大约是5%,但所有学校的午餐面包都是用Mac电烤箱 烤出来的。 如果NeXT公司生产电烤箱…… 那一定是一个巨大的、光滑的、黑色的方盒子,每天早上都有一片面包从上面跳出来。NeXT 公司服务部门的电话号码还没来得及在电信公司登记。这个方盒子的所有设计蓝图都是高度 机密的官方文件。《X档案》就有NeXT电烤箱的故事。 如果NSA(美国国家安全局)生产电烤箱…… 你的电烤箱有一个只有NSA才能访问的陷门,通过这个陷门,NSA可以基于国家安全的考虑窃 取你的面包。 DEC公司还在生产电烤箱吗?…… 20世纪70年代,DEC生产过相当不错的电烤箱,不是吗? 如果HP公司生产电烤箱…… 他们销售逆波兰电烤箱。你把面包片放进电烤箱,然后得到整个面包。 如果Sony公司生产电烤箱…… Sony电烤箱只比面包片大一点点,你可以把电烤箱放在口袋里。 如果Franklin Mint公司生产电烤箱…… 每个月,你都会收到一片手工制作的正宗内战勋章面包片。 如果Cray公司生产电烤箱…… Cray电烤箱要卖一千六百万美元一台,但烘烤速度比世界上的所有单面电烤箱都快。 如果Thinking Machines公司生产电烤箱…… 你可以同时烘烤六万四千片面包。 如果Radio Shack公司生产电烤箱…… 公司销售人员卖给你一台电烤箱,但他说不出这台电烤箱能做什么。你也可以自己购买所有 零件组装一台电烤箱。 程序员词典我在80年代刚上大学的时候,一下子听到许多“数据输入”、“β测试”之类的新名词。我 特别迷茫,特别想知道大家都在说些什么,想知道计算机产业里到底都隐藏了哪些大秘密。 现在我已经为一家电脑公司工作了好几年了,也算是个内行了。我决定把我知道的程序员术 语都记录下来,和大家一起分享: 【α版】软件α版测试的目的是收集用户的初步反馈。α在拉丁语中的意思是“不能工作”。 【β版】软件的β版测试在软件发布前进行。β在拉丁语中的意思是“还不能工作”。 【计算机】一种秘密武器。第一台计算机是英国科学家Roger Duffy Billingsly发明的。在 一次推翻希特勒的秘密行动中,Duffy伪装成德国人的盟友,把计算机作为礼物送给了大独裁 者。秘密行动获得了成功:1945年4月8日,希特勒被计算机显示的错误信息“不兼容的文件 格式”激怒后,开枪自杀。希特勒死后,战争很快就结束了。战后,Duffy为IBM公司工作。 【CPU】中央处理器,是计算机的引擎。它是由一块硬盘、一块接口卡和一台微型纺车组成 的。纺车由一只啮齿类动物推动——老式CPU上是一只小白鼠,“奔腾”上是一只雪貂, “安腾”上是一只吃了激素的雪貂。 【缺省目录】一个黑洞,有用的文件将在那里消失得无影无踪。 【错误信息】程序出现故障时,程序员对用户提出的简短而严厉的批评。 【文件】一份档案,档案名总与其内容无关。你通常会认为文件存储在某个文件夹中,但当 你想从文件夹里删除文件的时候,你会大吃一惊:文件夹报错“未知的文件格式”。 【硬件】泛指与计算机相关的,可以踢碎或者打扁的任何东西。 【帮助】帮我们制造更多问题的功能。在正确使用帮助的情况下,用户可以浏览一系列的帮 助页面,并最终回到开始页面——但没有获得任何有价值的信息。 【输入/输出】从键盘输入有序的、可读的数据,从打印机输出成堆的乱码。 【临时版本】为了便于程序员反悔而发布的版本。 【内存】计算机的元件之一。内存的品种很多,但内存的容量总比你想像的少。 【打印机】一个庸俗的笑话。打印机由三部分组成:机壳、卡纸的托盘和闪烁的红灯。 【程序员】计算机复仇者。在高中里,他们都是小阿飞,把磁带缠在眼镜上,扮演《龙和地 下城》里的角色,梦想着充满刺激的星际旅行。现在,这些创建了“伟大”软件的百万富翁 们开始向当初鄙夷过他们的人复仇了。 【参考手册】用来垫高显示器的玩意儿,有时也用来垫桌脚。 【预定发布日期】经过精确计算的日期,通常是在实际发布日期的基础上,减去六个月的时 间后得来的。 【用户友好】可以使程序员满意的那些特性、设备或概念。 【用户】那些茫然若失地盯着显示器的人。用户有三种:菜鸟、玩家和大虾。 【菜鸟】惟恐敲一个键就会弄坏计算机的人。 【玩家】敲一个键就弄坏了计算机,又不知道如何修理的人。 【大虾】敲一个键就弄坏了别人的计算机的人。 国王和电烤箱有一次,在离这儿不远的一个王国里,国王把他的两个顾问叫来,让他们看一个闪闪发光的 金属盒子。盒子顶上有两个开口,旁边有一个旋钮和一个手柄。 “你们知道这是什么吗?”国王问。 一个顾问——他是一名工程师——抢先回答说:“是电烤箱。” 国王接着问道:“要为它设计一台嵌入式计算机的话,你会怎么设计呢?” 工程师回答说:“使用4位的微处理器。我编一个简单的程序,读取火候调节旋钮的当前位 置,把位置信息量化,变成从雪白到漆黑的16个焦度级别之一。程序以焦度级别为索引,从 一张16行的小数据表中,读取预置的烧烤时间。然后,程序启动加热器,在计时器中设定烧 烤时间,计时结束后,就关闭加热器,弹出面包片。给我一周时间,我就可以拿出这个程序 的原型。” 第二个顾问是一个计算机科学家,他马上意识到工程师的想法是缺乏远见的。他说:“电烤 箱不只是用来烤面包片的,它还可以用来热鸡蛋饼。桌上摆的实际是一台早餐加工机。我们 的国民有丰富的生活经验,他们需要多功能的机器,比如说,一台能烤香肠、煎培根、炒鸡 蛋的早餐加工机。只能烤面包片的电烤箱不久就会过时,如果我们不为将来着想,就必须在 两、三年后重新设计电烤箱了。 “有鉴于此,我们可以这样定义我们的电烤箱。首先,创建一个名为早餐的类。然后,从这 个类派生出一组子类:面食类、肉类、禽蛋类等等。面食类进一步派生出面包类、松糕类、 煎饼类、蛋饼类;肉类派生出香肠类、肉串类、培根类;禽蛋类派生出炒鸡蛋类、水煮蛋类、 荷包蛋类、煎蛋类以及各式各样的蛋卷类。 “对于干酪火腿煎蛋卷类,需要特殊处理,它必须同时继承肉类、乳制品类和禽蛋类的特 性。因此,没有多重继承是没办法解决这个问题的。运行时,程序必须正确地创建对象实例, 然后向对象发送‘加工你自己’的消息。消息会引发何种操作要取决于对象的类型,这样, 同一条消息就可以激活从烤面包片到炒鸡蛋的各种不同操作了。 “综上所述,在分析阶段,我们将核心需求界定为加工不同种类的早餐食品。在设计阶段, 我们还要进一步明确由此衍生的附加需求。比如,我们必须使用一种拥有多重继承功能的面 向对象语言。另外,鸡蛋已经晾凉了,培根还没有烤好的情况是不能接受的,所以,多任务 并发处理的功能也是必需的。 “别忘了用户界面。手柄是不适于加工多种食品的,火候调节旋钮也容易让人摸不着头脑。 用户只会去买那些有友好的图形界面的产品。当早餐加工机插上电以后,用户会在屏幕上看 到一只发令枪。点击发令枪,一声枪响过后,屏幕上就会出现‘启动UNIX v.88.33’的字样 (UNIX v.88.33版将在早餐加工机上市前发布)。用户可以打开下拉菜单,在菜单里点击他 们想要加工的食品名称。 “在前面的设计阶段,我们详细定义了软件的功能特性,接下来的事情就是要为实现阶段选 择一种合适的硬件平台了。推荐的硬件配置是Pentium 4 2.6G CPU,2G内存,160G硬盘,21 寸液晶显示器。在软件方面,如果你选择了一种多任务、支持多重继承、有内置GUI开发包的 面向对象语言,那你编写程序时就轻松多了。——相比之下,那种先确定硬件环境,再把自 己禁锢在4位微处理器上的做法是多么的愚蠢啊!” 国王明智地砍掉了计算机科学家的脑袋。从那以后,国王和他们的国民们一直生活得很快乐。 微软员工开的餐厅顾客:服务员! 侍者:嗨,您好!现在由我为您提供技术支持。有什么问题吗? 顾客:我的汤里有只苍蝇! 侍者:再试一次,也许这次就没有苍蝇了。 顾客:试过了,它还在那里。 侍者:也许是您喝汤的方法不对;试一下用餐叉喝汤的新方法。 顾客:我用餐叉的时候苍蝇还呆在那里。 侍者:也许是汤与碗不兼容吧;您用的碗是什么型号? 顾客:中号汤碗。 侍者:唔,那应该没问题呀。也许是配置问题吧,您的碗是哪儿来的? 顾客:是你刚才给我的呀,用餐碟托着;这和我汤里的苍蝇有什么关系? 侍者:您能回忆起在您看见苍蝇之前您都做了些什么吗? 顾客:我坐下来,点了今日浓汤! 侍者:您确认您已经升级到今日浓汤的最终版本了吗? 顾客:你们的今日浓汤每天都有不同的版本? 侍者:是的,每个小时都有不同版本的今日浓汤发布。 顾客:好吧,那现在是哪个版本呢? 侍者:今日浓汤的当前版本是番茄酱汤。 顾客:好的,给我一份番茄酱汤,把账单拿来。我要迟到了。 [侍者回去取汤和账单。] 侍者:您好,先生,这是您的汤和账单。 顾客:可这是土豆汤啊。 侍者:没错,番茄酱汤现在还没做好。 顾客:好吧,我饿坏了,就这么算了吧。 [侍者转身离开。] 顾客:服务员,我的汤里有只蚊子! 账单:今日浓汤           $5.00      升级到新版今日浓汤 $2.50      技术支持费用       $1.00 面向对象的致富之道 — 你听说过面向对象的致富方法吗? — 没听说过。什么方法呀? — 继承。 关闭窗口一个项目经理,一个程序员和一个操作员开车出去玩。半路上,汽车的一只轮胎瘪了。三个 人围在一起商议解决方案。 项目经理说:“我们去坐出租车吧,十分钟就可以到目的地了。” 程序员说:“我有这辆车的驾驶手册,只要把车胎换了,咱们就可以继续前进了。” 操作员说:“首先,我们得关掉引擎,然后再打开引擎。也许这样一来,问题就解决了。” 这时,一个微软的工程师路过此地,插话说:“先下车,关闭汽车的所有窗口,再上车,打 开窗口,问题就解决了。” 错误重现 一个程序员,一个硬件工程师和一个部门经理开车去参加一个会议。路过一段陡峭的山路 时,汽车的刹车失灵了,汽车歪歪斜斜地冲出路边的石栏,神奇般地停在了悬崖边上。汽 车上的乘客有惊无险。现在,他们的问题是:没有刹车,怎么继续赶路呢? “我说,”部门经理说,“我们得先开个会,提出建议方案,制定任务列表,设置几个里 程碑,使用持续改进法得到危机情况下的解决方案,然后,我们就可以上路了。” “不,不,”硬件工程师说,“这太费时间了。另外,这种方法以前从来都没有成功过。 我身边带着一把瑞士军刀,马上就可以把刹车装置拆下来,找出故障,修好它,我们就 可以上路了。” “不,”软件工程师说,“在我们采取任何行动之前,我想我们该把车推回路中间,测试 一下这种情况能不能重现。” 淋浴房里的程序员 你能让一个程序员一天到晚呆在淋浴房里吗? 给他一瓶洗发香波,上面写着: for(;{  涂抹香波;  温水冲洗; } 溺水的程序员 一个程序员在海滨游泳时溺水身亡。当时海滩上有许多救生员,救生员们只听见 有人大声喊“F1!”“F1!”,谁都不知道“F1”究竟是什么意思。 三种谎言 谎言一共有三种:谎言、恶意的谎言、软件评测报告

阅读(301) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册