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

Archive for August, 2006

學習別人怎麼做筆記

WWDC 2006 雖然結束了,不過我還有很多功課得做。除了一些還沒整理完的筆記,還有幾篇見聞錄得寫得交。另外還有會場上參加過的許多sessions,也還有範例程式得去下載得瞭解。

白天的工作把我淹沒,回到北京一週以來,除了在清理堆積如山的to-do,還得在各種密密麻麻的over-design叢林間打轉。I’ll survive.

倒是,讀到Caterina Fake參加O’Reilly FOO Camp的筆記,除了筆記內容,我更好奇的是像她參加會議,會怎麼做筆記。

WWDC 2006會場上,我見到了無處不在的OmniOutliner,也有人用 TextMate 、永遠的 BBEdit 系列產品,或是硬派作風、在 Terminal 下的 vi 或 emacs (用 SubEthaEdit 的人反而沒想像中多,當然我的抽樣很不可信就是了)。不過做筆記的工具,可能不若做筆記的事前準備和方法來得重要。

我必須承認,第一次參加這樣的開發者會議,頭兩天可以說是完全處在被動地被淹沒狀態。Didn’t know what to expect 可以說是最大的原因。當然。我相信大家也都能理解,有些東西作為與會者,不能詳細公開描述。不過整理出來公諸大眾的是一回事,我認真檢討起來,自己做筆記的習慣還是太生嫩而欠缺準備。這不是工具的問題,而是,我整理不出像Caterina那樣的筆記。

要學的東西還很多。附帶一提,Caterina的筆記真是好看。

Paula Scher on Design

卡爾維諾(Italo Calvino)在台灣中譯為《寫給下一輪太平盛世的備忘錄》(Six Memos for the Next Millennium: The Charles Eliot Norton Lecture 1985-86)的講稿中,有一章〈快〉提到過一則故事:說有個國家的君王要莊子畫蝴蝶,莊子說要五年的時間,於是君王供莊子吃住,過了五年後君王問到莊子工作得如何,莊子說他還要再五年。五年過去,到了約定期滿的時間,莊子提起畫筆,一揮而就,畫出了世界上最美麗的蝴蝶。

這段故事到底典出何處呢?翻了翻錢穆本的《莊子纂箋》,卻怎樣都找不著與此相近的描述(當然有可能是我白目,完全漏看──這種事常發生在我身上)。這不會又是一個假託以名的舉燭吧……

Anyway, 從Signal vs. Noise看到的這個,Paula Scher講的,不就是這麼回事嗎?

How can it be that you talk to someone and it’s done in a second? But it is done in a second. it’s done in a second and in 34 years, and every experience and every movie and every thing of my life that’s in my head.

這一段訪談講到許許多多有意思的東西。其中有一段講到她手繪的地圖,她說那和設計很不一樣。Paula Scher做設計依靠的是靈光一現,手繪地圖則是有許許多多的工夫(craft)要下在裡面。她喜歡手工,覺得用電腦怪怪的,因為用電腦「味道不對」,沒有美術用品店的味道,反而像在一部車裡。藝術的時刻短暫,與生活中絕大多數不得不然的「垃圾」相比來說,但是只要有那樣的時光,她就會一直做下去,三十四年來如此,樂此不疲。

新鮮感

回應一篇 blog 留言。套用 Dr. T 多年前某次在捷運上發表的評論:台北是個…

  1. 有捷運;
  2. 市內電話8碼;
  3. 坐在捷運上有人講行動電話

的城市。

那一次我們恍然大悟,曾幾何時台北也進化了。猜想,也許我對外國城市的新鮮感消失,大概就是從那開始的吧。不過,正因為除去了光鮮的遮蓋,反而才更能辨明城市與城市間不同的氣味、生活質感的微妙差異(nuance),以及其實哪裡都有哪裡的pros and cons,這樣的認識囉?

啊,這次在秋葉原另一個大感慨是退居二線的 Portable CD/MD players. They look just soooooo yesterday. Sigh.

然後才覺得青少年時代得不到的、羨慕別人掛在身上所擁有的,好像也沒那麼了不起了嘛。芬芳的花朵也有凋謝的一天,很閃的炸彈也有黯淡的時候,之類的。(為什麼跑出了這種帶有蒼桑感的句子呢?XD)

