The Old Blog Archive (Traditional Chinese), 2004-2009

Archive for the 'nil 無分類' Category

好孩子的軟體設計心得(機車版)

Einmal ist keinmal.
只發生過一次的事情,跟沒有發生過是一樣的──德諺

Jamais deux sans trois.
有二必有三──法諺

  1. 如果你沒在使用undocumented API,那一定是因為你的程式沒什麼了不起的
  2. 過早求最佳解乃萬惡根源 (Premature optimization is the root of all evils)。
  3. 沒有人想當醜男或醜女。實際在出貨運轉的程式會醜,有一半是因為經歷了歲月的風霜。另一半原因是錢付得太少。
  4. 關於技藝 (tekhnologia) 與複雜性:「人生苦短,技藝博大,機會稍縱即逝,經驗不可信賴,判斷甚難做成」
  5. 沒有一套重要的GUI應用程式是沒有客製UI元件的。
  6. 與上一條相關的是:一套重要的GUI應用程式,必然至少有一處違反所在平台UI guideline的地方。
  7. 所有web的應用程式都不怕沒人用,都怕太多人用。
  8. 要重視歷史。傳道者說:已有的還會再有,已來的還會再來。有時候要解決問題,最快的方法,是去幹一段 Win16 (我沒有在開玩笑) 或者 OS 9 或者 NeXTSTEP 時代流傳下來的 code …
  9. 如果平台廠商跟你說,使用某某私有 API 是危險的,他們一定在隱藏什麼不方便的真相。例如,妨害競爭對手。不要太相信平台廠商說的話。
  10. 基本上對於「我們將在下一版中抽掉某某 undocumented API」一事要抱持懷疑態度。試想:他們如果真的抽換了,那還在使用舊版原廠軟體的人不就掛了?
  11. 跟上一條相比,documented API 會在完全沒有解釋的情況下被抽換掉的機率反而是比較高的。你要知道,做狗食的廠商,自己家裡不見得會餵同樣的食物。
  12. 關於重新發明輪子。西諺如是說:If something is worth doing, it’s probably worth doing twice!
  13. 美好的事物都要做出來了、送到手上才算數。古諺有云:真正的藝術家要有船 (real artists ship)。

微軟的「十項全能」(1981)

說來看了圖我才知道,這個遊戲是微軟發行的 (source: Moby Games):

其他的圖可以看這裡

這個遊戲對我有兩個意義。

一個是,這應該是我所能記得,孩童歲月的第一套電玩。記憶這種東西是怎麼工作的很難令人理解,但是如果說回憶像是Mac OS X的時光機那樣可以一頁頁倒回去找的話,我對「家裡有台(所謂台製)Apple II」的印象,倒回去第一頁就是那個畫面,找不到其他印象了。那個畫面大概是,我們住在舊家的頂樓加蓋,臥房裡面桌子上的灰色殼子跟綠色螢幕,還有一台嘎嘎作響的軟碟機。開完機後,電玩會用Apple II的單音喇叭,播放著我到現在都還能哼出頭幾個bar的主題音樂。在回憶之中,某個已經忘記確實時間的夏天的冷氣房裡,一台機器的嗡鳴聲響。

然後讓我思考記憶與經驗的另一個本質:需要他人的存在來見證。我隱隱約約記得有那麼一個晚上,放電腦的那個臥房點著日光燈,我爸跟我一起玩「十項全能」裡面的百米賽跑,一個人要按左右,另一個要按鍵盤的 AZ ,然後就看著螢幕上的兩個光點慢慢跩啊跩的跩到了終點線(最後當然都是大人贏)。

這樣的回憶找不到其他人證實了。我妹那時太小,我媽可能在照顧她。我可以找得到其他曾經玩過這個電玩的人,證明這並非子虛烏有的遊戲。但是那個模糊的畫面,那個一頁頁翻回去的經歷本身(Erlebnis),如果只有一個人是沒有辦法成立的。我爸如果還在世的話,問他那個夏天的事,他說不定也還記得一清二楚(他不會忘記這種事情的,雖然不免偶爾補上許多修飾的加油添醋)。經歷的存在需要透過他人的見證才能成立,大概是那樣的一個概念。

今天是台灣的父親節,藉此短文懷念一下我爸。

OpenVanilla捐款明細修正與更新

前次發佈的 OpenVanilla 2007 年年底明細有誤,已經發佈了新版到同一網址上。

同時我們於 2008 年 2 月 6 日收到一筆扣除 PayPal 手續費後為 USD 33.51 的捐款。我們在此也同時更新帳目明細。截至 2008 年 4 月 14 日止,OpenVanilla 捐款的新台幣餘額為 NTD 39,550,美金為 USD 1,439.35。

同時今年贊助 OpenVanilla 開發者(zonble)的 WWDC 入場券和機票款項也將撥出,屆時會再更新帳目明細。

再次謝謝所有捐助 OpenVanilla 的朋友。同時我也對於前次的登錄錯誤說聲抱歉。

OpenVanilla捐款收支明細(2007年結算)發佈

最近一次的 OpenVanilla 捐款收支明細已經整理出來了。2007/12/31 的結餘為台幣 39,550 元,美金 1,378.06 元。2007 年度的新台幣捐款收入為 13,750 元,美金為 33.21 元。

明細表可於此處連結取得。

2007 年 OpenVanilla 獲得 ICOS 2007 傑出社群軟體計畫獎項,獲得的獎金 NTD 12,750 (稅後)作為 OV fund 使用。

