请问哪里有关于计算机形态学算法的详细视频?

编程之禅

《编程之道》的出版已经被编程界普遍接受,出版社邀请我翻译了其中的一部分。

关的文章,作为对那部名著的补充。虽然,我声明我的能力很难。

有能力,但我最终被说服试一试。

这本书是许多个月的研究和翻译的结果,它试图通过从那些传统作品中摘录来找到一个复杂的主题。我不怀疑很多计算机考古方面的专家会对我的抽取标准发表意见。

。他们悄悄地问:“他为什么不把UNIX程序员、大象和妓女的寓言包括进来?”“他怎么敢无视流传已久的故事《图灵集市历险记》!”对于这些批评,我只能说,>

我已经尽力选择有代表性的内容了。

为了确定每一章的年代,我使用了朝代系统。对于不熟悉这种方法的人来说,可以分为四个朝代(或“四代”)。

第一个王朝,即所谓的“黄金时代”,可以追溯到用玻璃管制造计算机的时代;许多现代学者断言,这个时代是神话。第二个王朝始于晶体管的发明

它以集成电路的复制结束。

现代计算机的历史始于第三王朝,由主机和控制主机的军部大臣统治。第四王朝是从对“整合”的压制和“整合”对既定秩序的反抗开始的。

被狂热的“蓝色军团”残忍地摧毁了。具有讽刺意味的是,正是这种打击导致编程的禅意传播到了外界。

除了构成本书主体的古代资料外,我还有幸得到了巴贝奇博士和于博士的帮助,他们分别为本书撰写了导言和序言。我希望他们对这本书的贡献能或多或少& gt;

弥补我作为编辑的无能。

杰弗里·詹姆斯

1988 65438+十月在洛杉矶

目录

命令

介绍

第一块木头

第二次火灾

第三篇土壤

第四篇黄金

第五章水

根据古代的“五行学说”,这本书由五部分组成:

木、火、土、金、水

大师:忍者行者,隐士,大力士,阿星

媒体:编年史、民间故事、布道、公案和俳句

硬件:键盘显示器CPU打印机磁盘

方向:东南、中、西北。

软件:编辑器、格式化程序、调试器、解释器、编译器。

感觉:触觉、视觉、嗅觉、听觉和味觉。

阶段:界面设计编码调试测试

动物:龙、凤、牛、兔和蛇

系统:VMS CP-6操作系统VS MS-DOS Unix

这个分类体系包罗万象,不可能在本书的篇幅内解释清楚。然而,在冥想中

经过这些千变万化的关系,你可能会发现那种惊人的洞察力。

命令

毫无疑问,古代的编程艺术在西方人的心目中通常是被误解的,但现代的观点认为它是一种

工程学、机械学和唯物主义。

很多人认为编程只是实现一个目标的手段,是一个程序(和过程)

订单会员)只能根据其赚钱能力来评价。

这些原始的错觉来自于对编程真实意图的深刻误解。

高超的程序员不致力于表面的成功,而是在人和机器之间寻找一种神秘的存在。

根据Zen的说法,硬件、软件、固件、界面和理解之间没有边界——相反,它们都是

结合成一个和谐的整体。

只有程序员最终学会抛开“自我存在”的虚假感觉,才能达到这种境界。

是有可能实现的,“自我存在”的感觉往往伴随着我们的大部分生活。

这就是电脑带来的——禅师程序员的行为。

有人说,掌握禅宗的程序员掌握人生。这样的程序员是一个永不疲倦的孩子。

带着喜悦看世界。

觉醒的程序员走在街上也能感受到两边的房子和建筑里的电脑。

当调制数据通过计算机线路时,被唤醒的程序员可以感觉到并听到电流脉冲的连续性。

嗡嗡声。

觉醒的程序员已经与宇宙融为一体。

我以前的学生Geoffrey能够完成这样的工作,并在2000年重现了编程中失落的禅的经典作品

世界,作为一名教师,我感到由衷的满意。

真心希望这本书能重新确立禅宗在完美程序员教育中的重要地位。

莲花大学超越机械学院俞正平博士

西藏拉萨

介绍

当詹姆斯先生让我为他的书写一个介绍时,他告诉了我一些我自己的计划。

我实在想不出更好的方法来保护我在这个神秘领域的个人经历。程序的维护就是编程。

