只有程序员才了解的9个真相!

真相1

“你所不知道的是,很多我们每天都使用的关键软件(如Mac OS
X和Facebook),作为一个整体虽然可以正常工作,但是实际上它们的背后充斥了各种的弊端和缺陷。这就像是你兴致勃勃地拆开了一架全新的747飞机,但是却发现燃料线是由衣架固定的,起落架是用胶带粘贴的。”
——Ben Cherry

这其实是非常有意思的一件事:网页和程序外观精美、运行流畅,但是却很有可能只是完美在前端上(用户所能看到的那一部分)。它们的背后其实千疮百孔、满是错误,不过因为某些神奇的原因,居然也可以正常工作。

真相2

“编写应用程序时,大概25%的时间是花在思考最终用户将会做哪些蠢事上的。”——Brian Humes

不过,25%这个数值会根据开发人员和程序员的作为而上下浮动。每次构建产品时,我们都需要坐下来思考最终用户将会如何把这个程序搞的一团乱。他们会点击什么,他们会写什么,问题的措辞,使用的语言,以及我们的写法所造成的不同理解。如果不注意这一点,那么就会出现很多问题,这是因为虽然我们知道程序是如何工作的,但是最终用户是不懂的。

真相3

“程序员不是修电脑的。” ——Ritesh Kumar Gupta

程序员是搞算法和设计原则的,不是一个修电脑的。我们知道电脑的内部工作原理,代码是如何协作的,但是,我们并不知道如何修理硬件,不知道为什么每次打开浏览器就崩溃,也不知道为什么电脑发热过度。请不要用一种“这种事对你们而言就是小菜一碟”的眼光看待我们。

真相4

“编程是一种思想,而不是敲代码。” ——Casey Patton

编程并不是说,只要你安安静静地坐下来,写个上千行代码,发布程序或应用程序的意思,编程其实是一种思想,一种解决问题的方法。而放松则是思考出方法的关键。

真相5

从零开始计算,而不是从一开始。

我们是从0开始计数的,所以你的“1”是我的“0”,你的“10”是我的“9”。之所以这么做,是因为这可以大规模地改善效率。

真相6

“一旦进入状态,编程就犹如神助——这种全神贯注的状态能让任何问题都变得小菜一碟。”——Morgan Johansson

知道为什么程序员被称为夜猫子吗?知道为什么我们常常熬夜吗?因为这样能让我们进入一种专注的状态,而不必担心会被其他人打断——因为他们都睡着了,这些烦人的家伙终于闭上了他们唧唧歪歪的嘴。真是一个伟大的编程时间啊!

真相7

告诉你个秘密,带着问题睡觉,实际上可以解决这个问题。

很多时候,我遇到那种花了几个小时都解决不了的问题,我就会去睡一觉。通过20分钟,一小时,六小时,十二小时的睡眠,醒来之后,问题答案就自然而然地出来了。

真相8

分配下来的任务却不再需要,就像父母杀掉孩子。

我们写的程序其实都类似于这样的层次结构。Parent管理它下面的Child。

现实中,如果父母不想要孩子,会去做流产。而在程序中,如果不再需要需要某些任务,那么会切断其与服务器的联系,杀掉这个孩子。

真相9

当我们吹嘘我们有多么了解电脑时,你通常会不屑一顾,同样的,你的自吹自擂也让我们觉得好烦。

老实说,这真的很烦,我们真的一点也不关心你对于计算机的了解。如果你说“我对于计算机不是很懂”,或者“我对计算机编程不是很感兴趣”那还是可以理解的,但是自吹自擂,班门弄斧就会让我们厌烦了。请规避这种行为吧。

来源:51CTO

时间: 2024-08-24 02:02:37

只有程序员才了解的9个真相!的相关文章

程序员才是真正的段子手

简评:都说程序员不懂幽默,不解风情还闷骚,总之就是那群对着琴的牛,其实并不然,每个程序员其实都是段子手.因为每天都面对电脑写代码,所以总要有一些小幽默来调节一下心情. 杀一个程序员不需要用枪,改三次需求就可以了 程序员退休后决定练习书法,于是重金购买文房四宝.一日,饭后突生雅兴,一番研墨拟纸,并点上了上好檀香.定神片刻,泼墨挥毫,郑重地写下一行字:hello world! 柳依依说:其实我爸是个程序员 ,我大姐叫玲玲 ,二姐叫玲依 ,三姐叫依玲 ,我妹妹叫忆初. 程序猿的读书历程:x 语言入门

关于PHP程序员解决问题的能力

这个话题老生长谈了,在面试中必然考核的能力中,我个人认为解决问题能力是排第一位的,比学习能力优先级更高.解决问题的能力既能看出程序员的思维能力,应变能力,探索能力等,又可以看出他的经验.如果解决问题能力不佳是无法通过面试的. 这里举个例子,假如我执行了一个PHP的脚本,如php test.php,预期是可以返回一个字符串.但执行后没有任何信息输出,这时候通过什么方法能知道程序错在哪里?这里可以将解决问题能力分为8个等级,越到后面的表示能力越强. Lv0 查看PHP错误信息 程序没有达到预期效果,