お盆、Terracotta、美空雲雀、入力法燒鳥會

(Update: 經 momizi 指正,あゆみ不是實際的「腳步」,因此把美空雲雀的特展題名翻譯作了點修正)

昨天適逢日本今年的盆節(お盆,opon),渋谷擠滿了人。前一天東京有輸電線故障,造成百萬戶停電、日經指數無法計算的麻煩事,隔一天的盆節一大早,小泉首相參拜靖國神社。

上午的江戶東京博物館也不例外地混雜込んで。這一季正好有史記與兵馬俑特展。英文稱為terracotta figurine或terracotta army的兵馬俑,看實物(展館並未說展物是複製品)要比從書本影片上見聞得來得震驚。跪射俑身上的顏色還有殘留,VR復元影片更是展出了可能的原始顏色。樂士俑連掌紋都一清二處,還有陪葬坑的銅鑄鳥塑,羽毛和嘴喙的細節都精細得不可思議。

展場同時也展出漢朝的人偶俑,規模和比例上比秦代已經縮小許多,不變的是精細度。人偶上的衣物因長期埋在土壤中而腐化,留下來的陶俑則具備一切人體特徵。其中兩塊牌子的說明:「人偶的製作極其精細,連肛門都做了出來」、「有的陶俑的男性生殖器部份,或因後來進入工藝品交易,為了流通的緣故,被人削去」。女性陶俑的精細度亦如是。

一說藝術之所以攝人心魂,正是在於當反映、摹擬真實到達極致時,真實就被扭曲了。

當然,還有那一句「始作俑者,其無後乎」的感嘆,以及某種對歷史的懼慎和悲哀。其實是個看了會令人難過的展覽。

※※※

江戶東京博物館的常設展區一如過去,特展區這一季的主題是「美空雲雀:走過昭和時代」──我以為原來的日文題名「昭和時代のあゆみ」是指「昭和時代的浜崎あゆみ」,結果自然是被日本友人笑得前仰後合(嗯… orz)。

看了展覽才知道,原來《川の流れのように》(江美琪《雙手的溫柔》原曲)是美空生前最後的單曲作品。

※※※

WWDC後途經東京辦公事。公事之後的最後一晚,在原岡兄(Yoshiyuki Haraoka)的促成下,和MacUIM 的作者谷津真樹(Masaki Yatsu)、AquaSKK的諏訪友崇(Suwa Tomotaka)以及UIM的維護人加藤悅史(Kato Etsushi)皆さん一起開了一場「入力法燒鳥會」(呃,燒鳥 = 焼き鳥 = yakitori = 日式烤雞 [zh_TW] = 日式烤串 [zh_CN])。原來 MacUIM 最早取法 AquaSKK ,而 SpaceChewing 及 OpenVanilla 又取法 MacUIM … 所以啤酒兩杯下肚後,大家開起了「AquaSKK 感恩會」。:p

日文輸入法的情況和中文有不同的地方,SKK, Prime, Anthy等設計各有不同。但是 Mac 使用者的困境則有相似的地方:OS X 設計怪異、有太多 legacy、輸入法開發的除錯困難等等……

非常謝謝原岡兄促成這次聚會,也謝謝在場的各位忍受我不時夾雜整句英會話的破日文。

皆樣御苦勞,有難御座。:)

《伊呂波歌》的唸法

在一位日本友人的指導下,把用平安時代日語的《伊呂波歌》給學了起來:

いろはにほへと
ちりぬるをわかよ
たれそつねならむ
うゐのおくやま
けふこえて
あさきゆめみし
ゑひもせすん

轉寫成羅馬字如下:

i ro ha ni ho he to
chi ri nu ru wo wa ka yo
ta re so tsu ne na ra mu
u wi no o ku ya ma
ke fu wo e te
a sa ki yu me mi shi
we hi mo se su n

其中有幾個地方,跟先前列出的版本不同。

首先是斷句的方式,雖然一說《伊呂波歌》採用的是七五七五的句型,但是嚴格說來「わかよたれそ」(wa ka yo da re so)在單句的時候只有六個音節。友人說原來的伊呂波歌應該以上述方式斷句(是否確實如此,似乎還要再多做考察才能確定)。

