ArchivePage 2 of 40

Cyclomatic complexity

關於 Cyclomatic complexity 一詞可參考 Wikipedia 上的解說。

中譯名稱是「循環複雜度」或者又稱為「迴圈複雜度」。主要是用來描述一個程式「條件分支」的複雜度,因為愈單純的 If-condition 愈容易讀懂,除錯時也較好發現問題所在。所以複雜度的數值,愈低愈好。在下面兩個情形複雜度的值都會加一:

  • if / while
  • switch-case

下列程式的 Cyclomatic complexity 分數是:2

foo()
{
  if (condition)
    printf ("hello");
}

下列程式的 Cyclomatic complexity 分數是:3

foo()
{
  if (condition-X || condition-Y)
    printf ("hello");
}

Panasonic GF1 日文版刷機

話說今天感冒,回家整個人都快掛了。雖然如此,還是要關心一下 Panasonic GF1 的最新資訊。原本只是想看看大家拍出來的照片。結果找呀找,竟然翻到 GF1 可以藉由刷機(就是改韌體)讓操作介面,從日文變成英文,這實在酷斃了。因為敝人對日文一竅不通,雖然有漢字可以猜,不過也僅是一部份選單,剩下多半仍是日文。

市面上也有賣「中文版」的 GF1 只不過價格硬生生貴上三千元,多花這些錢買中文語系,想到就覺得很蠢,簡直是在欺負人。現在靠著韌體修改,就可以輕鬆使用英文語系,實在爽翻了。有現省三千元的感覺。

想到自己也是韌體工程師,嘴角不禁上揚,這才是 FW engineer 的真正價值啊。雖然恨透這份工作,但不得不承認,這是唯一讓我備感驕傲與開心的時刻了,原來改韌體也能改出一片天(無誤)。

另外 GF1 有個工程模式也很酷,感覺像電動裡的 Combo 技一樣。想到這裡又不禁笑了,老闆曾說過:「寫韌體的,總會留個後門在 Device 上。」原來這個法則是換了產品,也不會變的道理。

工作之路

今天被老闆嫌:我對程式碼不熟,還沒進入狀況。他真的說對了,不虧是內行人一看就曉得。但有件事他沒看透:

我是進來看熱鬧的!!

最好千百行的爛 Code 沒人討論、沒人可問,只有一個人弄會有多熟。看到程式的邏輯只有無言而已。我討厭 C 語言、嵌入式系統、網通設備,還有這個鬼地方。

穩重如山

就像你知道的,大部的時間我就像個小孩(或者瘋子)。因為我覺得正衿危坐的態度,不應該套用在平日的生活上。對工作應該嚴肅,對上司能夠敬重;但私底下的時間就不要再壓仰自己了,因為那是確認你還活著的方法之一。時常保有行動力與赤子之心,能夠為生活帶來更多樂趣。這趟回高雄參加就業博覽會(其實是去湊熱鬧)讓我更明暸這點,

穩重可以用在更正式的場合,但那不會是對朋友或家人;因為在另個層面來講,或許就是一種相敬如賓距離感,這實在太令人難過了,不是嗎。面對摯親好友,就不需要再這樣包裝自己了吧,因為只有在你們面前,這一切才能忠實地呈現 :Q

Filco Tenkeyless 無刻青軸

可能是週五下班前發現 PayEasy 點數竟然有五千點完全不曉得怎麼用,想說轉賣點數應該會有一筆進帳,所以就鼓起勇氣默默訂下去了...。

早上宅配把鍵盤送來後就開始試用,自作聰明買了無刻版,結果發現狂打錯字,尤其是寫程式常會用到的括號與加減號;另外是數字鍵,每次敲打時都遲疑有沒有偏移一格,這點真的頗糟(苦笑)。

使用無刻鍵盤,最慘的狀況應該是發生在「注音」輸入法:每次輸入時,首先要找到注音字根,這點已經不容易,之後選字時也要很小心,不然選錯字整個流程又要重來一次 XDD 這真的是專家鍵盤啊。

工作態度

有什麼比誤上賊船更糟的呢,實在想不出來了。要不是因為房租合約,應該早就跑回南部了。有些道理在出社會後才更明白:很多事情與其等待別人救援,倒不如靠自己走出一條路,即使這會很漫長。每天生活在混亂之中,工作內容更是叫人意興闌珊。成山的規格書、陌生的名詞,搞不懂也不想懂,到底會這個能幹嘛 :Q

短時間內走不掉,或許該換個角度看事情,這樣可能會愉快些。但我不是那種人,不可能催眠自己熱愛這份工作,這無疑是自欺欺人。今天在回家路上稍微想了一個問題:

有沒有人很討厭自己的工作,卻又能把事情做的很好。

如果真有這種事,那會不會發生在自己身上?或許現在的堅持有一部份也是為了這個原因,當然這聽起來有點蠢;尤其當別人大步向前時,我仍不知道自己的方向該何去何從。