59条令人捧腹但真实的程序员编程语录

发表于2017-04-27
评论17 2.16w浏览

我收集了很多关于软件开发者的编程语录。这些语录和软件开发维护、调试、软件bug、软件设计和文档、代码质量、测试和管理等相关。下面这59条编程语录虽然令人捧腹但也揭示了真相。只有真正的软件开发人员才能理解这些编程语录的价值。下面,就让我们开始吧……

软件开发人员和程序员语录

1.Agood programmer is someone who always looks both ways before crossing a one-waystreet. (Doug Linder)

好的程序员即使在过单行道时也总是会环顾两边。

 

2.Don’tworry if it doesn’t work right. If everything did, you’d be out of a job.(Mosher’s Law of Software Engineering)

不要担心它能否正常工作。如果一切正常,那么你就会失去工作。

 

3.Thetrouble with programmers is that you can never tell what a programmer is doinguntil it’s too late. (Seymour Cray)

程序员的烦恼是,你永远无法知道一个程序员在做什么,直到为时已晚。

 

4.Mostof you are familiar with the virtues of a programmer. There are three, ofcourse: laziness, impatience, and hubris. (Larry Wall)

程序员的美德:懒惰,没有耐心以及老子天下第一。

 

5.Alwayscode as if the guy who ends up maintaining your code will be a violentpsychopath who knows where you live. (Martin Golding)

写代码的时候总是想象维护你代码的家伙是一个知道你住在哪里的暴力精神病患者。

 

6.Oneman’s crappy software is another man’s full time job. (Jessica Gaston)

一个人写的烂软件将会给另一个人带来一份全职工作。

 

7.Ifbuilders built buildings the way programmers wrote programs, then the firstwoodpecker that came along wound destroy civilization. (Gerald Weinberg)

如果建筑工人用程序员写程序的方式建造建筑物,那么来的第一只啄木鸟(找bug)就将摧毁文明。

 

8.Themost likely way for the world to be destroyed, most experts agree, is byaccident.  That’s where we come in; we’re computer professionals. We causeaccidents. (Nathaniel Borenstein)

大多数专家认为,世界被破坏的最有可能的方式是,是因为偶然。那就是我们所要进入的领域:我们是计算机专家。我们制造偶然。

 

9.It’sa curious thing about our industry: not only do we not learn from our mistakes,we also don’t learn from our successes. (Keith  Braithwaite)

这是我们这个行业的一件咄咄怪事:我们不仅不从错误中学习,我们也不从成功中学习。

 

10.Oncea new technology starts rolling, if you’re not part of the steamroller, you’repart of the road. (Stewart Brand)

一旦一种新技术开始滚动碾压道路,如果你不能成为压路机的一部分,那么你就只能成为道路的一部分。

 

11.If at first you don’t succeed, call it version 1.0 (unknown)

如果第一次你没有成功,那么称之为1.0版,继续加油。

 

12.Allprogrammers are playwrights and all computers are lousy actors. (Anonymous HackActor)

所有的程序员都剧作家,而所有计算机都是糟糕的演员。

 

13.Thesooner you get behind in your work, the more time you have to catch up.(Anonymous Scheduler)

工作拉下得越早,赶上去所需要的时间越多。

 

14.Whena programming language is created that allows programmers to program in simpleEnglish, it will be discovered that programmers cannot speak English.(Anonymous Linguist)

当创建一种编程语言允许程序员使用简单英语编程的时候,那么新问题又来了,你会发现程序员不说英语。

 

15.Whydo we never have time to do it right, but always have time to do it over?(Anonymous)

为什么我们总是没有时间把事情做对,却有时间做完它?

 

16.Anyfool can write code that a computer can understand. Good programmers write codethat humans can understand.

傻瓜写计算机能理解的代码。优秀的程序员写人类能读懂的代码。

 

17.Anycode of your own that you haven’t looked at for six or more months might aswell have been written by someone else. (Eagleson’s law)

自己的代码六个月或更久不见,还不如别人写的代码。

 

编程/软件开发语录

1.Measuringprogramming progress by lines of code is like measuring aircraft buildingprogress by weight. (Bill Gates)

