l

2010年1月12日 星期二

是的,日本的拉麵真的比較好吃

01/12 22:00~23:20

2009 年 12 月10日,Teddy 和 Kay 到日本京都玩了六天五夜。對 Teddy 而言,此行除了旅遊之外,還肩負著一個略帶研究性質的使命,是發表論文嗎,錯。是為了解開一個放在 Teddy 心中多年的疑惑:『日本的拉麵真的有比較好吃嗎?』

多年前有一陣子 Teddy 經常看『電視冠軍』這個節目,節目中時常有日本各地各種不同拉麵的比賽,每一種看起來都好好吃。在台灣,市面上也經常看到很多賣拉麵的連鎖店,Teddy 也吃過好幾間不同的拉麵麵店,可是怎麼無法體會電視節目中那些來賓們吃過日本拉麵時所散發出的幸福感。難道是日本人演技太好?還是台灣的拉麵真的沒有哪麼好吃?由於 Teddy 之前沒有去過日本,因此無法證實,這個疑問一直存放在心中。

此行 Teddy 只負責出人,行程完全由 Kay 規劃。還好 Kay 做了不少功課,在網路上查到,京都火車站 10 樓有一塊全部在賣拉麵的區域,稱作『拉麵小路』,裡面有一家叫做『寶屋』的拉麵店,賣的拉麵很好吃。

還好有漢字可以看,真的是『拉麵小路』

寶屋店門口排隊的人潮

到了日本才見識到什麼叫做『販賣機文化』,到處都有販賣機。吃拉麵之前,要先在門口的販賣機投錢買餐卷。Teddy 不懂日文,怎麼買?簡單,從最貴的開始選。不要以為 Teddy 是好野人,這邊的拉麵以日本的消費來講應該不算貴,單價最高的好像才八百多日幣。

拉麵餐卷販賣機,可接受紙鈔和銅板

Teddy 去吃的時候已經是晚上八點多,單價最高的前兩名都賣完了,所以買了780 跟 650。

拉麵餐卷

進去之後發現店面不大,大概只能容納不到20個客人。位子很乾淨,客人一離開馬上就有服務生把桌面清理乾淨並放上新的筷子和紙巾。

座位桌面長這樣

煮麵的地方長這樣

這家店有一個很貼心的服務,服務生會給你一個大箱子,讓你把厚重的衣服或皮包放在裡面。剛剛提到了,店面很小,所以箱子是直接放在地上的。由於箱子夠大,所以完全不必擔心東西放不下。鄉民們一定會認為,這樣有什麼好,不是會擋到路?錯,完全不會,就是那麼剛剛好。

箱子長這樣

講了這麼多,啊麵在哪裡?進去之後好像等不到五分鐘麵就來了。


拉麵1


拉麵2

什麼,你問 Teddy 拉麵好不好吃?這還用問嗎,用看的也知道,好吃的不得了。無論是麵條,湯頭,配料,都是 Teddy 吃過最好吃的。份量也是剛剛好,不會像台灣很多拉麵店給個超大嚇死人的碗,湯頭又不是很好,麵和週邊配備用料又省。

要怎麼形容吃完之後的感覺呢...嗯,就好像跑 JUnit,100 個 test cases 全部通過,看到一路都是綠燈的那種感覺,就差不多了。


結論就是,日本的拉麵真的比台灣的好吃很多,好想再吃一碗啊。

友藏內心獨白:以後吃不到這麼好吃的 叉燒飯  拉麵該怎麼辦啊!

2010年1月9日 星期六

用 Robustness stories 評估 SyncFree 有多強壯

01/09 23:03 ~ 01/10 00:20

對於 Teddy 的底細略有了解的鄉民們,應該知道 Teddy 博速論文研究的是軟體『例外處理』(exception handling)。如果一個軟體在執行時妥善地處理所遭遇到的例外情況,我們就說這個軟體很 robust,在此中文姑且稱之為『強壯』。一個強壯的軟體,遇到例外不會假裝沒事欺騙使用者,更不會隨隨便便的就當機 (至少會硬撐一下再當)。一個強壯的軟體是可信賴的好伙計,讓你可以放心的工作交給他。

