※ [本文轉錄自 ck50th318 看板]
作者: dajen (不識貨不要碰我帽子) 看板: ck50th318
標題: [轉錄][轉錄]中國軟體業的劣根性
時間: Thu Nov 23 12:02:31 2000
我在工作中,接觸到印度軟體公司開發出來的軟體:整
個體系架構非常清晰,按照我們的要求實現了全部功能
,而且相當穩定。但是打開具體的程式一看,拖沓冗長
,水平不怎樣。我們自己的一些程式員就有怪話了,說
他們水平真低。但是!印度人能夠把軟體整體把握得很
好,能夠完成軟體,並得到相當好的設計文件。而中國
人在那裡琢磨資料結構、演算法,界面人員就還沒寫程
式就想著是Outlook式的還是VisualStudio式的界面。
到最後就成為Code高手,對某些特定的開發工具精通,
但是就是不能保証能夠把一個軟體穩當、完整的開發出
來。
舉個簡單的例子:軟體中需要一個列表,用來表示我們
處理的事務。該類表在業務繁忙的時候將變得很大。中
國人就用雙向串鏈,抱著《資料結構》書在那裡寫鏈表
的類別。印度人開了一個大陣列,然後就開始幹。為什
麼印度人不用串鏈,他們說:1、你們給出的設備最少具
備512M記憶體,浪費一些沒有什麼。2、陣列方式訪問方
便、效率高。看出了一拿到東西就吭哧吭哧寫Code,和
好好進行軟體分析的不同了嗎?
正好前幾天我有幾個同事從印度回來和我們交流,那家
公司是CMM4級公司.我感受的幾點:
1,流程重於專案
2,QC(就是QA)獨立於研發部門,專門檢查研發部門的開
發流程是不是按照既定流程走.如果QC覺得流程不對,
他會直接上報高層,專案肯定就此停止.
3,所謂的專案經理(PC)一般也是從程式員升上來的,並
不是所謂的不懂技術,一般都至少有四年以上的經驗
4,PC主要就是制定開發計劃,負責協調,填寫各種表格.
5,所有的東西(包括草稿)都有文件.
6,詳細文件要求達到只有這個文件就可以寫程式的程
度,一般寫文件時間占60%,寫程式時間極少
7,有各種詳細的review(同行評審),專案組內的,專案
組之間的,客戶的...
8,計劃很詳細,的確能達到小時級,但是實際情況還是
誤差比較大,所以他們也有加班.先學習UML和Rose以
及RUP,不要總是要找著証據。在中國的軟體開發水
平下,很難給你一個好的例子,OK?中國人總是要
看到一個東西有了試驗田,而且稻子長得好,才換
稻種。要知道在國外上述的軟體開發模式的應用,
大可以看看Rational網頁上的story。Just do it!
一句話,中國的軟體開發水平低得很。趕不上印度人,
印度的軟體公司可以讓高中生寫程式,它的軟體工程
水平可想而知。當然,你如果是個很行的程式員。估
計夠嗆,因為中國的氣氛中,很行的程式員都很難接
受軟體工程的。你可以測試一下自己,看看自己適不
適合現在學習軟體工程:
1、你是不是不能忍受一個寫程式不如你的人做你的
專案經理?
2、你是不是覺得你的老闆對客戶吹牛皮、誇大自己
而感到不舒服?
3、你是不是一個拿到一個需求腦袋裡第一念頭就是
如何實現的人?
4、你是不是很崇拜Stallman,Linus,很討厭
Microsoft?
5、你是不是曾經在深夜寫程式的時候,突然感覺到
一種乏味,對Code的生涯感到一種無趣?
我們現在處於深深的自卑當中,感到中國的軟體工程
水平的低下已經是牽涉到民族劣根性的問題了。我們
招聘印度人,給應聘者出了一份與國內差不多的試卷
,有基礎概念和寫程式題目。等到他們完成後,我們
這些中國的自認高手驚呆了!他們的寫程式題目簡直
像是抄襲的? 程式結構,注釋,變數命名就不說了吧
,全部都是極其類似!反觀中國的強人、高手,每個
人有自己的一套。到了新的崗位,先把前任的程式貶
損一通,然後自己再開發更多的問題的程式來代替。
我的公司統計,一個軟體中有4個以上CSocket版本,
每個人都覺得別人做得差,自己再搞一套。中國人,
就是這個樣子,還會辯解說“我們這樣有創造性。“
其實軟體發展,早就走過了求伯君那個編碼英雄的年
代,程式員已經是個坐辦公室的藍領了。你具備擰好
一個螺絲釘的能力就可以了。Code是最低級的事情了
。他們許多公司的專案經理根本就不懂技術。中國的
專案經理如果不能在技術上壓服下屬,那麼下屬將與
他搞鬼,越是高手越喜歡搞鬼,根本不知道作軟體的
終極目的是從別人口袋裡掏錢,而在內部搞不團結。
技術高手都會糾集一些對他技術上崇拜的菜鳥,與管
理層作對。而印度的軟體經理根本就不懂正在做的東
西,許多甚至直接就是MBA,或者是領域專家(工業設
計、地理專家等),而不是程式的專家。但是卻能夠
領導大群素質良好的程式員把工作做好,沒有內部不
團結的情況。許多印度的程式員加入一個公司很長時
間,都不知道自己整天寫的程式是幹什麼用的。給他
們的任務可能就是一個函數的宣告以及該函數要實現
的功能。我們呢?
他們的編程人員流動率(包括內部專案之間的流動)高
達30%,可以想見他們的文件水平如何。他們的產品
不依賴任何一個人,誰都可以立即辭職,產品的開發
還是會正常進行。而中國,是老闆怕總工程師。技術
骨幹擁兵自重,抗拒管理。任何制定好的計劃,都有
可能被技術人員推翻或者跟你消極怠工。
他們的開發計劃能夠做到小時級別。如果一個印度公
司的專案經理沒有上班,那麼他的下屬將可能不知道
作什麼。他們的計劃一般都定到天,每個基層開發人
員每天的工作量就是8小時。而我們能夠給出月度計劃
的公司就很少,而給出的月度計劃要麼不可能實現,
要麼就可能被取消。開發人員被粗略的給個任務,他
在月初,可以慢慢琢磨是做成什麼樣子,然後上上網
,聊聊天。到了月中和月末,就開始熬夜寫程式。
看到每年,從各大學不盡高手滾滾來,我們是不得不
要招人,同時又是不抱希望。我公司現在有意以後將
核心軟體開發外包給印度公司,中國人?做做界面吧
,中國人做界面會極盡奇技淫巧,搞得花裏胡俏的。
BTW,我公司非外資企業,大家不要誤會我們有什麼
種族歧視。但是我們現在就是對自己歧視,自卑得很
。中科院那麼多研究院,連個能用的操作系統都搞不
定。北大開發一些東西,比如什麼青鳥CASE,就是給
一幫人評職稱的。楊芙清院士整天搞來搞去,搞出了
什麼東西?北大,清大的人最難管理,強得看不見人。
中國的程式員罵微軟,追Linux是全世界最狠的,可
是我們除了漢化Linux,做了什麼東西出來。CDE是瑞
典人寫的,Linus是芬蘭的,GNome是墨西哥人寫的。
哎,我們曾經是多麼的瞧不起印度人。
--
轉載 from Nothing (泡泡)
--
To commit mistakes is not wrong -- commit as many mistakes as possible,
because that is the way you will be learning more.
But don't commit the same mistake again and again,
because that makes you stupid.
Osho: The Science of Meditation
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: nts.itri.org.tw
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: 16.c133.ethome.net.tw
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: uranus.im.ntu.edu.tw
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: u872503.CHENG.ab.nthu.edu.tw