一个在设计艺术中很少被理解的领域。

有些读者肯定会坚持认为,禅宗的深奥教义和程序维护的卑微技巧没有区别。

点。但正如一位大师所说:“方法和途径(即道)存在于所有的程序中,甚至在

在电子游戏中。因此,毫无疑问,程序维护的艺术在很长一段时间内都有其禅的一面。

尽管对于未受过训练的人来说,这可能不会立即显现出来。

我的故事开始于我从大学计算机专业毕业后的几个星期。我大学毕业后的目标是为人民服务。

研发机构,最好是编译程序或设计操作系统的部门。我终于找到了一个。

我愿意盲目雇佣我的组织,但前提是我要在一段时间内完成程序维护工作。

学习这个系统。

当然,我会对这个建议产生抵触情绪。我在大学里待了五年,但是想明白都是浪费时间。

犯一些其他程序员的错误!但是,因为他们答应以后让我做自己感兴趣的工作,所以我

我接受了,并在心里提醒自己,就算这份工作做不了什么,我还是可以再找一份工作的。

第二周报到时,我被领着去见程序维护组的师傅。人事部主任

带着我快速穿过开发中心黑暗的走廊,最后她指着长长的走廊尽头的一扇门说

:“他在里面。”说完,我就走了,好像有点心不在焉。

我走到门口,向里窥视。我看到一个人坐在终端前工作,但他背对着我。

所以不知道他多大,长什么样。我只是通过咳嗽来显示我的存在。这里,

大师头也不回地说:“请坐”。

越过他的肩膀,我瞥见了那些难以理解的屏幕显示。当他长长的手指在键盘上跳舞时,

他们在他的终端上闪烁。最后,他满意地哼了一声,退出系统,然后转身。

转过身来面对我。

我看到的东西让我大吃一惊,因为他看起来不像那种应该是禅师的人。他的脸很无聊,几乎

太丑了。他的头发像一个麻烦的光环。但人们首先注意的是他的眼睛,透过厚厚的

眼镜发出微弱的蓝光。

他把我从头到脚看了一遍,然后点点头,好像在证实一个个人观点,“你就是新来的那个。

来这里?”他酸溜溜地问。

“是的。”我回答。我假装充满激情,向他快速总结了我在大学的经历和成就。

报告。

那个人礼貌地听着,然后说:“那很好,但是你以前做过程序的维护工作吗?”

我坦白地告诉他,不是我做的。

主人长长叹了口气。“嗯,我们应该做我们该做的。”他说。然后他从一个架子上

在网上记下一大串程序,随意打开,递给我。然后他问:“这个你怎么处理?”

?"

我的眼睛盯在这个列表上,这是一个汇编语言混合了一些奇怪的宏语言。每十行

句子,控制权转移到一个神秘的子程序,而且这个程序就算有什么结构,我也看到了。

不出来。“这是什么节目?”我问。

主人从我膝盖上拿走了名单。“这是几代大师的藏文密码,”他说。

当你学会从迷宫中捕捉错误的代码时,就是你开始的时候了。”然后,他关门了。

列个清单,放回架子上。

我很快意识到程序的维护比我想象的要困难得多。起初,我试着学习《代码集》这本书

Jing中使用的汇编语言,但令我烦恼的是,我发现汇编语言从来不按规则提供指令。

这份文档只留下了一些注释,是一位硬件开发人员写的,他在多年前去世或离开了公司。

这种编码的藏经给不了我任何帮助。虽然偶尔会有一些音符,但是这些音符和这种

汇编语言就像它一样含糊不清,除了一些关于原始硬件结构的令人担忧的信息。

其他事情。

当我向大师抱怨这一切的时候,他很有礼貌的听着,在我们沉默了很久之后,他回答道。

回答我:

“你在试图理解一些你的理性思维无法理解的东西,”他说。“这导致了。

结果必然是失败。你必须先清理你的大脑,只有这样你才能开始理解代码隐藏。

经典。"

然后,师父开始慢慢地给我讲解编码藏经中复杂的逻辑。当我听他温柔的

当我听到声音时,我终于开始注意到一点闪烁的光,这是藏在编码藏经中的辉煌和永恒。

光线。“那些大师对‘好的编程实践和规则’一无所知,”大师说。他们努力工作。