就好像沒有人希望買到一台一撞就爛的汽車一樣,相信也沒有人願意使用動不動就死當或是造成資料損毀的軟體(暈到死系列軟體具有治外法權,不在此限)。問題來了,使用者要如何判斷一個軟體系統強不強壯?而稍微有點良心的軟體開發人員要怎麼自我評估軟體夠不夠強壯到可以拿給使用者用?

這邊 Teddy 提供一個簡單的方法,藉由撰寫 robustness stories (強壯故事?好爛的翻譯) 來表達軟體例外處理的需求。Teddy 用 SyncFree 這個軟體舉個實際的例子說明。SyncFree 是一個跨平台的檔案同步軟體,可以雙向同步來源與目的資料夾中的檔案,也可以單向的把來源資料夾中的檔案備份到目的資料夾中。SyncFree 是用 Java 開發的軟體,在Windows 和 Linux 平台上都可以正常的執行。以下是 SyncFree 在 Ubunut 9.10 x64 執行的畫面。


使用 SyncFree 的人(就是 Teddy 啦),最擔心的就是執行 SyncFree 之後檔案並沒有真正同步,以及發生檔案損毀的問題。為了評估 SyncFree 是否夠強壯到可以保護 Teddy 的資料,Teddy 寫了以下這幾個 robustness stories 。


  1. 身為使用者,Teddy 希望當來源或目的磁碟機容量不足時,執行 SyncFree 雙向同步不會造成檔案複製不完整 (不會影響資料正確性)。
  2. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若來源目錄不存在,不會毀損目的目錄中的資料。
  3. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若目的目錄不存在,不會毀損來源目錄中的資料。
  4. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若有檔案被其他使用者刪除,不會造成同步資料錯誤。
  5. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若有檔案被其他使用者改名,不會造成同步資料錯誤。
  6. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若有檔案被其他使用者鎖住,不會造成同步資料錯誤。
  7. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若遇到唯讀的檔案,不會造成同步資料錯誤。
  8. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若使用者操作檔案的權限不足,不會造成同步資料錯誤。
  9. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若來源檔案檔名太長無法複製到目的磁碟,不會造成同步資料錯誤。
  10. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若檔名中有特殊編碼的字元,不會造成同步錯誤。
  11. 身為使用者,Teddy 希望使用 SyncFree 透過網路同步檔案時若網路中斷,不會造成檔案複製不完整或同步資料錯誤。
  12. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若 SyncFree 被殺掉或電腦當機或電源中斷,不會造成檔案複製不完整或同步資料錯誤。
  13. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若 Teddy 中斷同步執行,不會造成檔案複製不完整或同步資料錯誤。
  14. 身為使用者,Teddy 希望使用 SyncFree 同步檔案時若發生 out of memory exception,不會造成檔案複製不完整或同步資料錯誤。
  15. 身為使用者,Teddy 希望使用 SyncFree 同步單一檔案大小為 20G 的檔案不會造成檔案複製不完整或同步資料錯誤。
  16. 身為使用者,Teddy 希望使用 SyncFree 同步20萬個檔案不會造成檔案複製不完整或同步資料錯誤。
  17. 身為使用者,Teddy 希望 SyncFree 執行完畢之後不會鎖住檔案造成磁碟機無法卸載。
  18. 身為使用者,Teddy 希望即使來源與目的電腦時間不同步,SyncFree 還是可以正確地同步檔案。

如果上面這 18 個需求 SyncFree (或是任何一個檔案同步軟體) 全部都可以做到,那麼鄉民們應該可以放心的把心愛的資料交給 SyncFree 來同步或備份。當然,前提是在沒有任何例外發生的情況下,SyncFree 的功能要能正常執行,也就是說雙向同步或是單向備份之後,兩邊的資料要是正確的。如果正常功能都不正確 (correctness),就不用談例外處理的問題了 (robustness)。

什麼,你問 Teddy Syncfree 有沒有滿足這 18 個需求?
Teddy 說:如果有,就不會寫這一篇部落格了。