PHP 程序员解决问题能力的八个级别

这个话题老生长谈了,在面试中必然考核的能力中,我个人认为解决问题能力是排第一位的,比学习能力优先级更高.解决问题的能力既能看出程序员的思维能力,应变能力,探索能力等,又可以看出他的经验.如果解决问题能力不佳是无法通过面试的. 这里举个例子,假如我执行了一个PHP的脚本,如php test.php,预期是可以返回一个字符串.但执行后没有任何信息输出,这时候通过什么方法能知道程序错在哪里?这里可以将解决问题能力分为8个等级,越到后面的表示能力越强. Lv0 查看PHP错误信息 程序没有达到预期效果,

程序员应具备的素质

程序|程序员|素质|程序员 程序员应具备的素质[转帖]程序员是一种技术工作,在IT的发展中有相当重要的地位,从底层硬件通讯协议的建立, 到数据传输层的处理,到操作系统的建设,到数据库平台的建设,一直到应用层上各种数 据营销平台的搭建,程序员在里面都扮演着举足轻重的角色并为IT事业的发展做出了巨大 的贡献. 中国有很多精于编码的人,但是中国软件行业,尤其是网络应用开发方面误区很大,很难 形成有规模的软件开发力量和产品能力,不但比美国差距甚远,和印度相比也是颇有不 如.这些问题不是在于中国程序员的智

程序员应具备的素质-拨乱反正篇

程序|程序员|素质 程序员是一种技术工作,在IT的发展中有相当重要的地位,从底层硬件通讯协议的建立,到数据传输层的处理,到操作系统的建设,到数据库平台的建设,一直到应用层上各种数据营销平台的搭建,程序员在里面都扮演着举足轻重的角色并为IT事业的发展做出了巨大的贡献. 中国有很多精于编码的人,但是中国软件行业,尤其是网络应用开发方面误区很大,很难形成有规模的软件开发力量和产品能力,不但比美国差距甚远,和印度相比也是颇有不如.这些问题不是在于中国程序员的智商和工作努力状况,也不是在于国家和民间对开发

好程序员 + 烂技术 = 痛苦

我所说的"关于程序员的痛苦的一种悖论"描述如下: "好的程序员大部分的时间都在干他们厌恶的事情.使用他们厌恶的技术和工具." 这是反常理的,看上去就是悖论:你会认为烂程序员才会把时间都花在烂技术上,优秀的程序员会把时间花在那些尖端的技术上.不是吗? 我在自己的体验中发现了这个悖论,直到后来我才明白为什么会是这样. 什么样的工作会让程序员们厌恶不已? 这对一些有经验的程序员来说并不是什么新闻,但我要把这向那些非编程人员解释一下: 好程序员厌恶做那些本来可以自动完成的事

怎样尊重一个程序员

得知一位久违的同学来到了旧金山湾区,然而我见到他时,这人正处于一生中最痛苦的时期.他告诉我,自己任职的公司在他加入之前和之后,判若两人.录 取的时候公司对他说,我们对你在实习期间的表现和学术背景非常满意,你不用面试,甚至不用毕业拿学位,直接就可以加入我们公司成为正式员工.然而短短一年 后的今天,这位同学已经完全感觉不到公司对自己技能的尊重.Manager让他做一些乱七八糟没技术含量的事情,还抱怨说他做事太慢,并且在他的 evaluation上很是写了一笔.在人格尊严和工作安全感的双重打击之下,这

程序员谈学习:我为什么要学习Linux?

今天这篇博客不是写关于具体技术的,而是我对程序员怎样学习和提高自己能力的一些感悟.我是今年7月初毕业的,离开学校后就直接进入之前实习的公司上班了.现在算来工作了也将近半年了,算上实习的时间,将近一年了.在这期间,参与了几个android项目的开发,也维护过别人写的项目,虽然都不是很大的项目,但也学习了不少东西.在这其间,我亲身经历了一个设计拙劣的项目,是怎么样一步步趋于混乱而最终变的完全不可维护.从这件事情我了解到优秀的程序员是多么可贵,而"不优秀"的程序员是怎样把项目一步步的搞砸搞烂

不要相信一个程序员在加班时间写出的代码这是真的吗。。。。。

作为一个最底层的程序员,我先记录一些只有底层程序员才会知道的事情.如果多年后,我违背自己进入这个行业的初心,走上管理岗位,也能回想起一些禁忌,避免一些错误. 其中最重要的就是这条:不要相信一个程序员在加班时间写出来的代码. (软件工程的学说表明,连正常时间好好写的代码,也不要太相信.不过这不是本文的重点,略过不提.) (不懂代码的人,看到本文中的Java代码可以略过,不影响理解.) 创造力的时限 写代码,与写文章.绘画.思考复杂问题,并没有本质上的区别,都是创造性的活动. 每个人的创造力,都会随