一般意义上理解计算机思维的内部活动,他们需要哪些文档?这些程序是

极限的表达。

然而,即使我慢慢开始明白了一些事情,我仍然觉得自己像一只在琥珀中挣扎的小飞虫。教师

父亲说的和我学的完全不一样,我的理性思维很难接受。但是师父总是耐心地重复。

反复解释我一定不能靠理性思维去推理,要用潜意识去理解编码藏经的内涵。

经过几个月的指导,我感到自信,并想尝试我的第一个补丁。为了给主人一个

惊讶吧,我秘密工作。我写了一个补丁,可以重新运行几行语句,重组程序,

并将新程序发布到生产系统中。

第二天早上,我来的有点晚。令我惊讶的是,开发中心的主任和从事部门的总经理是

在主人的办公室。当我进入大厅时,营业部的经理看到了我,关上了门。我听得非常入神。

大声说,但是我听不清楚。

两位客人走后,我走进了主人的办公室。“什么事?”我问。

“你的补丁昨晚六点进入生产系统。现在已经删除了。”

“所以呢?”

“你还可以继续工作。”师傅说。

最后,我终于明白,所有用我的理性思维去理解编码藏经的努力都是徒劳的,这使得

我绝望了。师父注意到了我心中的这种变化,他开始教我如何打开电脑。他教我冥想和

他说,从计算机时代开始,技术支持部门就代代相传错误检查的技巧。

我听着听着,开始意识到一个关于我以前编程经历的巨大事实。大学的时候,一起认的。

程序员的工作主要是控制硬件和软件的活动。编程的最高艺术境界就是完成一个项目。

任务或实现目标,并成功使用高超的编程技巧。但是程序维护不同于程序开发。

你要维持一个节目,就要把它当成一棵正在生长的植物,拔苗助长是没有用的。

事实上,这样的行为更有可能导致植物的死亡。一个项目必须精心培育。程序员是对的

在改程序之前,你必须非常熟悉每一个逻辑关系,深刻理解程序的意图。

谢利这种悟性不可能一蹴而就,需要很长时间的积累。

经过几个月的时间,我终于能够成功地设计一个编码藏经的补丁,但我必须在设计之前通过它。

沉思了很久,把节目单打开放在我桌子上。我还发现如果我工作,

我点一根香的时候,一直在重复师父教我的口诀:“Null-So-Stix-Etx-Eot”。

我可以更容易集中注意力。

注意。师父说公式的意思是宇宙的“五行”。

很快我发现我不再关心我是否能从我的工作表现中得到奖励,在我自己和我维持的项目中。

他们之间没有分离。就像一个一辈子活在阴影里的人,我开始明白编程的禅意。

这是隐藏在程序员设计背后的一种不可言说、不可描述的力量,就像投下阴影的太阳。

样本。

在摆脱了毫无意义的“自我存在”之后,我开始发现那些伟大的编程语句曾经是

在我看来很模糊,只是因为我还没有完全理解他们,无法理解他们。现在我知道为什么了。

在过去,那些程序员从不为他们的程序提供文档,因为英语语言本身的描述更加混乱。

而不是鼓舞人心。

有一天,我发现我正在解决的一个问题涉及到编码藏文经文中最复杂的部分——错误分数。

分析整个过程。我对此一无所知,所以给了一个补丁,可以通过硬件中断区。

检查的内容以确定错误情况,以便程序可以继续正确执行。

那天下午,师父第一次走进我的工作间。他把手放在我的肩膀上,低头看着我。

“你该开始你的职业生涯了。”他说。

以上是我第一次接触Zen编程的经历。虽然从那以后我被分配参与了很多项目。

但我从未忘记我的启蒙老师教给我的东西。

想象一下我有多惊讶——当我在《编程之禅》中发现这么多我的师父非常喜爱的语言时。

时间。我终于看到了隐藏在他令人难忘的演讲背后的古老传统。

詹姆斯先生重新发现了那本经典而影响深远的书,我们都欠他一个人情。要求

要不是他锲而不舍,可能就永远失去了。在这本书中,詹姆斯先生收集了许多期刊,如

异端说教、民间故事和诗歌等。,这就构成了传说中的“一体化教学”学说。确切地说;精确地