通过代码行数衡量开发进程就好比用重量来衡量飞机制造进度。

 

2.Programming is like sex. One mistake and you have to support it for the rest ofyour life. (Michael Sinz)

编程就像性爱一样。一个错误就能绑住你的余生。

 

3.Walkingon water and developing software from a specification are easy if both arefrozen. (Edward V Berard)

在目的明确的基础上开发软件就像在结冰的水上行走一样简单。

 

4.Thefirst 90 percent of the code accounts for the first 90 percent of thedevelopment time…The remaining 10 percent of the code accounts for the other 90percent of the development time.(Tom Cargill)

开始90%的代码占开始90%的开发时间……剩下10%的代码还是占90%的开发时间。

 

5.Commentingyour code is like cleaning your bathroom — you never want to do it, but itreally does create a more pleasant experience for you and your guests. (RyanCampbell)

注释代码就像是清洁浴室——尽管你满心不情愿,但它确实可以为你和你的客人创造一种更舒适的体验。

 

6.Programmingtoday is a race between software engineers striving to build bigger and betteridiot-proof programs, and the universe trying to produce bigger and betteridiots. So far, the universe is winning. (Rick Cook)

当今的编程是软件工程师——努力建设更大多更好的傻瓜式程序,和上帝——试图产出更大多更好的傻瓜之间的竞争。到目前为止,世上帝是获胜者。

 

7.Thehardest part of design … is keeping features out. (Donald Norman)

设计中最难的部分……是阻止功能。

 

8.In order to understand recursion, one must first understand recursion.(Anonymous)

要想了解递归,首先必须理解递归。

 

9.Thereare only two kinds of programming languages: those people always bitch aboutand those nobody uses. (Bjarne Stroustrup)

只有两种编程语言:一种是天天挨骂的,另一种是没人用的。

 

10.Thebest thing about a boolean is even if you are wrong, you are only off by a bit.(Anonymous)

关于布尔值最妙的一点是,就算你错了,你也只是错了这一处而已。

 

11.IfJava had true garbage collection, most programs would delete themselves uponexecution. (Robert Swell)

如果Java真的有垃圾收集,那么大多数程序会执行自我删除。

 

12.Intheory, there is no difference between theory and practice. But, in practice, thereis. (Jan L. A. van de Snepscheut)

理论上看,理论和实践之间是没有差别的。但是,在实践中,有。

 

13.Ready,fire, aim: the fast approach to software development. Ready, aim, aim, aim,aim: the slow approach to software development. (Anonymous)

准备,开火,瞄准:快速的软件开发方法。准备,瞄准,瞄准,瞄准,瞄准:缓慢的软件开发方法。

 

14.Programmingis 10% science, 20% ingenuity, and 70% getting the ingenuity to work with thescience. (Anonymous)

编程就是10%的科学,20%得的独创性,再加70%和这门科学的灵巧合作。

 

15.It is easier to measure something than to understand what you have measured.(Anonymous)

衡量比理解你衡量了什么容易。

 

16.Benchmarksdon’t lie, but liars do benchmarks. (Anonymous)

基准不会撒谎,但制定基准的人会撒谎。

 

17.Bettertrain people and risk they leave – than do nothing and risk they stay.(Anonymous)

就算是培训好的员工离开——也好过他们什么也不做却留下来。

 

18.Thegoal of Computer Science is to build something that will last at least untilwe’ve finished building it. (Anonymous)

计算机科学的目标是构建一个至少能持续到我们构建完成的东西。

 

19.Javais to JavaScript what Car is to Carpet.  (Chris Heilmann)

Java之于JavaScript就像car之于carpet(地毯)。后者看上去像是前者的衍生物,实则是完全不同的两个东西。

 

20.It’snot at all important to get it right the first time. It’s vitally important toget it right the last time. (Andrew Hunt and David Thomas)

第一次是否正确完成一点也不重要。最后一次正确完成才至关重要。

 

21.Shouldarray indices start at 0 or 1? My compromise of 0.5 was rejected without, Ithought, proper consideration. (Stan Kelly-Bootle)

