1 任何一個程序一旦發佈就意味着它已經過時了。
2 讓需求根據程序調整往往要比讓程序根據需求調整來得容易。
3 如果一個程序是有用的,那它必將被改變。
4 如果一個程序是無用的,那它必須被註釋。
5 在任何一個程序裏只有10%的代碼會被執行。
6 軟件會無限擴張以佔用所有的系統資源。
7 任何有價值的程序都會包含至少一個錯誤。
8 一個演示版的程序完美無瑕的機率和關注它的人數成反比,最終要花費的金錢的數量是原數量的平方。
9 一個程序的致命錯誤要到其發佈至少半年後纔會被發現。
10 不可檢測的錯誤是無窮無盡的,並以各種形式存在;相反,可檢測的錯誤從理論上講是有限的。
11 隨着時間的推移,修正某個錯誤所需花費的精力會成指數級增加。
12 程序的複雜度會一直增長,直到超出維護它的程序員的能力爲止。
13 一段你自己寫的代碼如果幾個月不曾看過,那很有可能其他人也會寫出相同的代碼。
14 在每個小程序裏都會有一大段代碼想要破殼而出。
15 你越快開始編寫代碼,就會需要越長的時間。
16 一個項目如果沒有精心策劃,那將需要比預期多出兩倍的時間來完成它;相反的,如果項目是精心策劃過的,就只需要多出一倍的時間。
17 向一個落後於進度的項目添加程序員只會讓項目更加落後於進度。
18 一個程序的完成程度總在90%到95%之間。
19 如果你讓一團糟糕的代碼自動化,那你就會得到一團自動化的糟糕的代碼。
20 建立一個連傻瓜都會使用的程序,而只有一個傻瓜纔想要去使用它。
21 用戶直到他們使用了一個程序之後才知道他們究竟想要的是什麼