黑客与普通程序员的10条区别

1. 黑客是程序员的子集。

2. 程序员在解决那些原先已经被解决过的问题。而黑客通常是在尝试解决一些新的问题。

3. 程序员是一种职业,而黑客是一种兴趣。

4. 程序员的工作有很多限制,而黑客可以尽情发挥。

5. 程序员都想把自己说得更好,因为他们要推销自己,而真正的黑客更谦虚,他们知道自己懂得还不够多。

6. 程序员是一种“职责”,需要的是对编程语言的使用,更希望尽快完成工作,而不是探寻为什么要做这项工作。做一个程序员没有什么错,但生活中有很多比编程更重要的事情。相反,黑客是一种“心态”,对技术有着极大的好奇,希望理解核心的工作原理,喜欢创造。尝试理解如何工作,如何做得更好,如何让事情做得特别。黑客就像艺术家或哲学家,同时有着科学工程的天赋,有很多“为什么”和“为什么不”。

7. 程序员和黑客,就如同画匠和艺术家,DIYer和工匠,教科书的方式和创新的方式。

8. 程序员的目标是写出程序,完成需求,而黑客是要让程序为自己而用,满足自身需求。

9. 程序员和黑客都在写代码,只是黑客把不可能变为了可能。

10. 程序员的代码:

    #ifndef __A_B___S__LIB_____2___
#include “mything3.h”
#include “mything4.h
#include “lib/bicycle.h”
#include “lib/noodle.h”
#endif
#ifndef __A_B___S__LIB______4__
#include “mything1.h”
#include “mything2.h”
#include “lib/mything3.h”
#include “lib/spaghetti.h”
#endi

    而黑客的代码:

    #include “myhack.c”

    他们的代码通常非常高效,但不被认可,因为人们根本看不懂。

原文:http://www.quora.com/Whats-the-difference-between-a-hacker-and-a-regular-coder
译文:http://www.php100.com/html/it/focus/2014/1111/7778.html
(翻译:PHP100_Zeroing)

编程引言补充

作者:陈皓;原文地址:http://coolshell.cn/articles/1212.html

之前收集过《22条经典的编程引言》,发现还有一些未收录的,下面这些引言也很有意思的,希望你喜欢。

“The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.” – Tom Cargill
“最开始的90%的代码使用了程序员90%的时间,剩下的10%的代码也需要90%的开发时间”——Tom Cargill(这不就是中国谚语——“行百步半九十”)

“In order to understand recursion, one must first understand recursion.” – Author Unknown
“要知道什么是‘递归’,你首先需要知道‘递归’”——无名氏

“I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone.” – Bjarne Stroustrup
“我总是希望电脑能和电话一样好用,现在我的这个愿望成真了,因为我已经不知道怎么使用我的电话了”– Bjarne Stroustrup

 “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.” -C.A.R. Hoare
“我们有两个方法来进行软件设计:一个是让其足够的简单以至于让BUG无法藏身;另一个就是让其足够的复杂,让人找不到BUG。前者更难一些” — C.A.R. Hoare

  “If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization.” – Gerald Weinberg
“如果建筑工人盖房子就像程序员写程序一样,那么只需要一只啄木鸟就可以摧毁人类文明”– Gerald Weinberg

“Nine people can’t make a baby in a month.” – Fred Brooks
“九个人不能只用一个月就能生出孩子来”– Fred Brooks (这是对人月计算法的一个讽刺)

“Before software can be reusable it first has to be usable.” – Ralph Johnson
“在软件可被重用前,它必需要可以被用”– Ralph Johnson

程序员之歌
99 little bugs in the code,
99 bugs in the code,
fix one bug, compile it again,
101 little bugs in the code.
101 little bugs in the code….
(Repeat until BUGS = 0)

Any fool can write code that a computer can understand. Good programmers write code that humans can understand. –Martin Fowler
任何一个傻子都能写出让电脑能懂的代码,而只有好的程序员可以写出让人能看懂的代码 — Martin Fowler

Wirth’s law: Software gets slower faster than hardware gets faster. –Niklaus Wirth
Wirth定律,软件把性能变慢的速度要快于硬件把性期变快的速度。– Niklaus Wirth

 Better train people and risk they leave – than do nothing and risk they stay.
Anonymous
就算是培训的员工会离开,这也好过他们什么也不做却不会离开。——无名氏

Good judgment comes from experience, and experience comes from bad judgment. –Frederick P. Brooks
“好的判断来自于经验,而经验则来自于坏的判断”

UNIX is simple. It just takes a genius to understand its simplicity –Dennis Ritchie
UNIX 简单的,但只有天才才能知道他的简单 — Dennis Rithie

Unix was not designed to stop people from doing stupid things, because that would also stop them from doing clever things.  –Doug Gwyn
Unix 并不是设计成——阻止人们做那些愚蠢的事,因为那同样会阻止人们做聪明的事。——Doug Gwyn

如果你想看更多这样的引言,你可以浏览下面这个网页:
http://www.comp.nus.edu.sg/~damithch/pages/SE-quotes.htm