通过詹姆斯先生这样的学者的努力,隐禅机器的编程之光永远闪耀。

关心后代的人。

查理·巴贝奇

第一块木头

主人:忍者

媒体:纪事报

硬件:键盘

方向:东方

软件:编辑程序

感觉:触摸

阶段:界面

动物:龙

系统:虚拟机

木材

作为MRVMS/IIIX禅院的复兴,编程大师忍者(这是后人给他起的外号,他的真实姓氏。

名字无法考证——非常有名。有一些传说说他从一个默默无闻的程序员一跃成为某个。

一家强大的编程机构的开发部门主管。在他完成一个高级操作系统后,他悄悄地

消失了按照他的说法,这个系统既不需要硬件,也不需要软件,还能准确运行。何贤

没人知道他现在在哪里,但据说他经常以管理顾问的身份出现。

一个

当Ninja第一次到那个开发中心工作时,他被分配去支持操作系统。一天,一位经理

走进忍者工作室。

“你为什么不工作?”经理问。

“系统瘫痪了。”忍者说。

"经理皱起了眉头。"我们付钱给你是为了让系统正常运行!”他大声说道。

“系统没有瘫痪。”忍者说。

忍者大师说:

"如果你的应用程序不能正常运行,不要责怪操作系统."

忍者大师参加了一个电脑展。

许多公司都推出了明亮的显示器和他们能找到的所有最新最大的硬件和机身。

穿着泳装的金发模特。

忍者甚至没有看一眼摊位。相反,他只是打开一把折叠椅,静静地坐在角落里。不

有人从他身边走过,问了他一两个问题。他想了一会儿,然后给了一个简短的回答。

人们盘腿坐在大师周围——收集的小册子散落在一边——静静地等着他

说吧。

忍者大师说:

“对于聪明人来说,就一个字;对快马来说,只是一根鞭子;对于编写良好的程序,只要单个

一个简单的命令。"

忍者大师参加董事会。当他开始解释该软件的技术特征时,公司高管

孩子们,有的在座位上烦躁不安,有的盯着窗外,有的盯着咖啡杯发呆。

于是,大师开始讲软件会赚多少钱,然后管理员们都竖起了耳朵。

花,开始在房间里跳来跳去,显然,它们被这愉快的声音吸引住了。

一个公司主管来见忍者。他发现老师在玩电脑游戏。“这是什么意思?”管理

军官问。

“我正在测试系统。”师傅说。

裁判官凑近屏幕定睛一看,果然发生了。

一天,董事会成员聚在一起讨论生意。他们打电话给忍者大师,请他做一份报告。“你的?

季度预测是什么?”他们问道。

“没有季度预测。”忍者回答道。

"你今年的预算计划怎么样?"他们问。

“今年没有预算计划。”忍者回答道。

然后他们问:“你能确认你是忍者大师吗?”

“没有忍者大师。”忍者大师回答道。

董事们非常困惑,他们不得不暂停会议回家。

忍者大师说:

“设计一个有几百万个程序的操作系统很容易,但要改变一个人的本性就难多了。”

三个来自不同电脑公司的高管去跟忍者学习领导力的真谛。

忍者问第一个管理员:“你现在有你们公司的组织结构图吗?”

第一个法官从口袋里拿出一张纸。“我总是随身带着一个。”他一边说着,一边把纸

给了忍者。

忍者饶有兴趣地看着那张纸。"看起来好像已经在计算机上建立了模板."他评论道

说吧。

“确实如此,”管理员自豪地说。“我们已经把我们的组织结构图电脑化了。

这样你就可以选择一收到通知就打电话。"

忍者笑了笑,把纸递了回去。“我帮不了你。”他说。

第二个裁判官接着问忍者领导艺术的真正含义。

"你现在有你们公司的组织结构图吗?"忍者问。

第二个管理员摇摇头。“我们的组织近年来没有变化。年前就想起来了。”

忍者皱起了眉头。“我帮不了你。”说道。

第三个裁判官问忍者领导艺术的真正含义。

"你现在有你们公司的组织结构图吗?"忍者问。

第三个法官耸耸肩。“我们没有组织结构图,”他说。“每个人都可以做自己喜欢的事。

嗯,你可以随时做。"

忍者皱起了眉头。“我帮不了你。”他说。

三个执政官一起耳语了一会儿,转向忍者说:“好吧,让我们看看你的机器。”

结构设置图。"

忍者把他们带到一片空旷的地方,那里有一棵树孤零零地生长着。“这是我的机构设置。

图。”忍者边说边把手放在皮肉粗糙的树干上。

第二次火灾

主人:沃克

媒体:民间故事

硬件:显示器

方向:南方

软件:格式化程序

感觉:视觉

阶段:设计

动物:凤凰

系统:CP-6

程序员沃克收集了各种关于开发的刺耳民间故事。最近的计算机考古研究表明,

下面的民间故事是根据历史事实。虽然可能会无意中添加一些夸张的元素

补充进去,但其历史真实的核心内容依然存在。

一个

当一个项目经理为他的软件项目配备人员时,他会在一天之内雇佣300名程序员。赢家

一位拥有计算机科学博士学位的学者来应聘,他得到了一个待遇优厚的职位。

有一天,项目经理被辞退了。“我觉得每个人都应该明确自己的职责,各司其职。

责任。”新项目经理在回顾他的程序员团队时说。书生一听,不动声色。

溜走了。

两个程序员在急诊室讨论用户界面。

“在‘易于使用’方面,许多重大创新正在进行中,”第一位程序员说。

很快,人们将不再需要在使用电脑前阅读那些繁琐的用户手册。旅行

前言就不言自明了。"

第二个程序员想了一会儿,然后说:“上周我打算劈些木头生火,但是我的斧子旧了。”

布朗特。所以,我去五金店买了一个新的。"

“这很有趣,”第一个程序员说,“但是这和用户界面有什么关系呢?”

"这把新斧头附有一本八页的使用说明书。"他回答道。

曾经有个第三者问一个工程师,一个数学家,一个物理学家,一个程序员,“一个盒子有。

多少面条?"

工程师先回答。"盒子有四个面。"他说。

“什么意思?”智者问道。

“这四个垂直的面就是我所说的面。它们由顶部和底部连接在一起。”工程师回答道。

“这太荒谬了,”数学家评论道。"盒子有六个面。"

“什么意思?”智者问道。

"这个盒子是立方体,所以它有六个面.",数学家回答道。

“不,”物理学家说,“一个盒子有十二个面。”

“什么意思?”智者问道。

"严格地说,有六个外部面孔和六个内部面孔."物理学家回答道。

智者看着沉默的程序员。“你有什么看法?”智者问道。

"一个盒子只有两面。"程序员说。

听到这里,工程师、数学家和物理学家都笑了。

“你是什么意思——一个盒子只有两面?”笑声停止后智者问道。

“这是基于个人经验,”程序员说。“‘里面’是放置电路板的地方,而‘外面’是。

监视器放在哪里。"

“正是。”智者说。

一位新主管正在和程序员开会。

席间,一位程序员背诵了下面这段话——“我们一直在期待你的到来。”

得了吧,你的前任根本没有你这种高贵的能力。现在你在这里,我们将变得真正富有成效。

力。"

新董事满面春风,满口奉承。“这篇演讲稿是你自己写的吗?”他问。

“这是我们开发中心的做法,”程序员说。“不管哪个新主管来了,我们都会

这是我所知道的唯一一次演讲。"

有一天,开发中心的一个程序员发现了一个可以生成迷宫图案的算法系统。他非常勤奋。

这个算法被修改,以便它可以在长的打印纸带上产生不间断的迷宫。

很快,他用几百万个贫困点做了一个迷宫,长四十英尺,宽七英尺。他挂上打印纸。

程序员办公室前长长的走廊里,不一会儿,所有程序员都挤在迷宫前。

试图解决这个大问题。

发展中心的主任碰巧经过。他惊讶地盯着这一幕,看起来很沮丧。但当他进入编程大学后,

老师办公室想求助的时候,师傅早就不见了。

五个初学者哭着走进大师的办公室,“呜呜,呜呜!听说我们的项目可能要取消了。”

大师说:“一切照常进行,直到它们停止。”

听到这里,初学者回到他们的工作岗位。

一天,发展中心收到消息,一个新的主任将被任命负责这里。他是军机大臣,对计算机感兴趣。

知道的很少。

程序员听到这个消息非常惊讶,纷纷停止编程,浪费了大量时间试图弄清楚即将发生的事情。

不幸的一天到来了。

看到这种情况,一位大师决定做点什么。所以他借了一套服装装扮成大猩猩。

很快,部长走马上任,他把所有的经理叫到一个小会议室,陪同的还有几个总部。

公司高管,据说他们是来让开发中心“平稳过渡”的。

突然,主人扮成大猩猩闯进了房子。他跳上会议桌,把文件踢得到处都是。

是的,并对着坐在那里目瞪口呆的管理员咆哮。然后,他摇头摆尾。

突然离开会议室,就像他来的时候一样。

听到这个,程序员们都回去工作了。

<作者>

笔者曾经和几个人聊过,他们都见证了这个传说中所描绘的事件。作者还听说有一年

后来,IBM的某个部门也发生了类似的挑衅行为。第二起事件和第一起事件的不同之处在于

程序员余穿着运动服站在门口大声咳嗽。

一群程序员正在向主席汇报。“今年最大的成就是什么?”主席问。

程序员们一起讨论了一会儿,然后回答:“我们今年解决的bug(程序错误——

比去年多了50%。"

主席疑惑地看着他们。显然,他不知道BUG是什么意思。他和身边的大臣们窃窃私语。

过了一会儿,他转向程序员,气得满脸通红。“这样糟糕的质量控制,你应该问。

感到内疚。明年没有“虫子”了!他命令道。

可以肯定的是,当程序员第二年向主席汇报时,没有提到这个BUG。

一位公司管理人员来参观开发中心。他走在长长的走廊里,就像一位检阅部队的将军。

样本。他不时地靠上去和他遇到的人说话。最后,他走进了一个程序员的办公室

程序员全神贯注于检查操作系统的错误。

治安官环顾办公室,注意到程序员终端上有一尊猪的雕像。“我经常编程。

工作人员收集的古董和纪念品被深深吸引,管理员说。他们背后似乎有一些非常。

有趣的故事。比如,那里的雕像是什么意思?”他指着雕像。

程序员从终端上抬起头,眨眨眼,然后盯着雕像,好像是第一次看到。

是的。“这是猪!”他说。

第三篇土壤

主人:隐士

媒体:说教

硬件:CPU

方向:中等

软件:调试程序

感觉:嗅觉

阶段:编码

动物:牛

系统:操作系统/虚拟系统

土地

以下语录的作者,一个大师级的程序员隐士,在人们的心目中一直很模糊。他以COBOL语言为标志

他是被准委员会的特工暗杀的,除此之外,对他的了解很少。

一个

我听说过:

开始看起来容易的事情到最后往往是最难的。所以程序员才会说——“开!

交付前百分之九需要一半的时间,另一半用来完成后百分之十。"

我听说过:

人机界面最大的错误就是忽视了电脑的权利。被迫兼容旧概念的系统总是受到日历的影响。

历史的局限性。计算机不应该模拟现实——它们应该超越现实。

我听说过:

一家电脑公司设计了一个功能强大的系统,这个系统走在了时代的前面。因为我担心这个

新设计可能会被复制。他们对硬件的结构设计保密,并为操作系统申请了专利。

10年后,一个初学者问程序员数据中心后面那个又脏又旧的木箱。

我听说过:

不要让政治原因影响技术决策;也不要根据科学论文做政治决策。只有在没有的情况下

在认识者的心里,这些东西会一直混在一起。

我听说过:

项目策划和发布的时间表本身是没有意义的。这些日期和项目进展中的里程碑并不意味着

穿着什么。然而,有一个秘密的时间表,所有参与项目的人都知道。这个秘密

时间表从来没有被外界的关注忽悠过,也没有为了迎合市场计划而被操纵过。这个秘密时间表

它总是被遵守,因为它反映了发展部所有成员之间的相互理解。当项目反映这一现实时

什么时候,程序会如期完成;当项目计划与这一现实发生冲突时,程序将被延迟。

我听说过:

有三种情况肯定会导致编程项目的失败。在第一种情况下,负责这个项目的经理对软件感兴趣。

一无所知;第二种情况,负责程序代码的项目负责人没有兴趣写代码;第三

有一种情况,写代码的程序员是临时雇佣的,对项目缺乏忠诚度。在这三种情况下,