1.软件开发这个行业里,人们总是在做重复的事, “假装”自己在发明新的东西。
若你觉得有个东西很酷炫新奇, 那它肯定是从Smalltalk, HAKMEM, Ivan Sutherland, Douglas Engelbart, 早期的IBM, 或者Bell 实验室其中之一抄来的。
2.别相信编译器, 别相信工具, 别相信文档, 也别相信你自己。
3.我们不需要更多的编程语言! 但是还是会有人跑去发明一个新的语言。而那个超酷的新语言肯定还是用的IEEE-754浮点数, 和定宽整数吧。
4.维护旧代码比写代码困难的多. 写很多很多新代码其实只是在犯懒。
5.我们学习到的知识是, 内存, cpu, 带宽都是无限和免费的. 实际上不是这样的, 推荐读读 Knuth的 prematrue optimization 相关的文字。
6.几个月之后你就会忘记你当时为啥写那段代码… 写的时候能写多直白就多写多直白(建议: 永远低估几月后自己的智力准没问题的)。
7.有时候一行sed命令就够了。
8.如果谁跟你说他的方案绝逼是最好最快的, 你得明白一点, 编程是个艺术不是宗教。
9.如果你觉得有个事情你要重复做10次以上, 就立刻把它做成自动化的!(其实大概3次就该考虑了)
10.备份是一个事情, 而恢复备份是完全不同的另外一个事情!
11.在你自己的电脑上可以运行不代表没有bug. - Piers Sutton.
12.想要装一个新工具的话, 等0.1版本出来再说, 小白鼠就让别人去做吧。
13.好的程序员写好的代码. 杰出的程序员不写代码. 大师程序员删代码。
14.出问题时, 别管有多少领导正在朝你吼着训话, 第一件事情总应该是稳定复现bug。
15.或早或晚, 你会遇到一个经验丰富的前辈, 偶尔他会向你传授 Laws of Programming.然后你可以让他滚一边去。