2009年12月30日 星期三

Windows 不死,但希望它逐漸凋零

2009/12/29 23:41~ 2009/12/30 00:55

Teddy 最近把在公司用的 Acer Notebook 和家裡新買的 9999 超值電腦 (剛剛收到 PXHome 的廣告信,這台電腦降價 500, 現在一次付清只要 9499...應該是年終強力清庫存)的作業系統換成了 Ubuntu 9.10 x64。剛開始抱著雄心壯志,要完全拋棄『暈到死』作業系統,所以裝了 Wine 和 IEs4Linux (可以透過 Wine 在 Linux 上執行 IE6)。對於 Wine 這個軟體,Teddy 依稀記得似乎在 10 幾年前就聽說在開發了,沒想到這個團隊這麼有毅力,抱持著愚公移山的精神硬是把它給做出來了,值得鼓勵。但是,Teddy 發現只要一執行 IE6,Teddy 的電腦就會處於非常忙碌的狀態,Wine 幾乎佔用一顆 CPU 90%~100%  的資源,IE6 則佔掉另一顆 CPU 80% 左右的資源。只是為了執行一個 IE6 連上公司 104 人力資源系統預約個會議室或是請個假,有那麼嚴重嗎?更誇張的是,Teddy 把 IE6 關掉之後,Wine 還不會結束,也殺不掉,繼續佔用 CPU。可能是 Teddy 涉世未深,不太會用吧,所以雖然覺的 Ubuntu  很棒,但 Windows 也不是省油的燈,絕不輕易允許人民投奔自由。

這個畫面 IE6 用掉了 104% CPU 資源,不知道是如何算出來的?用掉兩顆 CPUs?


以 Teddy 自身的經驗,到目前為止有幾件工作還是被 Windows 綁住:
  1. IE:都什麼時代了,居然還是有一堆網站只支援 IE6 以上的瀏覽器。
  2. Office:Teddy 真的有給他用了一下 OpenOffice,不過打開 word 檔案,格式真的會有一點變掉。對了,為什麼 Microsoft Office 有出 Mac 版,就是不出 Linux 版?
  3. Outlook:一直以來 Teddy 都用 Outlook 收 Exchange 裡面的信件。Teddy 都把信件留在 Exchange 上,這樣可以透過 OWA 在瀏覽器上看全部的 mail。目前還沒時間處理到取代 Outlook的問題。
  4. ActiveSync:Teddy 的手機是 WinCE 6.0,需要透過微軟的 ActiveSync 同步資料。這個需求在 Linux 不知道有沒解。
  5. 電視卡:Teddy 家裡的電腦有一塊 VideoMate H900 電視卡,官網上面當然是沒有Linux 驅動程式。
  6. 印表機:Teddy 家裡的 Kyocera FS-1030D 印表機不但 Ubuntu 有內建驅動程式,在官網上居然也提供 Linux 驅動程式,太感動了。不過,公司那一台超大台影印機+印表機的機器,就沒有了。試了一陣子還是無法列印。
還好 Teddy 沒有玩 game 的習慣,不然這個列表一定要加上 game。

結論就是,長久下來 Windows 軟體綁硬體的確把大部分的使用者綁的死死的。Teddy 好久以前就想玩 Linux 了,可是一直沒有勇氣『撩下去』。這一個禮拜的使用經驗,真的非常的累。但是唯有真的把平常工作的電腦換成 Linux,才真正能體會『自由』的感覺。有一大堆免費又好用的軟體可以使用 附帶同樣也是免費的 bugs。不用再看到微軟定時提醒是否使用盜版軟體的畫面,至少心情好多了。

Teddy 現在還是要在 Ubuntu 與 Windows 切換使用,希望有一天可以真正擺脫 Windows。並不是因為 Windows 要錢,而是覺的微軟獨占市場的現象應該要改變。Teddy 的切身之痛,公司的電腦原本安裝 Vista Business 32-bit,『使用者經驗』非常之爛,只能用慢到爆來形容。要是換成其他軟體公司推出這樣的作業系統,早就倒店了吧。

