寫下這個標題,說實在我心里有些沉重,在當今這個團隊精神一次一次地被提到重中之重的時代,我卻感覺高度依賴腦力活動的軟件開發(fā)工作其實幾乎不可能真正的有團隊合作。這是我從事了五年多一線開發(fā)(快六年了)之后的高度總結,也是要從事所謂“管理”工作最需要關注的一句話,請忘記“合作”!
為什么?俗話講,一山不容二虎,如果這是一份高度依賴腦力運動(我用運動,不用勞動)的工作,這兩個聰明人你說誰會聽誰的呢?他們能否強強聯(lián)合,1+1=2那樣創(chuàng)造出更好的東西?110%,1+1不會等于2,120%,1+2不會大于2,那就只有小于2啰?一點沒錯!而我的經(jīng)驗告訴我,90%的情況,1+1<1。如果你有幸作為握大權的管理者,請把這兩個聰明人分開,讓他們干不同的事情,根據(jù)他們的興趣,愛好,去干不同的事情,如果實在找不到不同的事情,就讓他們干一樣的事情,但不是合作,而是各自單干,然后從他們各自生成的最終軟件產(chǎn)品中,擇優(yōu)錄取,這也總比讓他們合作好。
在熱力學中,有個概念叫“熵”,它是個能量概念,但卻不表示“能”,而表示“不能”,假想一個孤立系統(tǒng)有兩個物體,一個物體的溫度很高,一個很低,它們的總的熱量是100,然后你把這兩個物體合在一起,高溫物體的溫度降低了,而低溫物體的溫度升高了,它們的總體熱量是多少?孤立系統(tǒng),注意,沒有任何對外熱傳遞,所以熱量還是100,但由于這么一合,無論是高溫物體,還是低溫物體都沒了溫差,沒了溫差就不能利用這個熱量做功,而做功能力的損失,就是熵。也許你感覺這段文字比較晦澀,沒關系,通俗說,兩個聰明人的聰明才智由于“合作”,都用于內(nèi)耗上了,完了之后兩個人一樣是聰明人,但沒有“工作”的能力了,或效率低下。
這種事情了屢見不鮮了,例子我想我無須多舉,大家身邊比比皆是,只要你是做軟件開發(fā)的。也許你要問了,沒有合作,如何開發(fā)大型軟件?好問題,我也從事過大型軟件的開發(fā),但我現(xiàn)在回頭看看,那根本不是什么合作,而我當時也不是一個真正意義上的“開發(fā)者”,我僅僅是個編碼者和單元測試者,我有設計這個軟件嗎?我有在軟件中體現(xiàn)出我的思想了嗎?甚至,問得殘酷點,我有知道我在實現(xiàn)什么業(yè)務邏輯嗎?——答案全是No,這就是軟件外包的典范,別人把軟件設計好,詳細到偽碼級別了,我只是來做最低級的實現(xiàn)而已。也或許,這是一種“合作”的途徑,鐵打的營盤流水的兵,那些在底下干活的人永遠不要問“為什么”,機械式的工作,流水線式的工作,這還需要有個前提,他們不能有太多的想法,比如我,實在是想法太多,那種地方自然就不歡迎我了,不久后卷鋪蓋走人。
我以前有個朋友無意中說了句話,他說:“公司本來就不需要那么多聰明人。”這話還真的如此,一帶多的“合作”模式是有的,就是一個牛人,帶著幾個小弟,完成某個項目,但我想真正的開發(fā)者,是那個牛人,幾個小弟可以做做外圍,周邊,比如機械式的測試,對,測試是保證軟件質量的重要手段,需要大量,反復。如果不幸的是這幾個小弟也是很聰明的人,那就比較難辦些,這個牛人就得很牛,以絕對的技術和人格魅力優(yōu)勢“壓倒”這幾個小弟,“折服”他們,這就是德能兼?zhèn)洌噯栠@種牛人多么?再說了,真有這種牛人的話,讓他獨自完成一個大的項目,我想更為可靠,而不是外加幾個搗蛋的聰明人。
熵,產(chǎn)生于艱難的內(nèi)部交流,產(chǎn)生于公司龐大而遲緩的官僚系統(tǒng),產(chǎn)生于自我獨大的個人思想,與其打破這些障礙,不如設法讓這些“合作”盡量減少?
當我們還沒有適應Visual Studio 2005的時候,Visual Studio 2008就出來了,版本眾多,讓我們有點無所適從,Visual Studio 2008還沒裝好的時候,Visual Studio 2010蓄勢待發(fā),一個比一個強,利用個Wizard,圈圈點點幾下,一個外觀花哨的應用程序就生成了,而且還貌似Outlook,抑或IE,隨便你,你一行代碼不用寫,這叫“先進工具”,但提高了生產(chǎn)力了嗎?我想沒有,你能圈圈點點幾下生成的花哨程序,別人也行,程序雖然花哨,但換種角度說,其實你什么都沒干,軟件的靈魂在于設計者的思想,理解這個得費點心思,或者這樣說吧,利用現(xiàn)在的技術,你也可以輕松擁有一幅達芬奇的《蒙娜麗莎》的油畫,但這僅僅是個復制品,你能這樣,別人也行,你擁有的這幅畫沒有什么價值,而達芬奇的《蒙娜麗莎》的價值在于這位大師在這幅畫中融入的他的思想以及他的勞動,這是任何技術,或“先進工具”都無法替代的,永遠無法替代。這段算是我講的一點題外話,和《人月神話》中“沒有銀彈”的觀點接近。
軟件開發(fā)是一項高度依賴腦力的勞動,開發(fā)者的思想融匯其中,是真正類似藝術創(chuàng)作的工作。考慮“合作”,不是不可以,但無非是這兩種情況:一是我技壓群雄,以德服人,號令群英;二是把前一句的“我”換成別人,讓我心服口服當他小兵。