我的偶像溫伯格大師對程式開發中的人格因素進行了長篇論述,讀起來頗為費勁,不易理解,或許大師級的人物寫出來的東東都是這樣,又或許是翻譯的水平問題,看著看著就想洗了睡了,我想自已有必要用自已的語言來重新嘮叨嘮叨,就算了娛樂娛樂吧!
在程式開發中,或在挑選程式設計師時,我們更多的是考查他的智力因素,而人格因素往往容易被忽略,造成了後來管理上的很多問題,我並不是說智力不重要,而是要強調人格與智力同樣的重要。事實上,從國內大多it企業所研發的產品或專案來看,其實並不需要太高的智力,國內大部分的程式設計師都具有本科或碩士以上的學歷,有時想想真是大才小用,而且往往又用得不好,真是百思不得其解,也許產品或專案的成功與否更多的是由專案經理與程式設計師們的人格因素決定的,他們的人格因素都會在他們所編寫的軟體系統的各個部分中得到體現,比如軟體介面、操作方便性、軟體質量問題、可擴充性、可維護性等等。
那什麼是人格呢?書上寫:人格是指乙個人所有性格特點的總和,人格必然會體現在我們的一言一行之中。也就是說程式設計師的人格將會體現在他所編寫的程式之中。現實也確是如此,如果你是乙個軟體測試員,那麼你的體會可能就很深,測試著不同程式設計師的不同軟體模組,那結果與感受真是不一樣,有的模組整潔乾淨,極少出現低階錯誤,邏輯清晰,而有的模組雖然也基本上實現了所有功能,但介面亂七八糟,小錯誤層出不窮,真是讓人愛恨交加,那到底是哪些人格特點在程式開發中起著關鍵的作用呢?
一.在高壓力的壞境避也能堅持不懈地工作;
對於程式設計師來說,加班應是一件再正常不過的事情,有時專案緊迫,也會採用封閉式的開發,即幾個人關在乙個屋,連續工作乙個多月,有些boss看似好人乙個,將這個屋安排在有如世外桃源之地,實際上程式設計師對外面的美景並不感冒,置身於紅花綠樹之中,心中卻不停地思考coding,呵呵,那是不好受的。因此,就當今的程式開發工作而言,如果乙個程式設計師缺乏在高壓力的環境中堅持工作半個月的能力,或許我們就可以肯定地說,他不是塊程式設計師的材料。
二.適應快速的變化;
客戶就是上帝,上帝說變就變,有時你花了整整乙個月的時間好不容易完成的開發工作,我們親愛的上帝卻說這不是他所要的,他之前的需求是錯誤的,可憐的程式設計師只能眼巴巴地看著自已的心血付之東流,不得不又重新做起,心裡一直在罵上帝,但臉上自始至終都帶著蒙娜麗莎式的微笑,在這種情況下,程式設計師不可避免地會在心理上遭受創傷,我們要能接受這種創傷,並快速地適應這種變化,才能將研發工作做好,滿足我們的上帝。
三.整潔而有條理;
通常程式設計師們較少西裝革履地出現在光天化日之下,那真是渾身不舒服,記得有一次俺去參加乙個死黨的婚禮,不得不西裝革履,搞得俺真是不爽,每隔半小時都要到
wc去逗逗氣,搞得伴娘誤以為俺的腎有問題,真是氣人,呵呵,話說回來,我們可以不穿那討厭的西裝,但也要稍微講究一點整潔,盡量養成將自已手頭的資料規整好的習慣,寫的程式要有條有理,介面要美觀大方,小學時語文老師也經常教導我們寫作文時要文字工整,篇幅整潔,即使寫得不太好,可能也會得到好的分數,說的是一樣的道理,所以建議程式們不要不修邊幅的樣子,更不要身上時時發出難聞的氣味。
四.謙遜而果斷;
謙遜真是一種美德,自古以來,我國人民就有謙虛的美德,人們有許多這方面的格言警句啟迪後人。如「謙受益,滿招損」,「謙虛使人進步,驕傲使人落後」,「虛心竹有低頭葉,傲骨梅無仰面花」,「百尺竿頭,還要更進一步!」 等等諸如此類, 事實上也是如此,沒有乙個人能夠有驕傲的資本,因為任何一門學問都是無窮無盡的海洋,誰也不能夠認為自己已經達到了最高境界而停步不前而趾高氣揚。如果是那樣的話,則必將很快被同行趕上、很快被後人超過。程式設計師有時會因為剛剛學會幾種簡單的雕蟲小技而沾沾自喜,以專家自居,開始虛構自已的美夢,那真是可笑。
在程式開發工作中,程式設計師經常會遇到各種各樣的困難,有技術上的難題,有資源的困難,有需求上的不明確,在這種情況下,需要程式設計師作出判斷與取捨,有時需要繞過困難,有時需要採用別的技術來代替目前的技術難題,此時此刻必須要果斷,否則將會造成研發工作的延期以及管理上的不可控制。
五.具有幽默感。
中國人有沒有幽默感?這是無庸**的問題,否定中國人具有幽默感的人,多以魯迅老人家的論斷為指導思想:中國人民也不是長於幽默的人民。在這裡我們其實並不用去理會魯迅老人家的論斷,連計算機都不會用的魯迅算什麼呢?coding是一種枯燥乏味的工作,計算機以及其二進位制世界確實讓我們都成為了傻瓜,技術日新月異,程式設計師日理萬機,如果我們沒有一點幽默感,那麼在乏味的程式開發過程中我們還能堅持多久呢?
習慣性地來個小結,我們其實都知道,在印度的軟體行業,大部分的程式設計師都只具有高中水平,但這並不阻礙印度成為最大的軟體外包市場,而可憐的中國軟體,聚集著一堆又一堆的高素質人才,本科太多,碩士也多,博士也要排隊,烈士都會有,一批又一批的海龜也回來了,但還是老樣子,缺乏核心技術,缺乏核心產品,缺乏核心企業,這很是令人深思!
也談程式開發中的人格因素
我的偶像溫伯格大師對程式開發中的人格因素進行了長篇論述,讀起來頗為費勁,不易理解,或許大師級的人物寫出來的東東都是這樣,又或許是翻譯的水平問題,看著看著就想洗了睡了,我想自已有必要用自已的語言來重新嘮叨嘮叨,就算了娛樂娛樂吧!在程式開發中,或在挑選程式設計師時,我們更多的是考查他的智力因素,而人格因...
也談程式設計師
對於從事程式開發的人員來說,今後的前景問題了,應該算的上自身最關心的乙個問題了。最近也開始比較有空了,看了些文章,本來是想學點jbpm的,可是始終沒認真看完。道是對自己的前程開始有些擔心。大學畢業的時候,就聽說乙個問題,做程式開發員人,一般都超不過30的。30後再做開發,估計就比較難了。一想在想這是...
也談 程式集 和 命名空間
剛接觸程式設計的時候對這兩感念理解的不是很清楚?藉著這次複習好好解釋下 程式集 assembly 其實就是在vs中建的乙個專案。不過這個專案最重是被vs編譯器編譯成.dll或.exe檔案。net是以程式集 assembly 為單位來對應用程式進行組織。可以將乙個程式集看作是乙個或多個物理程式模組的組...