總之,Linux 加油,open source 加油,硬體廠商更要加油推出 Linux 驅動程式。

友藏內心獨白:哪一天 Linux 在 desktop 的市占率有 20%的時候,微軟應該會考慮出 Linux 版的 Office 吧!

2009年12月26日 星期六

快捷鍵不死,只是逐漸凋零

12/26 17:10~17:58

兩個禮拜前 Teddy 在測試公司開發的軟體,其中有一個畫面需要輸入 IP 位置,長得類似這樣(不方便抓取公司還在開發的軟體畫面,所以下圖是抓 Windows 網路設定畫面):


大家都知道 IP 位置由四組數字組成,在每個欄位中按下鍵盤上 tab 按鈕,可以跳到下一個欄位。由於這個元件的按鍵控制是 Teddy 的同事用 wicket 寫的,因此按下 tab 跳到下一個欄位也需要在程式中處理。問題來了,要如何跳回上一個欄位?如果各位屬於資深鄉民這個等級的,一定都知道按下 shift+tab 可以跳回上一個欄位,問題是,Teddy 的同事們居然都不知道,所以自然也沒有在程式中提供這個功能。

雖然大部分的畫面操作都需要使用滑鼠,但是有時候適當地使用快捷鍵是可以大大提高工作效率滴。但是問題又來了,像 Teddy 這種忘性比記性還好的人,要記住那麼多快捷鍵是不可能的。所以,本篇的目的就是幫助 Teddy 紀錄幾個常用軟體的快捷鍵,以備不時之需。

視窗操作:
  • 關閉視窗:alt+F4
  • 開啟 Windows 檔案總管:視窗按鈕+e
  • 顯示桌面:視窗按鈕+m
Firefox:
  • 關閉分頁:ctrl+w (超好用,在 Chromium 和 Eclipse 也通用)
  • 新增分頁:ctrl+t
  • 切換分頁:ctrl+Tab
  • 開啟最近關閉的分頁:ctrl+shift+t
  • 把游標移到搜尋框:ctrl+k
  • 顯示瀏覽歷史紀錄:ctrl+h
  • 查看網頁原始碼:ctrl+u
  • 關閉所有 Firefox:ctrl+q 
Windows 檔案總管與 Ubuntu Nautilus (檔案瀏覽器) 通用:
  • 建立資料夾:ctrl+shift+n
  • 檔案或資料夾重新命名:F2

 先紀錄到這邊,其他的想到再加。

2009年12月20日 星期日

Ubuntu 的一天

12/20 22:37~23:37

在 Teddy 硬碟分割區損毀之後,Teddy 就利用這個機會 ,裝可憐再度提出購買 9999 電腦的要求,終於獲得通過。順便未經報備私自夾帶記憶體 2G *2 以及一個 1.5 T 的硬碟,結果還是花了 17000 左右。電腦果真是繼房子和車子之外,一般家庭消費金額排名第三的物品。

Teddy 選擇 Acer「霹靂戰神」(AS-M3203),除了便宜、四核心 (AMD) 之外,另一更重點就最多支援 8G 記憶體,可以用來裝 64 位元的作業系統,跑跑 VMWare,看看效果如何。

原本以為這台電腦是沒有附任何的作業系統,拿到電腦之後才發現這台電腦附了一個 鳥鳥的 Linpus Linux 9.4 (企鵝也是一種鳥喔) 。




不是 Teddy 對 Linux 有成見,而是這台電腦內附的 Linpus Linux 在開機之後居然是文字模式,還要上網安裝 X-Window,這會不會給他有點太陽春了一點。





原本 Teddy 是打算直接安裝 Ubuntu 9.10 版 ,不過現在倒是想看看 Linpus Linux 葫蘆裡賣得是什麼藥。很可惜,安裝失敗 (忘了拍照片),應該是連需要的檔案都沒有下載成功。Teddy 可是有接上網路線,而且確定網路是 OK 的喔。算了,直接安裝 Ubuntu。

