伟大的程序员找到解决复杂问题的简单解决方案

2009年6月30日,由prashant · 评论
提起下: 杂项

很长一段时间后,我能找到源报价

初级程序员创建简单的问题简单的解决方案。 高级程序员创建复杂的解决方案到复杂的问题。 伟大的程序员找到解决复杂问题的简单解决方案。

它是由所谓的作文美丽的查尔斯康奈尔软件

另一位最喜欢的是Python的禅 -

美丽是比丑陋。
Explicit是胜于隐。
简单是比复杂好。
较复杂的,复杂的是更好的。
单位比嵌套。
稀疏密集更好。
可读性计数。
特殊情况特殊,打破规则。
虽然实用性次纯度。
错误应该永远默默传递。
除非明确地沉默。
在模糊的脸,拒绝猜测的诱惑。
应该有一个最好只有一个明显的方式做到这一点。
虽然这种方式可能不会在第一个很明显的,除非你是荷兰人。
现在是比不来好。
虽然从未往往比*权*现在。
如果实现是很难解释的,它是一个坏主意。
如果实现是很容易解释,它可能是一个好主意。
命名空间是一个鸣喇叭伟大的想法 - 让我们做这些!
-------------------------
再有就是经典的编程道

-

学分链接网站

杰弗里詹姆斯译

转录由杜克福莱

经由Anupam Trivedi,Sajitha Tampi,和Meghshyam贾甘

重新HTML化和编辑Kragen Sittler

-

预订1 - 无声的空白

因此,说话的主程序员:

“当你学会抢夺陷阱帧的错误代码,它
你离开的时候了。“

1.1

形成某些神秘,出生在无声的空白。 独自等待和
一动不动,这是在一次仍然在不断运动。 这是源
所有程序。 我不知道它的名字,所以我将它称为陶
编程。

如果道是伟大的,那么操作系统是巨大的。 如果作业
系统是伟大的,那么编译器是伟大的。 如果编译器是伟大的,
然后,应用程序是巨大的。 用户很高兴,并存在
在世界的和谐。

道流动的编程远,早上风的回报。

1.2

道生机器语言。 机器语言诞生了
汇编。

汇编生下的编译器。 现在有近万
语言。

每一种语言都有其目的,但卑微。 每一种语言表达
阴和阳的软件。 每一种语言都有其内道的地方。

但不要在COBOL编程,如果你能避免它。

1.3

一开始是道。 陶生下了空间和时间。
因此空间和时间的编程贤和杨。

程序员不领悟道始终运行时间
他们的节目和空间。 程序员领悟道总是
有足够的时间和空间来实现他们的目标。

本来就应该这样吗?

1.4

聪明的程序员告诉道,并遵循它。 平均
程序员告诉道和搜索它。 愚蠢的程序员
约涛告诉它笑。

如果不是因为没有笑声,就没有道。

最高声音是最难听到。
展望未来,是一个以退为进的方式。
伟大的天才,表明自己在晚年。
即使一个完美的方案,仍然有错误。

-------------------------

第2册 - 古代大师

因此,说话的主程序员:

“无需编程三天后,生活变得毫无意义。”

2.1

老程序员神秘而深刻的。 我们无法捉摸
他们的想法,所以我们所做的一切是描述其外观。

知道,像一只狐狸过水。 警报,像一般
战场。 样,像女主人迎接她的客人。 简单,如
uncarved块木头。 不透明,像在黑暗的洞穴黑池。

谁可以告诉他们心灵的秘密?

答案只存在于陶。

2.2

特级大师图灵曾梦见自己是一台机器。 当他醒来时他
惊呼:

“我不知道我是否图灵在做梦,我一台机器,或
做梦,我图灵机!“

2.3

从一个非常大的电脑公司的程序员去软件
发布会上,然后返回他的经理报告,他说:“什么样
程序员的工作为其他公司吗? 他们表现不好,
与外表冷漠。 他们的头发长,蓬头垢面,和他们
衣服被皱纹老。 他们坠毁好客套房和
在我的演讲粗鲁的声音。“