数组的下标一定要从01开始吗?我认为,我采取的中间值0.5没有经过适当考虑就被驳回了。

 

22.Programsmust be written for people to read, and only incidentally for machines toexecute. (Abelson / Sussman)

程序必须写得能供人阅读,机器执行只是附带。

 

23.Programmingcan be fun, so can cryptography; however they should not be combined.(Kreitzberg and Shneiderman)

编程可以很有趣,密码学也是如此;但是两者不应该搅和在一起。

 

24.Copy and paste is a design error.  (David Parnas)

复制粘贴是一个设计错误。

 

25.Computersare good at following instructions, but not at reading your mind. (DonaldKnuth)

计算机善于遵循指令,不善于读取你的想法。

 

软件调试语录

1.Deletedcode is debugged code. (Jeff Sickel)

删除的代码是经过调试的代码。

 

2.Ifdebugging is the process of removing software bugs, then programming must bethe process of putting them in. (Edsger Dijkstra)

如果调试是消除软件bug的过程,那么编程就是产出bug的过程。

 

3.Debuggingis twice as hard as writing the code in the first place.  Therefore, ifyou write the code as cleverly as possible, you are–by definition–not smartenough to debug it.

调试一段程序的难度是写出这段程序的难度的两倍,因此,如果你的代码尽可能清楚的话,那么你就不用费力地调试它。

 

4.It’s hard enough to find an error in your code when you’re looking for it; it’seven harder when you’ve assumed your code is error-free. (Steve McConnel)

你的目的是找bug的时候,bug已经很难找了;更不要说当你认为自己的代码中没有错误的时候。

 

软件bug语录

1.It’snot a bug – it’s an undocumented feature. (Anonymous)

这不是bug——这是没有被证明的功能。

 

2.Withoutrequirements or design, programming is the art of adding bugs to an empty textfile. (Louis Srygley)

如果没有需求和设计,那么编程就是添加bug到空的文本文件的艺术。

 

3.Badcode isn’t bad, its just misunderstood. (Anonymous Code Behaviorist)

所谓坏的代码并不坏,它只是被误解了。

 

4.Thereare two ways to write error-free programs; only the third one works. (Alan J.Perlis)

写没有错误的程序有两种方式;但第三种才有效。

 

5.Bewareof bugs in the above code; I have only proved it correct, not tried it. (DonaldKnuth)

小心上面代码中的bug;我只证明了它是正确的,还没有尝试过。

 

软件/终端产品语录

1.Beforesoftware can be reusable it first has to be usable. (Ralph Johnson)

在软件可以被可重复使用前,它首先必须是可用的。

 

2.Softwareundergoes beta testing shortly before it’s released. Beta is Latin for “stilldoesn’t work”. (Anonymous)

软件在发布前要经过beta测试。beta即拉丁语仍然无法正常工作的意思。

 

3.Thebest performance improvement is the transition from the nonworking state to theworking state. (J. Osterhout)

最佳性能改进是指从不可工作状态向工作状态的转变。

 

4.Thecheapest, fastest, and most reliable components are those that aren’t there.(Gordon Bell)

最便宜,最快和最可靠的组件是不存在的。

 

5.I think Microsoft named .Net so it wouldn’t show up in a Unix directorylisting. (Oktal)

我认为微软命名.Net,它就不会在Unix目录列表显示出来。

 

6.Softwareand cathedrals are much the same – first we build them, then we pray. (SamRedwine)

软件和教堂非常相似——首先,我们建造它们,然后我们祈祷。

 

7.Thesoftware isn’t finished until the last user is dead. (Anonymous)

直到最后一个用户死去,软件才算完成。

 

8.Mostsoftware today is very much like an Egyptian pyramid with millions of brickspiled on top of each other, with no structural integrity, but just done bybrute force and thousands of slaves. (Alan Kay)

现在的大多数软件非常像埃及金字塔,在彼此之间堆建了成千上万的砖块,缺乏结构完整性,只是靠蛮力和成千上万的奴隶完成。

 

英文原文:59 Hilarious but True Programming Quotes for Software Developers

翻译作者:码农网 – 小峰

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引