30天Go語言學習之旅結束了,終於站在Go Developer的起跑線上。
最後一篇文章,整理一些軟體工程師的自我修練
Effective Go 的線上補充版,教你怎麼寫出優雅易讀好維護的原始碼。
有時間的話建議把Effective Go細讀一遍。
整理了一些值得一讀的Go語言線上Resource
Google開源的工程師練習文件,總共有兩個主題:The Code Reviewer’s Guide 和 The Change Author’s Guide ,網路上可以找到“Google教你Code Review“的中文版,大公司開源的工程師guide document都蠻值得一讀的,從文件裡可以讀到為什麼他們制定了相關的規則去管理超大型專案的開發。
『思考的藝術』一書中提到
『在日常生活中,由於成功者的能見度壓倒性地高過失敗者,因此,人們總會系統性地高估了獲得成功的希望。』
倖存者偏差指明了你不應該盲目地相信成功人士給你的建議,失敗的經驗你才是應該去了解去吸收,因為失敗是個通則,不像成功會是個案。
第二次世界大戰期間的 1941 年,美國哥倫比亞大學統計學亞伯拉罕·沃德教授接受美國海軍要求,運用他在統計方面的專業知識給出關於「飛機應該如何加強防護,才能降低被炮火擊落的幾率」的建議。沃德教授針對盟軍的轟炸機遭受攻擊後的相關數據,進行分析和研究後發現:機翼是整個飛機中最容易遭受攻擊的位置,但是機尾則是最少被攻擊的位置。因此沃德教授給出的結論是「我們應該強化機尾的防護」,但是美國海軍指揮官認為「應該加強機翼的防護,因為這是最容易被擊中的位置」。
沃德教授提出以下其加強機身防護意見的依據:
本次統計的樣本,僅包含沒有因敵火射擊而墜毀並安全返航的轟炸機。
沃德教授假設所有中彈的彈著點應該會平均分布在機身各處,而能安全返航的轟炸機機身中彈數量較多的區域,是即使被擊中也比較不會導致墜機的部位。
機翼被擊中很多次的轟炸機,大多數仍然能夠安全返航。
機尾彈孔較少的原因並非真的不容易中彈,而是一旦中彈,其安全返航並生還的可能性就微乎其微。
軍方最終採取了教授提出的增加機尾防護的建議,後來證實該決策是完全正確的。這項研究對當時仍在發展初期的作業研究領域具有深遠的影響。
- wikipedia 倖存者偏差
1993年,美國經濟學家道格拉斯·諾思由於用「路徑依賴」理論成功地闡釋了經濟制度的演進規律,從而獲得了當年的諾貝爾經濟學獎。
路徑依賴定理
一旦人們做了某種選擇,就好比走上了一條不歸之路,慣性的力量會使這一選擇不斷自我強化,並讓你不能輕易走出去。
Coursera最受歡迎的一門課「Learning How to Learn」,課程裡用科學的方法分析人類大腦的構造,並且教你如何有效學習,其中一條是這麼說的「你永遠學不會你不會的事物」,這裡延伸出兩個概念,第一是學習新事物最有效的方法是從你已經掌握的知識再延伸,第二是當你接觸陌生的挑戰,總會找各式各樣的藉口拖延,實際面對之後你會發現沒有想像中的那麼可怕。
路徑依賴給我們現代人類所帶來的影響,都是很難注意到的根本性的影響。最著名的例子是:兩匹馬屁股決定了火箭的寬度。
現代鐵路兩條鐵軌之間的標準距離是四英尺又八點五英寸,採用這個標準的原因是因為早期的鐵路是由建電車的人所設計的,而四英尺又八點五英寸正是電車所用的輪距標準。
那麼,電車的標準又是從哪裡來的呢?最先造電車的人以前是造馬車的,所以電車的標準是沿用馬車的輪距標準。
而馬車的輪距標準是來自古羅馬人軍隊戰車的寬度,羅馬人為什麼以四英尺又八點五英寸為戰車的輪距寬度呢?
原因很簡單,這是牽引一輛戰車的兩匹馬屁股的寬度。
有趣的是,美國太空梭燃料箱的兩旁有兩個火箭推進器,因為這些推進器造好之後要用火車運送,路上又要通過一些> 隧道,而這些隧道的寬度只比火車軌道寬一點,因此火箭助推器的寬度由鐵軌的寬度所決定。
所以,今天世界上最先進的運輸系統的設計,在兩千年前便由兩匹馬的屁股寬度決定了!