安裝 Ubuntu 過程十分順利,而且開關機速度真的很快 (不知道是不是沒裝什麼軟體的關係),內建的酷音輸入法也很好用,比微軟的新注音好用太多了。想到 Teddy 被新注音荼毒這麼久,有點想哭。因為 Teddy 原本的那台電腦都在執行硬碟修復的工作,所以今天 Teddy 花了比較多的時間在使用 Ubuntu。用了幾個小時之後,赫然發現,耶,如果不用 office , IE 和電視卡,幾乎所有的工作都可以在 Ubuntu 上完成 。算一算,Teddy 在 Ubuntu 今天做的事有:

  • 使用 Firefox:找資料、看新聞、收發 email、使用 Facebook、在 PCHome 上買 Hub
  • 安裝 wine & office (可以裝,不過後來決定放棄改用 VM)
  • 安裝 VMWare Player
  • 安裝與使用抓圖軟體
  • 測試播放電影 (rmvb, avi)

真的覺的雲端計算很有前途,其實除了使用網路 ATM 轉帳好像非用 IE 不可,幾乎大部分的工作都可以在 Linux 上完成。找時間 Teddy 再來試看看 OpenOffice,處理一般的文件應該沒問題吧。

最後,Ubuntu 有一個軟體中心程式,有很多免費的軟體可以使用,大幅簡化安裝手續,這一點也不錯。


Ubuntu,給你拍拍手。

樂極生悲的12月

12/20 21:50~22:34

本月的部落格產量超低,實在是有說不出的苦衷。話說 Teddy 本月10日到15日和 Kay 到京都自助旅行。出門之前,Teddy 忙著參與第 20 + N 年份的國科會計畫。好不容易告一段落,又要忙著整理行李。出國的這幾天忙著玩和整理照片也沒時間寫。原本打算回國之後好好地把京都之旅報告一下,沒想到一連串的痛苦才剛剛開始。

Teddy 回國之後發現電腦硬碟一個約 720GB 的分割區損毀,用 chkdsk 去檢查,沒想到 chkdsk 居然回報「剩餘空間不足,無法修復」。



Teddy google 了一下錯誤訊息,發現硬碟必須要有 15% 的剩餘空間,才可以讓 chkdsk 修復損毀的分割區。問題是 Teddy 的分割區已經損毀,根本沒辦法清出空間啊。在網路上看到的解法是,找一些管理分割區的軟體,重新調整分割區的大小,再執行 chkdsk 這樣就 OK 了。但是 Teddy 花了好幾天的時間,還是無法備份出損毀的分割區,而且當 Teddy 使用某軟體調整分割區大小時,還調整失敗,使得分割區變得更亂,大概沒辦法救回來了。

現在 Teddy 只能用 EazyRecovery 這一類的軟體來試看看能不能救出一些檔案。700 多G的分割區每處裡一次要都要10幾個小時,看來可能要弄到明年了。

友藏內心獨白:難道家裡也要買一台磁帶機備份資料?

2009年12月13日 星期日

陸客,你好強: 宇治篇

12/13  22:27~22:52

Teddy 和 Kay 這幾天在京都旅遊,遇到不少奇人異事,其中最值得一提的,就是以下這件。

12月12日中午約12點半左右,Teddy來到宇治的「源氏物語博物館」,由於走了不少的路腳痠得要死,因此買票入館之後,先坐在展示館內的椅子上休息一下。展示館內有精美的玩偶,都是源氏物語內的人物,可惜有禁止拍照的標示,無法照幾張回來給鄉民瞧一瞧。

博物館外觀

就在 Teddy 坐下不久之後,「殺」進來4~5個年輕人,不分青紅皂白的,拿起相機狂拍,一時閃光燈此起彼落,著實嚇了 Teddy 一跳。

這幾個刁民,在不到兩分鐘的時間之內,用 牠 他們的相機快速掠奪完整個展示館,最後在帶頭大哥一聲「閃人」的指示下,快速消失在展示館門口。

此時 Teddy 心中大喊一聲:陸客,你好強!任何的禁止標誌都阻止不了您紀錄史料的雄心壯志啊,真可謂當代的司馬遷。

友藏內心獨白:不要讓我在台灣堵到。