如果用常人的眼光來看待問題,很多開發工作真是不可思議和難以理解的。
一個最簡單的例子,就是對時間的認同的差異。
客戶常常會這樣認為,你修改了3行代碼,編譯驗證到提交,分分鐘的事情嘛,可你為什么用了兩個小時?
好吧,我是這樣解釋的:
雖然我只修改了3行代碼,可是咱們的編譯系統并不支持局部模塊編譯(注1),雖然有增量編譯,但是整套下來還是需要15分鐘編譯完畢。但是,誰也不能保證沒有編譯錯誤調錯再編譯又會浪費一些時間。編譯結束后,要把img燒到設備中,又要5分鐘左右。開機需要1分鐘,真機調試要5到10分鐘,有問題還要繼續重來。都ok啦,那么接下來提交代碼review,需要寫commit comment,這份細致認真的活兒還是需要10分鐘。提交代碼,遇到沖突,解決需要不可預知的時間;網絡有問題,還是要不可預知的問題。
在最好的情況下,這個活還是要半個小時以上的。但是一次成功的幾率很小,有人的因素也有其他因素。
曾經有個段子,說為什么程序員都很閑,因為他們會告訴你,等編譯結果呢。趁編譯這個當,可以泡泡妞喝喝咖啡。
玩Android的都知道,現在即使是i7處理器,8G內存,初次編譯Android系統也需要3個多小時。而同步代碼的時間跟網速直接掛鉤。如果你新加入Android系統級開放團隊,那么前幾天你就可以輕松的搞環境了,趁下載編譯的時間,你可以出去打打籃球,購購物。
這兩天又發生了一件事,大家可以借鑒一下,給自己以后評估時間時敲個警鐘。
背景是這樣的,最近在忙兩個項目,項目開發中心分在兩個辦公室。通常的時間安排是半天對半天,但我們可以自由調度,有的項目不忙就多花時間在忙的項目中,如果都忙,那么就要加班了。現在有人會問了,你忙兩個項目,給你兩份工資嗎?答案是否定的。也許會給點獎金,也許毛都沒有。你又要問了,那么加班有加班費嗎?答案同樣是否定的,你加班是應該的。但是你有事情要請個假,嘿嘿,對不起,走年假,么有?那么,不好意思,按照公司的規定,該扣錢扣錢。現實就是如此,吐槽無力。
我在A office用Linux畫好了設計框架和類圖,還沒來得及合入文檔中,但是要去B office開會。開會結束,PM說今天要把詳細設計文檔出來。我說沒問題!B office用的Windows系統,當然對Word的支持是最好了,我就想,既然模板都在這里,何不在這里提交呢?但是問題出現了,我的設計圖還在A那呢,怎么拿過來呢?
我嘗試了以下幾種辦法:
1.郵件發送。
就是自己給自己發郵件,發送成功后,果斷關閉A的郵件軟件,去B打開郵件接收。第一遍,發現發送失敗。我想,是因為我在A關閉的太快了,造成沒有發送成功?跑回A重新發送,等待一會,估計是發送過去了。跑到B打開,發現繼續失敗。我就有些生氣了。也許是公司的郵件系統封殺了這個功能吧。
2.手機拷貝。
MTP在Ubuntu中支持的不好,我用adb把圖片push到手機中某個文件夾下。在Windows中直接打開MTP,去相應的文件夾下找。沒有!我知道這是MTP的bug,一直沒有fix掉。也許重啟一下手機就可以了吧。仍然失敗,MTP真是令人討厭,一定都不可靠。
3.U盤
沒有辦法了,找項目組的專用U盤吧。有些項目是有自己測試用的工具的,這些是合法的。但是兩個項目公用的U盤還是沒有的。但現在也只能這樣了。Ubuntu下拷出圖,回到Windows下打開,發現圖片沒有拷成功。真是一著急就出問題啊。這次是我自己的錯誤,Ubuntu下拷貝東西,有一種假象,就是拷完后在U盤下就可以顯示,但也許還沒有傳輸完畢。我的圖片就幾百KB,以為瞬間就完事,就直接拔掉了。萬萬沒想到啊。
就這么個簡單問題,兩個屋子我跑了好幾趟。最后用了40分鐘完成這本該一分鐘的活兒。
有句話說的對,看起來簡單,做起來難。如果事情不仔細做好準備,就會狀況頻出。
注1:
類似Android源碼編譯就支持這樣的局部編譯,see also?[here](http://blog.csdn.net/lincyang/article/details/10571995)。
- 前言
- IT癡漢的工作現狀
- IT癡漢的工作現狀2-女人
- IT癡漢的工作現狀3-臨時工
- IT癡漢的工作現狀4-溝通與分享
- IT癡漢的工作現狀5- 一分鐘的工作
- IT癡漢的工作現狀6-寂寞的夜
- IT癡漢的工作現狀7-TB
- IT癡漢的工作現狀8-三思而后行
- IT癡漢的工作現狀9-會哭的孩子有奶吃
- IT癡漢的工作現狀10-Sprint Planning
- IT癡漢的工作現狀11-程序員的煩惱
- IT癡漢的工作現狀12-葉志堅離職了
- IT癡漢的工作現狀13-恐嚇電話
- IT癡漢的工作現狀14-段子
- IT癡漢的工作現狀15-低級錯誤
- IT癡漢的工作現狀16-職業發展
- IT癡漢的工作現狀17-健康警鐘
- IT癡漢的工作現狀18-思維定式
- IT癡漢的工作現狀19-公司組織結構
- IT癡漢的工作現狀20-職業規劃
- IT癡漢的工作現狀21-Android開發前景論
- IT癡漢的工作現狀22-由Dalvik虛擬機引發的口水戰
- IT癡漢的工作現狀23-鄉關何處
- IT癡漢的工作現狀24-Just for fun
- IT癡漢的工作現狀25-技術之養成
- IT癡漢的工作現狀26-好項目,壞項目
- IT癡漢的工作現狀27-高冷MM與奶茶姑娘
- IT癡漢的工作現狀28-刀客許三爺(上)
- IT癡漢的工作現狀29-社會工程學
- IT癡漢的工作現狀30-刀客許三爺(下)
- IT癡漢的工作現狀31-跳槽小貼士
- IT癡漢的工作現狀32-四次面試
- IT癡漢的工作現狀33-HTML5的春天是原生App的冬天?
- IT癡漢的工作現狀34-技術選型
- IT癡漢的工作現狀35-不要讓你擅長的技術限制了你
- IT癡漢的工作現狀36-做好準備再上路
- IT癡漢的工作現狀37-我想找一個人
- IT癡漢的工作現狀38-讓我的筆記本上網沖浪--無線路由的橋接技術
- IT癡漢的工作現狀39-客戶demo這件小事
- IT癡漢的工作現狀40-將其存成pdf,永久保存
- IT癡漢的工作現狀41-親歷招投標
- IT癡漢的工作現狀42-Android越用越慢?立場不同,談何信任!
- IT癡漢的工作現狀43-開發者宣言