再來,ゐ(wi)跟ゑ(we)兩個在現代日語(二戰後通行的日語)已經消失了,在《伊呂波歌》的原文中要添回去。

けふ(ke fu)是現代日語的きょう(kyô),今日的意思。

友人同時教了詠朗的方式,每個字要照原來音節的唸法(因此けふ就要唸成 kefu 而非 kyô)。至於重音則試轉寫如下(不是很精確的表記系統):

平平平平平平平
平平平平平升平平
平平平平平升降平升
平平平平升降平
平平平平平
平平平平升平升
平平平平平平

友人是東京人,不代表其他地方也是這麼唸。

《伊呂波歌》一共四十八個假名(含ん),做個檢查:所謂的「五十」音加上ん,扣掉並不存在的 yi ye wu,於是就是四十八個。現代日語再扣掉 wi 跟 we ,實際只有「四十六音」而已。

秋葉原,電料行,中古品商店



Inside Is a World

從秋葉原車站的電氣街出口右轉,就會看到這個巷口,走進去再出來的某個地方就是照片中的那另一個入口。

裡面賣許多電子零件、組合套件,有的店很驕傲地展示著Sony第一代Walkman,也有的標價賣著不知還是否會有人買的舊式電晶體收音機。

老先生老太太的店,有的在賣老式的示波器,有的則賣精美包裝起來的真空管收音機,甚至舊式的大盤磁帶也有。好奇會想,他們靠什麼來維持這樣的一家店呢?

有的地方讓人想起光華商場。令我驚訝的是光華商場成立於1973年,而空間組織的方式,以及最後形構出的畫面──須知空間的組織方式以及我們在悠悠時間軸上摘取的snapshot,無一不終究漫滲出歷史和文化的累積與影響──於是又一個台灣和日本的相似性,就有許多有趣的不言自明(是的,光華商場確實另有「台北的秋葉原」一稱,不過絕不是因為地下室賣Walkman、A光或「泡麵」的緣故)。

秋葉原有很多二手或中古商店。有的店有一整層的二手 Mac ,也有的在店面賣一些像 ThinkPad T22 這樣的老機器。也有的是已經被我歸在「古物」的 Walkman 或 MD 。品項眾多不可思議。

或許市場規模到一定的程度,就會構成這樣完整的生態系吧。誰知道哪天有沒有人會因為需要從檔案庫裡翻錄一卷帶子,而跑去跟老太太買大盤式的磁帶機,或者為了拍電影而需要一台真空管收音機。在那樣的時候,或許我們會感謝,有那一條巷子裡的小世界存在。

OV @ WWDC, Day 5: 最後一天參加的 Feedback Forum

星期五是 WWDC 2006 的最後一天,今天電腦出了點狀況,沒辦法參加最末的 Text and Internationalization Lab。第一場的 Text and Internationalization Feedback Forum 上面倒是提出了不少問題,諸於 Dictionary.app 何時能加入第三方辭典資料以及供 NSTextView 使用(答案:Leopard 裡會有 API),關於中日韓字型的 fallback 問題等等。

會上發現其實同時會裝好幾種 keyboard layout 跟一兩種中日韓輸入法的人,其實不在少數。俄語、波斯語等語系對於 l10n 以及文字顯示、組排、輸入的需求也和拉丁字母系的語言不同。輸入法是其中的一環,而且看起來並不只有中日韓語言的開發者會關心。

雖然電腦出了狀況沒辦法帶著 code sample 去 lab 討論有點可惜,不過負責亞洲區 text processing 相關事務的 Lee Collins 會在九月率領他的團隊到北京主辦「輸入法廚房」,Leopard 下一代的輸入法架構到那時候相信會更為完整了。

至此,WWDC 2006 告一段落。舊金山的 Powell 地鐵站裡,許多帶著 WWDC 2006 包包的人,拉著行李坐上前往舊金山國際機場的 BART 車廂。許多新的技術、新的 API,人們來這裡獲取訊息,到 feedback forum 上發表意見,留下聯絡方式。有人建議下一次的 WWDC 應該安排時間促進開發者之間的交流,例如 BoF (birds of feather) 活動,或是線上的與會者論壇等等,畢竟現在這樣的 WWDC 形式,還是太像 Apple 垂直的新技術佈達,而少了一點業界的橫向聯繫。