这位经理说:“我应该永远不会发送您的会议。 这些
程序员生活超越物理世界。 他们认为生活的荒谬,
偶然巧合。 他们来来去去不知道的限制。
没有照顾,他们只生活在它们的方案。 他们为什么要打扰
社会习俗?

“他们是内道活着。”

2.4

新手问法师:“这里是一个程序员,从来没有设计,
文件或测试他的计划。 然而,谁知道他认为他是一个
在世界上最好的程序员。 这是为什么?“

大师回答说:“这程序员掌握了道。 他已经走了
超越设计的需要;,他不生气,当系统
崩溃,但接受宇宙无忧虑。 他已经超越了
需要的文件;他不再关心,如果其他人看到他的代码。
他已经超越了需要进行检测;他的每一个节目都完美
内自己,宁静和典雅,其目的不言自明的。 诚然,
他已经进入了神秘道。“

-------------------------

第3册 - 设计

因此,说话的主程序员:

“当被测试程序,这是为时已晚,使设计
的变化。“

3.1

曾经有一个人去计算机贸易展。 每一天,因为他
后,该名男子在门口的警卫告诉:

“我是一个伟大的小偷,我的功勋入店行窃而闻名。
凡事预则,这个贸易展不得逃脱unplundered。“

这个讲话大大扰乱了门卫,因为有上百万
美元的计算机设备里面,所以他仔细观看了男子。
该名男子只是走丢从展台展位,悄悄给自己哼唱。

该名男子离开时,门卫把他放在一边,搜查了他的衣服,但
没有被发现。

在本次展会的第二天,男子返回,并斥责卫兵
他说:“我昨天逃脱了一个巨大的战利品,但今天会更
门卫看着他更好。“因此更加密切,但无济于事。

在本次展会的最后一天,门卫可以抑制他的好奇心
不再。 “主席先生窃贼,”他说,“我很困惑,我不能住在
和平。 请赐教。 它是什么,你偷了吗?“

该名男子笑了​​。 “我偷的想法,”他说。

3.2

曾经有一个主程序员写非结构化的程序。
新手程序员,寻求模仿他,也开始写
非结构化方案。 当新手问大师评价他的
进展情况,掌握批评他写非结构化的程序,
说,“什么是适合主的,是不是适当
新手。 超越结构之前必须了解的道。“

3.3

曾经有一名军阀法院的程序员
吴。 军阀程序员问:“哪一个更容易的设计:
会计包或操作系统?“

“操作系统,”程序员回答。

军阀发出一声难以置信的惊叹号。 “当然,一个会计
包是微不足道的,旁边的一个操作系统的复杂性,“他
说。

“并非如此,”程序员说,“当设计一个会计软件包,
程序员工作作为人与人之间有不同的调停
思想:它必须如何操作,如何其报告中必须出现,以及如何必须
符合税收法律。 相比之下,操作系统并不局限于
外露面。 当设计一个操作系统,程序员
机和思想之间寻求最简单的和谐。 这就是为什么
操作系统更易于设计。“

军阀吴点头微笑。 “这是所有良好和良好,但
这是更容易调试?“

程序员没有回答。

3.4

一个经理去主程序员,显示了他的要求
一个新的应用程序文件。 经理问主人:“多久
将需要设计这个系统,如果我分配五个程序员?“

“这将需要一年时间,说:”及时掌握。

“但我们需要这种系统立即甚至更快​​! 多久
如果我分配十个程序员吗?“

主程序员皱起了眉头。 “在这种情况下,这将需要两年时间。”

“如果我分配一百程序员呢?”

主程序员耸了耸肩。 “那么设计将永远不会被
完成,“他说。

-------------------------

预订4 - 编码

因此,说话的主程序员:

“一个精心编写的程序是自己的天堂,一个写得不好的程序是
自己的地狱。“

4.1

方案应轻灵,像子程序连接
珍珠链。 该方案的精神和意图应该保留
整个。 既不应太少或太多,既不
不必要的循环,也没有无用的变量,既不缺少结构,也不
压倒性的刚性。

一个程序应遵循最小惊讶“`”。 这是什么法?
原因很简单,该方案应该总是回应的方式向用户
他至少让人惊讶。

一个程序,无论多么复杂,应作为一个单一的单元。 该计划
应导演之内而不是外表的逻辑。

如果计划失败,这些要求,将在国家
无序和混乱。 只有这样,才能正确重写
方案。

4.2

新手问主人:“我有一个程序的某个时候运行和
有时中止。 我按照编程的规则,但我
完全莫名其妙。 是什么原因呢?“

主回答说:“你弄糊涂了,因为你不明白道。
只有傻瓜,希望从他的同胞人类的理性行为。 为什么你
期望从一个人类建造的机器呢? 计算机模拟
确定性;只道是完美的。

“编程的规则是暂时的,只道是永恒的。 因此
你必须考虑到道之前收到的启示。“

“但如何将我知道当我收到的启蒙?”问
新手。

“你的程序将正常运行,主回答说。”

4.3

一个主解释道性质,他的一个新手。
道体现在所有的软件 - 无论多么微不足道,说:“
主。

“在一个手持计算器道?”问的新手。

“这是,”来答复。

“视频游戏之道?”持续的新手。

“即使是在一个视频游戏,”师傅说。

“,是为个人电脑在DOS道?”

主咳嗽和转移他的位置稍微。 “这个教训是超过
今天,“他说。

4.4

王王子的程序员编码软件。 他的手指跳起后
键盘。 没有错误讯息编译的程序,该程序
跑像一个温柔的风。

“优秀!”王子感叹道,“你的技术是完美无缺的!”

程序员开始从他的终端,“我”的技术?“说
遵循的是道 - 超越所有的技术! 当我第一次开始计划我
会前,我看到在一个大规模的问题。 三年后,我没有
不再看到这个质量。 相反,我用的子程序。 但现在我什么也看不见。
我的整个生命存在一个无形的虚空。 我的感觉是空闲的。 我的精神,
自由地工作,没有计划,遵循自己的本能。 总之,我的程序
写入本身。 诚然,有时也有困难的问题。 我看到他们
未来,我慢下来,我静静地观看。 然后,我改变一个单一的代码行
像闲置的烟雾喷消失和困难。 然后,我编译
方案。 我坐不住了,并让工作的喜悦填满我被。 关闭我的
了一会儿眼睛,然后注销。“

王王子说,“将我所有的程序员是明智的!”

-------------------------

图书5 - 维护

因此,说话的主程序员:

“尽管一个程序,但三线长,哪天会要
维持。“

5.1

一个良好的使用门需要在铰链上的石油。
迅速流动的流不增长停滞。
无论是声音,也没有思想可以穿越一个真空。
如果不使用软件腐烂。

这些都是伟大的奥秘。

5.2

一位经理问程序员多久才会带他去完成
计划对他的工作。 “这将是明天完成,”
程序员及时回答。

“我认为你是不切实际的,”经理说,“说实话,如何
需要多长时间?“

程序员想了一会儿。 “我有一些功能,我希望
补充。 这将需要至少两个星期,“他最后说。

“坚持”,甚至说是太大的奢望,经理,“我会
满意,如果你只是告诉我,当程序完成后。“

程序员同意这一点。

几年后,经理退休。 在他的退休之路
午餐会上,他发现睡在他的终端的程序员。 他曾
编程一整夜。

5.3

一次,一个新手程序员分配给代码一个简单的财务方案。

新手拼命工作了很多天,但是当他的主人审查
他的节目中,他发现,它包含了屏幕编辑器,一组
广义图形程序,人工智能界面,但
没有任何金融丝毫提及。

当被问及这主,新手成为愤慨。 “不要
等的不耐烦了,“他说,”我将最终在金融的东西。“

5.4

一个良好的农民忽视他已种植?
一个好老师,忽视甚至最不起眼的学生?
一个好父亲,让一个孩子饿死吗?
一个好的程序员拒绝保持他的代码吗?

-------------------------

预订6 - 管理

因此,说话的主程序员:

“让程序员很多经理数 - 那么所有将
生产力。“

6.1

当经理持有无休止的会议,程序员编写游戏。
会计师季度利润的时候,开发预算即将
被削减。 当资深科学家谈蓝色的天空,云即将推出
英寸

诚然,这不是编程道。

当管理者作出承诺,游戏节目被忽略。
会计师作出长期计划,和谐和秩序即将被
恢复。 当资深科学家解决手头的问题,
问题将很快得到解决。

诚然,这是编程道。

6.2

为什么是程序员非生产性?
因为他们的时间浪费在会议上。

为什么是程序员的逆反心理?
由于管理干涉太多。

为什么程序员辞职逐一呢?
因为他们烧毁。

在工作​​管理不善,他们不再重视自己的工作。

6.3

一位经理被解雇,但为他工作的程序员
发明了一种新的方案,走红和畅销。 因此,
经理保留他的工作。

经理试图给程序员的奖金,但程序员
拒绝,说:“我写的程序,因为我认为这是一个
有趣的概念,因此,我希望没有奖励。“

听到这个消息后,经理说,“这程序员,虽然他认为
小自尊的地位,理解以及一个适当的责任
雇员。 让我们促进他管理的崇高地位
顾问!“

但是,当被告知这样,程序员再次拒绝,他说,“我的存在
我可以计划。 如果我被提拔,我什么也不做,但浪费
大家的时间。 我可以走了吗? 我有一个程序,我的工作。“

6.4

一个经理去他的程序员,并告诉他们:“至于你的工作
时间:你要来在早上9离开
在下午五本“,他们都成了愤怒和几个
当场辞职。

因此,经理说:“所有权利,在这种情况下,你可以设置你自己
工作时间,只要你按时完成您的项目。“
程序员,现在满意了,开始来在中午和工作到凌晨
小时的早晨。

-------------------------

第七册 - 企业智慧

因此,说话的主程序员:

“你能证明企业执行的程序,但你不能
让他的电脑识字。“

7.1

新手问主人:“东方有一个伟大的树结构
男人称之为'公司总部'。 它是臃肿的外形与
副总裁和会计师。 它会发出大量的备忘录,每个
,说'去吧,因此!“ 或'去吧,这儿!“ 没有人知道是什么意思。
今年的新名称是摆上树枝,但都无济于事。 怎样才能
这种非自然实体“?

主回答说:“您认为这个巨大的结构和
不安的是,它没有理性的目的。 你能不能采取游乐
无尽的回旋? 你不享受平静缓和的编程
下面的掩护分行? 你为什么要打扰其
无用?“

7.2

在东部,这是比所有其他的鱼大鲨鱼。
成鸟的翅膀,像填补了天空云的变化。 当此
整个土地的鸟的动作,它所带来的企业消息
总部。 此消息滴成的程序员之中,
像一只海鸥海滩后,其商标。 然后鸟坐骑
风,并在其背面的蓝天,返回家乡。

难怪新手程序员在盯着鸟,他的理解
没有。 平均程序员害怕鸟的到来,为他担心
它的消息。 主程序员继续在他的终端工作,
他不知道,鸟来去匆匆。

7.3

象牙塔的魔术师带来了他最新发明
主程序员来考察。 魔术师轮式一个大黑盒子
主人的办公室,而掌握在沉默中等待。

“这是一个综合的,分布式的,通用的工作站,”开始
魔术师“,符合人体工程学的设计与专有操作系统
系统,第六代语言,多个国家和先进的用户
接口。 花了我的助手几百人年建设。
难道不惊人吗?“

主略微扬眉。 “这实在是惊人的,”他
说。

“公司总部指挥,”魔术师继续,“那
每个人都使用此工作站为平台,为新方案。 你是否同意
这样做呢?“

“当然,”主人回答说,“我将它运到
数据中心立刻!“和魔法师返回到他的塔,以及
高兴。

几天后,一个新手漫步到主办公室
程序员和说,“我无法找到我的新计划上市。 不要
你可能知道它在哪里?“

“是的,”主人回答说,“房源堆放在平台上
数据中心。“

7.4

主程序员,计划,方案,毫不畏惧。
管理的变化可以伤害他。 销售,他不会被解雇,即使。
项目被取消。 这是为什么? 他充满了道。

-------------------------

预订8 - 硬件和软件

因此,说话的主程序员:

“无风,草不动。 如果没有软件,硬件
没用。“

8.1

新手问主人:“我认为,一个电脑公司
大于所有其他。 塔上面像一个巨人之间的竞争
相形见绌。 其师中的任何一个可以组成一个完整的业务。 为什么
这样呢?“

主回答说:“你为什么问这样愚蠢的问题吗? 这家公司
是大的,因为它是大的。 如果只是硬件,没有人会买
它。 如果只是国产软件,没有人会使用它。 如果它仅维持
系统,人们会像对待一个仆人。 但是,因为它结合了所有
这些东西,人们认为它的神灵之一! 不求
努力,毫不费力地征服了。“

8.2

有一天,一个主程序员通过一个新手程序员。 主指出
与手持式电脑游戏对新手的当务之急。 “对不起,”
他说,“我可以检查它?”

新手狂奔的关注和设备交给主。 “我
看到该设备声称,有三个层次的发挥:容易,中等,
努力,“师傅说。 “然而,每一个这样的设备,另一个水平
发挥设备的目的不是为了征服人类,也没有被征服
由人类。“

“祈祷,大师,”恳求新手“,如何找到这
神秘的设置吗?“

主下降到地面设备和粉碎它踩在脚下。
突然醒悟新手。

8.3

曾经有程序员后,微处理器工作。 “你看如何
小康,我在这里,他说:“前来参观的大型机程序员,
“我有我自己的操作系统和文件存储设备。 我没有
与其他人分享我的资源。 该软件是自洽
易于使用。 你为什么不退出你现在的工作和我在这里参加?“

大型机程序员,然后开始给他的朋友来形容自己的系统,
说:“大型机坐落在中间,像一个古老的圣人沉思
数据中心。 它的磁盘驱动器的谎言像一个伟大的海洋月底到年底
机械。 该软件是多方面的钻石,并作为令人费解
作为原始丛林中。 的节目,每一个独特的,将通过该系统
就像一个迅速流动的河流。 这就是为什么我很高兴我在哪里。“

微电脑编程,听到这个消息后,陷入了沉默。 但是,这两个
程序员仍然是朋友,直到他们的日子结束。

8.4

硬件会见Changtse道路上的软件。 软件说:“你是
我和贤杨。 如果我们一起旅行,我们将成为著名的和赚取
巨额的钱。“等所载,思想征服
世界。

目前,他们会见了固件,谁是穿着破烂的衣衫褴褛,步履蹒跚
一起撑起一个棘手的棒。 固件对他们说:“道在于
超越阴阳。 它是沉默,仍然作为一个水池。
不求名利,因此没有人知道它的存在。 它不寻求
财富,是它自身内部完成。 它的存在和超越时空
的时间。“

软件和硬件,惭愧,返回自己的家园。

-------------------------

预定9 - 后记

因此,说话的主程序员:

“这是你离开的时候了。”

-------------------------

如果你喜欢这些,你可能还喜欢读恶化的是更好