適逢期末考週,許多meeting都暫停一次,也就在家裡窩了幾天改paper,不過就像某報紙上寫的:『世界盃足球賽期間,因工作不專心等因素造成的損失超過X億美金...』,我雖然不是瘋狂足球迷,但還是蠻愛看足球賽的,只要不是凌晨二點半的比賽,基本上每場都看了,也因此工作效率確實不好(噓...)。幫琮聖看完一遍他的論文後,接著幫華興做第四次的code review,review的重點放在memory leak,之前一個不小心的失誤讓有嚴重memory leak的程式commit到版控系統上了。review到一半忽然一時手癢,就把華興的鍵盤搶過來,把寫得不好的地方順便修了,他在一旁看到一些平常寫Java所不會注意到的小技巧,直呼原來可以這樣寫啊?如果要比這種小技巧,我的指導教授更是經驗豐富,可惜研究室裡不是常常有這種機會可以透過pair programming偷學老師的技巧,改到十二點半,通過所有unit tests後才讓我覺得稍微滿意一點,接著交代他那些coding style要改一下就去買午餐了。

  買完午餐回來忘記提到什麼事,華興就說到GL抱怨某些唸資工寫出來的程式不像是唸過資工,甚至比電子系的差,然後開了一個X子系統的程式碼給我看,一個長長的method超過500行,更別說裡面有好幾層的if和else,我沒仔細看這method的用途是什麼,至少我從method名稱看不出來用途,加上我不是該domain knowledge的人,不好說什麼批評的話,不過這讓我想起學長部落格的一篇文章,以及過去三年當總計劃PM時的經驗,別說程式內容了,光是coding style就亂七八糟,並不是沒有統一的coding standard,但就是沒人遵守,今年的計畫在第一次sprint planning的時候,我就極度主張老師要用公布的coding standard來review學生的程式,但效果如何呢?從GL的抱怨可想而知了。

  回家前到系辦找宜芳確認一下黃老師是否知道16F又結了一個蜂窩的事情,沒想到她也聽到GL的抱怨,說真的,專職的GL在review子系統的程式碼花了蠻多功夫,比起我過去三年兼差的多太多了,不過如果要給GL什麼建議,我會說:『待己從嚴』,這也是今天下午老師幫我看完journal paper給我的一句話,舉例來說,我看過GL的程式碼,很多地方也不符合coding standard,由於他的身分特殊,所有的子計畫都會有樣學樣,如果他自己不能做到最好,他怎麼能去要求子計畫做到最好。這也是今年為什麼會主動跟老師約二次的code review,雖然今年我們只是一個小小的子計畫,但既然我們能掌握的更多,也表示我們應該做的更好,最起碼程式碼看起來要乾淨清爽易懂,以這個目標來說,我覺得今年我們做的比過去好很多。

  作業有被我改過的學弟妹都知道我對程式碼的要求很高,或是文件被我審查過的子計畫PM也認為我對文件的要求很高,但跟我的指導教授相比,那樣的標準其實還不算高,我要以高更的標準來看我自己的paper。要高規格看別人的東西很容易,但用更高的規格看自己的東西卻很難,我就陷入這樣的循環裡,一篇paper改版了六、七十次,到現在還是沒法送出去,老師也覺得這樣下去會花太多時間,因此語重心長地跟我說了很多老師唸博士班時的經驗。有時候一個知名大學畢業的學生之所以有如此高的評價,不是因為那個招牌,而是那個學校給學生的高規格畢業標準,所以當GL抱怨資工系程式碼寫不好時,表示像我們當助教改作業時的或是系上的老師授課時,應該要把這樣的概念教給學生,而不是把功能寫出來就算了,讓學生知道為什麼這樣寫不好,哪樣寫比較好,即便有少數一、二個學生無法適從,但至少讓大多數畢業的學生能夠對自己寫的程式碼有一定的要求,如此一來,資工系這個招牌才有所謂的品質保證!

  當然,自己得加把勁,用最高標準來改自己的paper,希望能早點投出去。

dbi1463 發表在 痞客邦 PIXNET 留言(0) 人氣()