還有一些算是觀察心得與感想的東西,時間有點晚了──接下來又是連同候機長達十數個鐘頭的航程,切換時區之後,明日再續。:)

OV @ WWDC, Day 4: 與輸入法相關的議程

WWDC 到了第四天開始有和文字處理有關的議程。上午有一個和文字顯示、編排有關的講題;下午最末一個講題則和文字輸入、鍵盤配置,以及──輸入法開發有關係。

距離明年春季 Leopard 發行還有一段時間,新的輸入法架構也還沒準備好,一些東西顯然一定得到九月的北京輸入法工作坊(Apple將之稱為 “Input Method Kitchen” — 怎、麼、又、是、烹、飪、的、比、喻?-_-)才會更為明朗。

OV @ WWDC, Day 4: 邪惡的 Objective-C 與 Javascript 整合

昨天從 10:00 開始就一直在參加 sessions,同時因為很不怕死地把機器整套重裝,因此爛得亂七八糟。加上為了事前先跑過一遍今天下午輸入法相關session的sample code,寫作等於停了下來。(唉呀,給與會者準備的sample code pack不能跑啊……)

第四天連續兩場跟 WebKit 相關的議程,連同昨天的 Dashboard 議程,我們不停聽到關於 Objective-C 與 Javascript 如何整合。透過 WebKit ,ObjC 可以呼叫 Javascript,後者也可以呼叫 Objective-C (right, and the data types will be otomatically converted…)。

所以我上次在 OSDC 的演講還算是蠻有意義的,因為那一次的示範,也在講這件事……

OS X 上有越來越多程式利用 WebKit 作為介面層,例如 Adium, Colloquy ,甚至 Aperture 都用到了 WebKit 來表現介面。所以我們似乎正在目睹一個整合的趨勢,或者說,語言的界線越來越模糊,.js / Objc 共冶一爐,存取 DOM 資料,前台/後台經過洗牌更加清楚,但顯然 desktop/web app 的界線被模糊了。

另一件有意思的事情是,一到了 WebKit 相關 session ,所有我常用軟體的開發者,似乎都到齊了,像是染了一頭藍髮的 Colin Barrett可愛小朋友!!)、Colloquy 的作者 (he wears a blue t-shirt! which means…),還有 OmniGroup 的幾個人(其實大概那就是 Omni 全公司一半的開發者了吧)。

OmniGroup的技術頭頭在Objective-C那一場有應邀登台為Objective-C 2.0背書(他們是ObjC gc的小白鼠),他說Omni只有12位programmer,卻已經成功推出了六套產品。相信用過OmniGraffle和OmniOutliner的人應該都同意那些真的是好物。

似乎再一次地說明了其實少少的人可以幹大大事呢。

昨天其實還有一場超讚的演講,是Pixar的人再度應邀,這一次插了一個中午的新session,講畫動畫與寫程式之間的關係,但或許更重要的主題是 “storytelling as a team work”。Pixar的人果然真的會說故事,也強調團隊性。Somehow there’s section called “Things I wish someone could tell me when I was a student”. Well, that subject–how to tell a story with a team (and how programming is like that too)–is exactly the thing that I wish someone could tell me when I was a student… 雖然是遲來的醍糊,不過這樣也算是什麼什麼聞道,什麼什麼可矣了吧。

OV @ WWDC, Day 3: OV Runs on Leopard (at least for now)

剛剛聽完上午的Debugging with Xcode議程。測試了一下OV on Leopard,大體可以執行,但是Safari選字窗的位置出現了問題──感覺像是新版WebKit惹的禍(在 10.4 上執行 WebKit nightly build 也有相同的問題)。不過至少目前在WWDC seed版本上,一切運作正常。

感覺上64-bit版本Leopard支援舊式input method component的機會不大,這一點明天會見分曉。不過,既然Leopard要提供新的 “InputKit” 程式庫了,其中甚至做了某些 OV DisplayServer 在做的事(同樣是用 Objective-C remote object! 所謂德不孤,必有鄰でしょうか ?!)

承續昨天的話題,Apple的工程師似乎真的很愛烹飪啊。今天的Xcode debugging範例,竟然又是那個CoreRecipe… 如果哪一天自己開公司的話,首席大工程師的title,或許也來叫個Chef Software Architect好了。XD

Next »