西方程式設計師怎麼看東方程式設計師

發表於2011-03-01

在國外著名的 StackExchange 網站上有一個有趣的問題,有人問:西方的程式設計師眼裡,東方的程式設計師是什麼樣的?他描述道:

世界的東方(印度/中國/菲律賓)是西方(美國/歐洲)的主要軟體外包服務提供者。

你是否有過與這種離岸外包團隊合作的經歷?如果有,感覺如何?

你對這些來自東方的程式設計師有沒有一些總結性的看法和觀點(比如:他們是否合作,是否能按時提交程式碼,寫出的程式是否有質量?)。依據是什麼?

讀者的回覆很踴躍,其中一個被頂的最高的回答是關於印度人的,回答中他說一個印度分包商給他們開發了一個元件,他認為這是他接觸過的最恐怖的程 序,裡面最大的一個檔案體積超過600KB,大概有3萬多行。他向上天乞求希望自己永遠不需要去維護這樣的程式碼。這位答覆者說他在印度生活了3個月,發現 東方人和西方人在文化上的差異很大,印度人很勤奮,但常常卻不能把事情做對。印度人裡有個根深蒂固的文化,就是從不說no,他說即使你到副食品商店裡要求 買一條毯子,店主也會說“是,先生,稍等一會”,然後派一個小孩到外面商店把東西買回來。這雖然在生意上是好的做法,但未必適用於做軟體開發。

另外一個回覆是關於俄國人的,同樣,他覺得這些俄國人寫的程式碼頂多當作原型來使用,最終都會被丟掉,不能用。

我找了很久,終於在帖子的最底部發現一個關於中國程式設計師的回覆,不過內容非常的有趣:

到現在,我在中國已經待了2年多一點時間了(我是個加拿大人),跟中國的開發人員一起共事你會感到非常的奇特。我敢說上面這些關於東方的程式設計師的總結都是正確的,至少對於中國人是這樣的。我遇到的/一起共事的大多數開發人員基本屬於這種情況:

1. 缺少上進心和創造性。這裡我並不想說他們很差勁或愚蠢。也許更可能是一種文化。在歷史上他們就有一種官本位和 崇尚權威的傳統。於是他們對來自“上面”的糟糕的設計從不提出疑議。同樣,他們更多的是關注技術技巧,而忽略業務領域知識。我費力九牛二虎之力教他們模式 和各種抽象概念,直到他們能應用這些東西到他們手頭的任務中。然而,過不了多久,就像是決堤的洪水,他們竟然肆無忌憚的挑戰權威,至少在技術層面上是這樣 的,我可不想弄得簽證被撤銷。;-)

2. 磨擦。 前面這個問題說過,但我要強調一下。這也許是最重要的一個問題,是產生中國開發人員跟這裡的海外同事(這裡是加拿大人)共事時產生緊張關係的原因。通常, 我在這裡共事的西方人會特意的誇大跟東方人共事時東方人的一些不好的方面。我這些加拿大同事對人友好但在程式碼審查時極其的苛刻。如果發現這些中國程式設計師一 個小失誤或沒有使用好的編寫方法,他們就是發脾氣、大呼小叫。但當他們自己被禮貌的要求也按照這種要求完成他們自己的任務時,他們也會發脾氣、大呼小叫。

3. 犧牲。 中國人並不以介意使用蹩腳的二手器械。我坐壞了三把椅子後才終於要了一把稍微舒服一點的椅子。可是當我坐上這把較好的椅子後,突然感覺不是很好,因為看到 這些中國人仍然坐在好像是中世紀那麼原始的椅子上。然而,等我訪問了這家公司的總部後,我發現這裡的程式設計師的一張桌子就有我們4~6個人的團隊的佔地面積 那麼大,更別提他們的椅子了!

在起初,他們編寫的程式並不是很好。這當然是文化上產生的裂痕,但這也是開始時糟糕的系統設計產生的很陡的學習曲線造成的。但你們知道嗎,兩年之後,這個系統中一些最優秀的模組都是出自中國公司。於是這就更加明顯的導致了雙方程式設計師的磨擦加劇…

坦白的說,這幾年走過來不容易,以個人經驗判斷事情的趨勢,我認為對這個問題的看法是正確的。

做為一箇中國人,對於西方人對我們的看法和觀點,我覺得不需要去急著找他們的論點漏洞進行反駁。你可感到到他們對東方人的不滿是一種普遍瀰漫的氣氛,俗話說,蒼蠅不叮無縫的蛋,我們應該還是先從自身找問題,有則改之,無則加勉。

 

相關文章