結對編程——我的噩夢

>>>  技術話題—商業文明的嶄新時代  >>> 簡體     傳統

   

結對編程

  英文原文:Pair Programming - My Personal Nightmare

  自從極限編程誕生起,我就一直在聽說結對編程是個好東西。所有的敏捷傳教士們都在告訴我們:結對編程能提高代碼質量,有助知識共享,甚至激發開發效率,同時,還能深度拉近程序員之間的感情關系。

  那些拒絕結對編程的人都被認為是獨行客,懶蛋,或社交恐懼癥患者。然而,我不屬于任何一種(至少我自己是這么想的),可我仍然討厭結對編程。為什么我會這樣?下面是理由。

  我們這個社會已經不再崇尚沉默是金。外向性格受青睞。所有的事情都要用合作的方式完成。每個人都要時刻準備好為他人服務。個人空間已不再存在,工作成績不再歸功于某個人。基本上,大家都認為三個臭皮匠勝過一個諸葛亮。

Steve Wozniak 曾與斯蒂夫·喬布斯合伙創立蘋果電腦(今之蘋果公司)。沃茲尼亞克在 1970 年代中期創造出蘋果一號和蘋果二號,蘋果二號風靡普及后,成為 1970 年代及 1980 年代初期銷量最佳的個人電腦,被譽為是使電腦進入大眾家庭的工程師。

Steve Wozniak 曾與斯蒂夫·喬布斯合伙創立蘋果電腦

  然而,很顯然,我們可以看到,有些事情并不是這樣的。即使在編程界,很多偉大的創新和杰出的軟件都不是由一個團隊或某個組合創造的,而是來自一個人的努力。Ant,給 Java 社區帶來巨大飛躍的軟件,就是由一個人在從歐洲飛往美國的飛機上開發出來的。還有,一些更近些的例子,Notch 開發 Minecraft,Marco Arment 開發 Instapaper,Gabriel Weinberg 開發 DuckDuckGo:全是單槍匹馬的成就。事實上,地球上最有影響力的一個編程大師,Steve Wozniak,有一句著名的教導:

“單干,拒絕團隊,拒絕委員會。”

  視線放的更遠些,很多科學界和藝術界偉大的思想家都是喜歡埋頭工作的類型(內向性)——達爾文,愛因斯坦,牛頓,就連漫畫家 Seuss 博士也是這樣。甚至諾貝爾文學獎的得主、《憤怒的葡萄》的作者 John Steinbeck 也要在這事情是插嘴說:

兩個人一起什么都干不成。合作永遠是不成功的——無論是在音樂創作,藝術創作,詩歌創作,數學研究,還是哲學理論研究。只有在奇跡誕生之后,團體才去開發/擴展它們,但團體永遠發明不了什么。偉大的思想往往生長于孤獨的心里。

  好吧,我是有點高談闊論哲學了,回到我們的小世界,軟件開發,為什么我們要相信——如很多人極力主張的——極限合作(例如結對編程)是高質量代碼或高工作效率的保障?卻忽視如此多的現實反例?為什么——按某些人的說法——結對編程是“必須的”——在所有工作中?

  我認為這種觀點只是個人的內向心理的外現。很簡單:有些人喜歡這種形式的工作,所以他們會這樣建議,不厭其煩的,讓每個人都這樣做。

  然而,真實情況是,我們三分之一的人都是內向的(可能程序員中的比例會更大!)。總體上,我們人類不僅喜歡孤獨的工作,而且在孤獨中繁榮。并不是我們不喜歡其他人,而是我們的大腦神經會因此受到更多的干擾。對于我們程序員來說,高質量的工作來自于進入并保持一種“意識流狀態(參看一種境界)”中。能做到這些,我們就能高效率,否則就不能。

愛因斯坦

  Demarco 和 Lister 在他們著名的 Coding War Games 實驗中驗證了這些——他們發現,判斷是否能夠成為優秀程序員的最有效的先兆不是他們將有多少年的經驗,而是他們工作的辦公環境是否足夠安靜。

  以前人們是重視這種認識的。關于工作場所的 Joel on Software Test 這篇文章的第 8 點就是“程序員是否有安靜的工作環境?”然而,很遺憾,極限協作的文化顛覆了我們大腦的工作方式,說實話,我認為這是讓人痛惡的。

  結對編程,作為“everything-together”文化的延續,滲入到人們的思想中,以至于很多人認為一個人獨自工作不僅低效率的,而且很無趣。而對于我來說,這正好相反。我的最佳工作狀態就是與世隔絕,大腦流狀態是我作為程序員最享受的事。并不是我喜歡做獨行客,或我是圣人不會犯錯。我十分倡導嚴格的代碼審查,我每天都從別人的觀點/指教中受益。我只是認為結對編程不能讓我成為一個更好(更高興)的程序員。我實話實說。

  當人們把結對編程描述成一種他們從中受益的編程方法時,這很好,我祝賀他們。但他們進一步鼓動(要求)我進行結對編程,說他們“知道”我將也會從中受益(而且還有“數據”證明!),打住。一個人能夠高效編程的方法并不一定就會適合其他人。想一想這世界上很多偉大的成就(或就在你的項目中),顯而易見。宣稱適合外向人的結對編程對所有人都是“最佳方法”,這是愚蠢,我不屑這些敏捷教條主義者的言論。


外刊IT評論 2013-06-25 13:47:35

[新一篇] 從匯編到太空——保羅·艾倫

[舊一篇] 1994年的喬布斯說:歷史會忘了我
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表