在開始之前,首先我要說明一下,體力勞動和腦力勞動並不是絕然分開的。體力勞動中也需要腦力勞動,並且很重要,乙個例子是中國足球,按說足球運動是典型的體力勞動,但人們還是批評中國足球運動員不會用腦子,常常犯匪夷所思的錯誤。而腦力勞動中有體力勞動,這應該是不用多說了,以前設計人員常常帶個板尺,鋪開一張白紙開始畫圖,那一天下來是腰痠背疼的。現在有電腦了,打鍵盤,移動滑鼠也是體力活啊。所以這裡討論的是哪個量多一點,哪個佔的比率高點。
會議記錄
我們先拿乙個最簡單的工作,也與
it領域關係不大的,會議記錄員。在開會的時候把那些有價值的東西記錄下來,這聽起來簡單,但並不容易。如果你只把會議結束時某個人總結的那幾點記錄下來,這只能是平庸的工作業績。會議中有價值的東西非常多,包括那些達成共識的,暫未達成共識的,某個人瞬間閃現的靈光,互相激發的創意。有心人會在會議中拾到很多財富,把它們記錄下來,那就是公司的財富。這些工作需要你動腦子,用心去做。你必須聽得懂它們的發言,可能某些地方還需要事後的溝通,甚至在會議中你也可以插上一兩句提問的話。這樣你的價值就得到體現,一篇偉大的會議記錄就出來了。
寫**
言歸正傳,我們討論軟體開發以及軟體公司裡各種職位。先討論乙個名詞:**工人,相關的還有軟體工廠等。在我們的觀念中,工人從事的是體力勞動,工廠是流水線作業。那麼軟體工人就可以理解為幹體力活。是這樣的嗎?軟體工人只需要按照設計文件來寫**,不用怎麼耗費腦細胞嗎?如果真的能這樣,我相信馬上就會有公司開發出一套工具,把軟體設計中的符號轉化為**,或者把一些基本的功能做成最底層的模組你只要把設計翻譯成一種配置檔案即可。這樣的趨勢很明顯,最新出來的開發工具,模組框架已經把那些需要重複勞動的工作壓縮到最小。他們總是聲稱:剩下的你只要關注業務邏輯即可。也就是說,那些業務邏輯是需要你動腦子思考的。
一種可以說是「常識」的事實是,需求分析人員和設計人員不可能把所有底層的東西給你弄出來,就算弄出來了,也不可能清晰的表達出來。除非你的設計不用那些人類語言或者圖形符號,直接用程式設計**寫出來。因為,程式設計**是最準確的。但是,這樣還需要**工人嗎?
文件撰寫
我們經常犯的毛病是把腦力勞動做成了體力勞動。自我調侃,我那破工作,其實就是打雜的。你不能體現你的價值,自然就是「打雜」的了。那些需要寫文件的,最會產生這樣的想法。乙個文件呼哧呼哧寫出來後沒幾個人看,看的人也是一目十行的就結束了。特別是按照某種軟體工程理論製作出來的文件,寫的人也煩,看的人也累。真正價值高的文件,甭管是什麼型別的文件,就如**質量以被引用次數來衡量一樣,看的人越多,越頻繁,價值就越高。
ivar jacobson
博士他的
」be smart!」
演講中給出的方法是「只寫重點」。那些大家熟悉的,可以自己想象出來,或者推理出來的內容可以砍掉。這就是為什麼十年前有很多介紹作業系統的書,比如《
window xx
指南》,《
window xx
入門》類似的書,現在卻少見了。那是因為大家對計算機作業系統很熟悉了,用不著看幫助文件了。誰還會開啟
windosxp
中的幫助中心,來看看怎麼複製乙個資料夾呢?
文件需要能夠做到「增值」。「增值」就需要文件撰寫人員的用心,也就是腦力勞動。把不能產生價值的東西刪減,把主要精力用在人們容易糊塗的地方,或者容易忘記的地方。比如你覺得這個地方需要再三強調,就用粗體字顯示。你甚至可以把最易犯的錯誤給寫到下面,或者畫個小人,套個黑邊。這些創意會讓看的人很開心,印象深了,自然收穫就多了。
**注釋
注釋也需要「增值」。好的**注釋並不容易寫出來。不要以為寫注釋是辛苦勞作後的休閒運動。我看過很多淡而無味的注釋,看與不看沒什麼區別。我也看到過優秀的注釋,看後基本不用看**就一清二楚了。常見的好的注釋方式是:舉例子,原因分析,實現原理以及閱讀和維護建議。這些分別適用不同的情形。有些地方你不用廢話,直接寫個例子就
ok,
看的人會非常感激你的。當乙個地方的**變化多的時候,你可以講故事,把這裡的需求變化歷史給敘述出來,加上必要的引用鏈結,它的價值將相當的高。是不是有些涉及到認知和心理方面的學問了呢?
軟體工程理論的應用
中國教育體制下的學生們,不太愛好動腦子,不太適應創新思維。我們很多人承認這點。一種典型表現就是對理論的生搬硬套。
ivar jacobson
在他的博文中批評了某些人在專案中關注「某種軟體工程理論的標榜」勝於「乙個偉大的軟體產品」。這說明國外也有這些現象。但畢竟大多數的理論都來自於國外,比如敏捷,比如rup
,這說明了他們還是敢於質疑別人,還是在不斷的思考。
那些流程工程師犯的常見毛病是對具體專案狀況的漠視和對最後產品的漠視。他們堅持按照理論去執行,去要求別人。他們不去思考理論推理的各種假設。乙個專案涉及到的東西絕不僅僅是軟體工程理論。它還要涉及各種各樣人的因素,技術因素,文化因素,合同,利潤,老闆的目標和對目標優先順序的考慮。照搬理論等於放棄思考。那些頂著完成任務巨大壓力的人是有真實苦衷的。
需求調研
還有一種職業的人容易產生認知錯誤,那就是做需求的人。初入行的人,最容易把需求分析做成體力勞動了。他們把時間花在需求文件和頻繁的客戶溝通上,而忽視了本身對需求的分析,自己可能的價值就沒有了。完全讓客戶拿主意做決定,實際上也是放棄了思考。客戶忙的時候會覺得很煩,就算客戶有大把的時間,替你想出乙個解決辦法,但當最終證明這樣做有問題時,客戶雖然對自己的錯誤不能說什麼,但還是不太舒服的。那何不自己在第一時間去想出更好的辦法,去提醒客戶,或者去讓客戶參考,從而做到雙贏,讓時間更短,代價更小。最提倡的做法是,你去想出幾種方案,讓客戶選擇;在沒有多少疑問的細節方面,只要讓客戶過目批准即可。懶得動腦子,乃人之共性。客戶省心了,自然滿意度就高了。你耗費了一些的腦細胞,收穫的卻是更有價值的經驗和知識。
大牌的分析師都有乙個助手或者秘書,他們自己思考,提供解決方法和創意,秘書們負責記錄和整理出來。我們最終的目標是做那個分析師,而不是秘書。
想想現在的軟體系統吧,想想現在人們的工作方式吧,二十年前,人們還在用無數的紙質檔案工作,而現在每人前面都有一台電腦了。這種改變不是非
it人員能想象出來的。
it可以貢獻出效率更高的工作方式,
it可以創造和引導客戶的需求。谷歌的郵件系統並沒有來找我們調研,但它出來後我們還是喜歡上了。
總結
it
的目的就是用來消滅重複勞動,提高生產率的,所以在
it行業裡,你要是覺得自己的勞動是體力勞動,重複勞動,那是很諷刺的。在
it行業裡工作應該是有趣的,靈動的和不斷進步的。
人工智慧承諾就業革命,但仍需傳統的體力勞動
在北京郊區的一棟五層蘇式工廠大樓裡,一群年輕女性整齊的坐在工位前,每天盯著電腦,進行著重複性的工作。她們需要觀察日常生活中的影象,然後彙總成圖表。人工智慧的到來被稱為第四次工業革命,它承諾將人類從大量重複性 麻木的工作中解放出來。但在這個烏托邦式的承諾實現之前,仍然需要很多單調乏味的工作需要人為進行...