稍微有點時間,來回覆一下一些朋友之前問到的問題。
一、可否能夠改寫OpenVanilla 通用輸入法表格編輯器—讓使用者在自行編輯輸入法表格的時候,只要先點選某個按鍵組合,然後便可以列出所有符合這個按鍵組合的對應輸出結果。如果某個輸入法的設計是會出現很多候選字(例如注音、拼音等),會需要這樣功能。

最近幾天花了點時間,是寫出了這樣的東西。能夠在選取某一筆資料之後,列出對應的資料,換句話說,就是要建立資料之間的關聯,也就是需要一些資料庫方面的功能;既然需要一些資料庫功能,又適用 Cocoa 開發,在改寫的時候,便使用了蘋果提供的 CodeData 架構,透過CoreData建立了一個簡單的Model,在讀入輸入法表格的時候,將資料轉換成NSManagedObject,一邊輸入一邊檢查:如果某個對應到按鍵組合的物件存在,那就使用這個物件,反之則建立物件,將對應的結果與之建立關聯,在GUI方面,則是用 Cocoa Binding 搞定…。
右圖便是開啟簡易輸入法的表格時的畫面。
雖然是做出來了,但是效能實在很不好,大概算了一下,如果要這麼做,處理一筆資料,大概要花上0.1到0.2秒的時間,而一般的輸入法少說都有一兩萬筆資料,更不要說有七八萬筆資料的輕鬆輸入法了;以兩萬筆來說,那就需要花上至少半小時才能夠載入,在選好要載入的檔案之後,就只能看到奪命小彩球一直轉,整台機器近乎呈現當機狀態。這樣的東西實在不太能夠拿出來見人,而總感覺問題應該出在 CoreData 本身。
閱讀〈一些問題的簡單回覆〉全文
四月的時候參加 OSDC.tw 2007 最後一天的 Lighting Talk 單元,算是第一次在比較正式的場合上,介紹自己去年溫溫吞吞寫出來的 Vanilla Journal 這個小東西,主辦單位也非常用心的留下了影音紀錄。
當然啦,一方面是這個東西實在沒有什麼難度,去研討會上做個簡單的發表、呈現,也只是希望瞧瞧有沒有人會想要一起來搞這個玩意,或是乾脆直接整個接手過去(顯然是沒有),而在同一個場合,在正宗高橋流簡報跟前,也很難不相較遜色。不過,據了解,當放到最後一張投影片的時候,IRC 聊天室裡頭似乎是一片「zonble 是個人才」之類的聲浪啊…。
另外,這兩天才發現原來義守大學的一份學生報刊:義守一週—觀音山風報的線上版本,也是用 Vanilla Journal 架設的。
(還真的有人在用啊。)
前陣子有位朋友說,與其做繼續做什麼期刊系統,倒不如把期刊系統改成型錄系統。
只要把原本期刊系統中裡頭的各篇文章,統統改成商品,順便加上一個購物車,那麼,現在的 Vanilla Journal(照慣例,底下簡稱 VJ ),就可以拿來讓每個人都可以在家自己發行一份 XXHOME 女性購物報之類的東西;或是,首頁也可以改一改,大概就改成像「毀滅市場」的那家3C賣場的首頁那樣。如此一來,這套系統就可以拿去賣錢了,接下來的計畫就是集資、上市、掏空、捲款潛逃…聽起來就是前途一片大好,可喜可賀呵。
(先補充一下:所謂「毀滅市場」的那家 3C 賣場,就是你每次進去,都可以聽到賣場裡頭以大分貝廣播播放宣傳歌「會員至上、絕對低價、專業配售、全台最大」的那家,而你每次聽到這首宣傳歌,都會把歌詞聽成:「毀滅市場、絕對低價、轉業賠壽、全台追殺」。—想想這樣的歌詞也算是合情合理,既然是絕對低價,那也絕對可以毀滅市場。而前陣子聽到,又覺得「會員至上」那句歌詞,其實聽起來也很像「毀滅智商」。)
閱讀〈Vanilla Journal:在做的、還沒做的、該做的、還有不知道該不該做的〉全文
三天連續假期裡頭,終於有些時間,趁著 2006 年的最後幾天,來把一些事情做到一定的階段,例如把手上照套自己拼出來的線上期刊系統 Vanilla Journal 的程式碼整理了一番。也給一些這段時間給予 Vanilla Journal 的朋友一個新年禮物。
Vanilla Journal 終於有了一個可以公開下載的 Beta 版本(0.24 Beta r74),另外,也暫時先弄了一個 demo 站,如果有興趣看看這套期刊系統長成什麼樣子,也可以先在 demo 站裡頭瞧瞧。
Beta 版本可以在 Google Code 上面的專案網頁下載區下載,而安裝文件目前還在寫…。至於 demo 站,位在http://zonble.twbbs.org/vj-demo/,管理密碼為 demo,歡迎測試;不過,在測試的時候,請不要透過這個系統,發表惡意的內容,或故意破壞這個系統,讓別人無法看到 demo 站的內容,例如一進去就把密碼改掉之類的…(如遇有這類狀況,我會立刻關閉 demo 站)。
閱讀〈Vanilla Journal 0.24(當然,還要加上個 beta)〉全文
希望您可以體諒:就一個幹的是助教這樣的行業,同時還一邊唸學位、修學分的人來說,大概就只有寒暑假的時候,才會兩邊都比較沒有事情,可以有一些比較長而不受干擾的時間,做一些需要比較長而不受干擾的時間才有辦法做的事情,例如寫 code。
所以,在八月花了大概兩三個星期、卯起來從頭寫了一個線上期刊系統—Vanilla Journal 之後,到了第一個比較像樣的東西出來,就已經開學了,而開學之後也就只有偶而改一點東西而已。而由於這套系統原本是供作學校裡頭的電子報系統使用,所以主要也是根據老師以及其他助教的需求,直接在已經跑起來的一個站上修改功能,然後順便將改過的地方送進 svn trunk 裡頭…而如果您想要直接使用 svn trunk 裡頭的 code,目前是會有一些問題的。沒辦法,時間不夠—雖然說如果比較有時間,我也比較傾向怎樣用 prototype.js 把發表介面弄得華麗一些,或是換上新版的 Light Box,例如直接用拖拉的方式調整分類的順序…有時間就只想做華麗的東西而懶得把安裝程式寫好,人性還真是糟糕。
閱讀〈致 Vanilla Journal 的使用者—一些問題的解決之道〉全文
說到線上期刊系統,加拿大的英屬哥倫比亞大學(University of British Columbia)所開發的 Open Journal Systems(姑且翻譯為「開放期刊系統」,以下簡稱 OJS,不過這麼翻譯,實在讓人難免覺得討厭,因為這樣翻譯並沒有精確點出這是「systemS」,但是翻譯成「系統們」也頂彆扭)值得一提。這套系統十分強大,但是問題也就在於,這套系統就是因為功能強大,實際嘗試起來,讓人感覺,設計實在太過複雜。
閱讀〈Open Journal Systems〉全文