寫了 20-50 年的代碼,才明白的那些真理
現如今有關軟體開發的一切創造發明,不過是人們不斷地重新發現某些東西,並假裝他們發明了新東西。所有你認為很酷、很新的東西都是從 Smalltalk(被公認為第二個面向對象的程序設計語言和第一個真正的集成開發環境 IDE)、HAKMEM、Ivan Sutherland(計算機圖形學之父和虛擬現實之父)、Douglas Engelbart(計算機界的資深學者)、早期的 IBM 或者貝爾實驗室那裡抄來的。
不要相信編譯器。不要相信工具。不要相信文檔。不要相信自己。
我們不需要新的編程語言。不過你肯定還會發明另一種語言。我猜,你的新語言肯定會用 IEEE-754 數學和固定精度整數。那你的新語言已經失敗了。
維護代碼比編寫代碼更難。寫很多很多新代碼是懶惰的表現。
學習編程時都會假設內存、處理器時間和網路帶寬都是免費且無限的。而事實上,它們不是,它們不是,它們不是。好好讀讀 Knuth 關於過早優化的文字。
不出幾個月你就會忘記你寫過代碼。所以代碼一定要傻瓜都能看懂。
許多時候你只需要一行的 sed 就夠了。
當心那些說話絕對的程序員,比如說我的方法永遠比你的好之類的。編程是一門書,不是信仰。
如果你知道一系列固定的步驟要重複十次以上,就寫個腳本吧。
備份是一回事兒,恢復備份是另一回事兒。
在你的機器上能用,不意味著沒有 Bug。——Peers Sutton
開發工具要等出了 .1 版之後再安裝。讓別人去做小白鼠。
優秀的程序員寫優秀的代碼。大師級程序員不寫代碼。宗師級程序員刪代碼。
不管有多少經理對你怒吼,第一步永遠是要穩定地復現 Bug。
早晚你會遇到一些比你經驗豐富些的人,他早晚會給你講編程的定律。你要做的就是完全無視他。
原文:https://www.quora.com/What-are-some-things-that-only-someone-who-has-been-programming-20-50-years-would-know/answer/John-Byrd-2
作者:John Byrd,畢業於哈佛大學,曾在電子藝界任高級經理,在世嘉任總監,現Gigantic Software的CEO
譯者:彎月,責編:屠敏
※人工智慧靈魂注入,燃燒你的卡路里——2018,你AI了嗎!
※關於調試的九大名言
TAG:CSDN |