《最後期限》程序員
《人件》編程
《與熊共舞》工具
《人月神話》學習
人類文明運行於軟件之上 --C++發明人,昂納思卓思科普spa
根據美國標準和技術學會2002年的研究,軟件錯誤每一年形成595億美圓的經濟損失,三分之二的項目明顯延誤或超出預算,甚至乾脆無疾而終。設計
佛裏德里克 布魯斯克(Frederick Brooks) <<沒有銀彈>>內存
夢之所寄,行之所爲--地獄之門就此洞開ci
缺陷列表,問題列表,黑洞式缺陷--充滿不肯定性甚至不可知因素的時間缺陷開發
佛裏德里克 布魯斯克(Frederick Brooks) <<人月神話>>it
布魯克斯法則--往已經延誤的項目中補充人力,只會使其情況變得更加糟糕
艾瑞克 S 瑞蒙德(Eric S Raymond)-- 《大教堂與集市》
斯坦迪什公司1995調查了大中小公司的365位信息技術經理。最後發現,只有16%的項目得到成功。其餘31%被消減或者被取消。剩下的
53%待解決-- 其實就是預算超支,延誤或者不能交付計劃中的所有功能特性。
2004年的報告,29%的成功率和18%的失敗率,待解決項目在53%。
《軟件開發的滑鐵盧》《死亡之旅》
羅伯特 布瑞切爾(Robert Britcher)--《軟件極限》
安東尼奧 葛蘭西(Antonio Gramsci)--理智上悲觀,意志上樂觀
米奇 卡普爾 -- 《軟件設計宣言》
軟件像洋蔥般層層疊疊,每一層都創建在前一層之上,危如累卵,期望着底下那層不要移動或者改變太多。
程序員把這種結構叫作抽象層疊,每當新添加一層時,就把一些特殊而複雜的東西轉換成較爲簡單而通用
的東西。
咱們作了成堆的抽象體。咱們設計本身的抽象體,而後把它們堆到別處拿來的抽象體上。隨着時間的推移,
抽象層疊原來越高。
在抽象的最底層,正好在覈心內存之上的部分就是彙編語言。
彙編語言離及其很近,即使不在及其腦殼裏,也是附在及其耳邊說話。
抽象體使得編程離機器更遠,離人更近。
當今最著名的商業管理大師 -- 彼德 德魯克(Peter Drucker)
湯姆 彼得斯(Tom Peters) -- 《追求卓越》
《新黑客詞典》
馬克 米納西 -- 《軟件陰謀》
工程師是科學和藝術的橋樑。
軟件有時難以感受和應付,是由於它不可見。不可見之物難以設想,而高度複雜的不可見之物尤爲難以用做溝通話題。
可是不可見之物並不是惟一,咱們也看不見重力,電力和磁力,可是能爲多數實用目的可靠地預測其行爲。
但是,想要從軟件中取出一塊行爲保持一致的部分以便診斷問題,咱們一般沒法作到。
層級是軟件的精髓,驅動了軟件領域的進步,但它們自身痼疾。它們有漏洞。
祖爾 索伯斯基 -- 《漏洞抽象法則》
某種程度上,全部非日常的抽象都有漏洞。抽象總會出錯。有時少,有時多。漏洞與出錯在所不免。
對於用戶來講,這意味着計算機有時變得古怪而使人迷惑。
對於程序員來講,這意味着那些捆紮於底層計算複雜性,並將其打包到較新而易於操做的抽象層中的新工具和新概念很不錯,
但只在它們崩塌以前有效--而後全部隱藏的複雜性都漏回到它們的工做之中。理論上,新的頂層可讓程序員不用瞭解這些
亂七八糟的東西;實踐上,程序員須要瞭解這些亂七八糟的東西,由於最終得立足於此。
抽象並未真的像人們所打算的那樣簡化咱們的生活。。。。。。
漏洞抽象法則意味着,不管什麼時候有人拿出一套本該提高咱們的效率的所見即所得新代碼生成工具,你總會聽到許多人說
」先學會怎麼手工作,再用所見即所得工具節省製做時間「。因此,抽象節省了工做的時間,卻沒有節省學習的時間。。。。。。
總之,儘管咱們有愈來愈高級的編程工具以及愈來愈好的抽象,但要成爲編程高手卻愈來愈困難了,這真夠扯的。
新的概念
自動化軟件