但是,我認爲道理一定是沒錯的。正像孟巖先生所說的,軟件天才可遇而不可求,但軟件專業人才卻絕對是可以培養出來的。如今的軟件行業,已經不是刀耕火種的石器時代,僅靠幾個核心的軟件大牛是很難做出產品來的,更不要說緊張起來要急死人的軟件項目。一個軟件團隊之所以能團結在一起,靠的是紀律和員工遵守紀律的高度自覺。
我常想,爲什麼硬件的生產能在生產線上,按照固定的工序千篇一律的進行,而軟件就不行呢?雖然軟件的生產也發明了面向過程、面向對象、面向組件等等方法,但軟件產品一直襬脫不了漏洞、BUG、需求變動的困擾。原因是軟件要比硬件複雜的多,軟件的需求變化要比硬件豐富和快速的多。還有一個原因,就是硬件一旦下線,邏輯就固化了,變化幾乎是不可能的,這個時候如果需求變更,就需要通過軟件來彌補和適應,壓力就集中在硬件驅動程序上了。
即使現在已經發明瞭許許多多的軟件生產過程控制和管理辦法,試圖把軟件生產帶入類似硬件生產的流程化過程,但是經常因爲程序員甚至項目高層的專業素質缺乏,導致生產過程控制規範形同虛設,生產照例是在無序中、靠一部分資深程序員的自覺帶動而進行。
但是,儘管專業化路途遙遠,儘管軟件企業因爲生存壓力而無法顧及專業化問題,但是專業化卻必定是行業發展繞不過去的門檻。也許現在三五個人、幾十條槍,隨便拉一支隊伍就能佔一座山頭,一年接幾個單子還能喫香的喝辣的,但是將來如果進入大規模正規化戰鬥,也許散兵遊勇就沒有用武之地了。
我們現在儘管和“專業化”還有距離,但是我們現在不能拒絕它。腦子裏做點準備還是有必要的。