2008 年度,在我們推出下一個 release 之前,應暫時不會有新一輪的募捐計畫。在支用部分,2006 年時 OV fundraising 的目標是讓開發者能參與輸入法相關開發者會議。我們今年希望能繼續這個目標,目前計畫是利用現有捐款,贊助 zonble (對 OS X 版本貢獻相當多的 OV team member)參與今年的 Apple WWDC 2008,贊助的項目包括了 WWDC 的門票,以及台北─舊金山的來回機票一張。

再次感謝所有支持 OpenVanilla 的每一位朋友!

明けまして御芽出度う

一年的結束,一年的開始。這個 blog 也寫了整整四年了,往第五年邁進啦。

OpenVanilla、魔獸世界、行列

花了一些時間測試了一下,OpenVanilla(以及Apple內建的輸入法,包括日文)在「魔獸世界」(World of Warcraft; WoW)的行為,可能隨著機器不同而有不同。

大體說來,在新機器上,「魔獸世界」的非全螢幕模式一定是正常的──輸入法可以用,選字窗看得到。在最新機種上(例如前陣子剛出的,可以插滿4GB RAM的MacBook)可以在全螢幕上正常使用輸入法,但老一點的機種似乎只能在非全螢幕模式上使用。

而,雖然說是「正常使用」,但選字窗出現的位置並不正確,也就是沒有跟隨著組字區的位置移動。內建輸入法也一樣。

另外,先前有朋友反映,OV的行列輸入法在「魔獸世界」完全無法使用。我們也已經知道原因了,「魔獸世界」跟iTerm有一點像,在處理組字buffer的方式跟別人不一樣。我們在不影響原本行列運作的情況下,已經解決了此一問題。

更詳細的內容,以及修正包下載安裝方式,請參考我在OpenVanilla討論區中的說明。

再度徵求測試:LeopardVanilla 0.8.0.3

晚上發布了新版本的 LeopardVanilla ,請從此處下載

這個版本修正了幾個問題:

  • 最令人困擾的 “Finder當機” 問題(這次不是被輸入法模組害到,而是 OV Loader 本體的問題了),應該已經被修正了(尤其是 PowerPC Mac 常發生這種狀況)。如果您還是遇到「裝完後重開,Finder卡住」問題,請務必再和我們回報,好讓我們找出原因
  • 數字鍵被誤判為輸入碼,而不被當成數字輸出(10.4 用的 OV 無此問題)
  • 在中文介面上無法正確顯示為 “LeopardVanilla” 而顯示成 “OpenVanilla” 的問題
  • 使用了其他語系的鍵盤後,再切回中文輸入法,鍵碼錯亂問題(此修正為 LeopardVanilla 限定)

另外修正幾個問題,目前為 LeopardVanilla 限定。我們也將發布 10.4 用的 OV 與之同步:

  • 反查模組不穩的問題
  • 酷音模組在使用許氏鍵盤配置時,無法使用七個以上選字鍵的問題
  • 偏好設定中,加入酷音「候選字數」設定,沒有正確出現的問題
  • 酷音模組在使用許氏鍵盤時,無法使用 asdfghjkl 連續選字鍵的問題
  • 行列30反查模組加回標準安裝包中

已知問題:

在 LeopardVanilla 上,「使用完偏好設定後,輸入法失效」的問題,仍無法獲得有效解決。我們已經將問題回報給 Apple ,也正在尋找合適的 workaround(避開問題的方法)。在此之前,如果您發現用完偏好設定後,LeopardVanilla 失效,可以試試以下任一種方法:

  • 再進入一次 OV 偏好設定 (在 /Library/OpenVanilla/0.8/Loader/OVPreference.app),然後離開
  • 在 shell 下執行 “killall OpenVanilla”
  • 從 Activity Monitor 中將 OpenVanilla.app (或者是名稱為 LeopardVanilla 的 process) 給停止

要再請大家測試了。謝謝!

在一種想砍掉重練的 mood (快要進入 mode)

原本這個標題是要留到 blog 重練時用的(如果真的有那麼一天)。沒想到終於有力氣重審自己的第一個主要的Mac/Objective-C程式計劃後,竟然突然進入一種想砍掉重練的mood。命名得亂七八糟、太多重覆的code、風格的不一致。只有一個糟糕可以形容啊。不行不行。

Cocoa Tuesday: 2007/4/24 20:00在OP

先前在 HappyDesigner 的 IRC 頻道上提過,我有個想法,每周二在 OP 做心得分享。目前的想法是,一週講 Ruby / Ruby on Rails,另一週講 Cocoa/Objective-C。今年蠻希望能在台灣成立 Cocoa/Objective-C 的開發者團體,並且能把定期活動辦起來的。

剛過的這週二(2007/4/17)是 Ruby Tuesday。接下來的下週二(2007/4/24)就到了 Cocoa Tuesday 時間啦。地點一樣是在OPCafé,講題的話,目前想大概分享一下Key-Value Coding。歡迎對 Cocoa / Objective-C 有興趣的朋友一起來喝咖啡點心。

HappyDesigner 十月聚會

HappyDesigner十月要辦聚會。聚會主題,如果要我來講,叫 “How Not to Get Things Done”。

五月份聚會的時候,大家在達利咖啡現場烹煮高橋流投影片。這一次聚會,地點在竹東的Opcafé,參加聚會的朋友,請準備一道妳想跟大家分享的菜──這是比喻──亦即,妳怎麼管理時間,怎麼「搞定事情」(getting things done),或者妳和許多人一樣,喜歡把事情拖拖拖拖拖到最後一刻,然後神奇地完成一切……

時間是10月1日。給台北的朋友:我有四個人的單程 quota …

經過商量,本次聚會不做投影片,回歸本初的說故事時間。:)

告訴hlb妳會準備什麼樣的菜到聚會上。

« Prev - Next »