2008/12/3

Cairngform vs. Puremvc

Cairngorm

Cairngorm是Adobe官方提供的一個MVC Framework,要瞭解它,可以直接閱讀Adobe Developer Center裡面,收錄的Develop Flex RIAs with Cairngorm microarchitecture六篇文章,在閱讀時,要配合第一篇文章提供的範例程式Cairngorm Store對照來看,會比較清楚,我是使用Cairngorm Store (non J2EE Container version)。只要讀者有J2EE Patterns的基礎,就能夠瞭解Cairngorm,因為Cairngorm的設計沿襲了部份的J2EE Patterns,再加上它自己的一些設計。

雖然我看過J2EE Patterns,但是閱讀這六篇文章還是花了不少力氣,原因在於RIA介面的複雜性。在Web-Based的J2EE裡面,網頁的元件跟後端程式的互動,都是靠Front Controller來處理,所以後端只要用一個Servlet就可以作為前端發送到後端命令與參數的入口(可再配合Command來將互動的指令分類處理),單一的入口簡化了前後端的互動,資料傳送到前端後,整個畫面都是重新產生的,資料流很單純地只有一條路徑。

到了Flex就不一樣了,因為都是產畫面上的元件後,再將資料餵進去的,所以一個地方的元件資料異動,可能會同時影響到其他地方的資料(像是AJAX的網頁也有類似的問題),所以在後端傳送資料回去到前端時,元件互動的處理就非常麻煩了,所以Flex才有了Bindable這種東西。

Cairngorm已經存在了兩年了,又是官方的產品,很多專案都是使用這個framework,但它的複雜,也讓開發人員誤認為,flex actionscript是很難以親近的一種語言,雖然Cairngorm身為MVC框架的正規軍,部份設計理念也來自於J2EE,但它也繼承了J2EE複雜。

Puremvc

另一個MVC Framework: Puremvc,它定位自己為一個純粹地,與語言無關的輕量級MVC Framework,很多人都推崇這樣一個設計單純的框架,但是在官方網站上能找到的文件,除了一個看起來像天書的Best Practice,一個Conceptual Diagram與一個UML設計圖,就沒有了,找不到很簡單的tutorial或是step by step的說明。

在瀏覽過文件跟一些blog的說明後,我發現,我得用另一種更有效率的方法來瞭解Puremvc,就是從PureMVC Standard for AS3的Demos,直接從程式碼來了解應該怎麼使用它。

在trace過AppSkeleton、CafeTownsend、Slacker、EmployeeAdmin、StartupAsOrdered之後,我才算是比較瞭解Puremvc了,例如:(1) 畫面切割後,以ViewStack來切換 (2) 畫面上的動作,先產生flash.event.Event之後,在初始化Mediator的時候addEventListener,處理完該動作後,就sendNotification (3) 每一個ViewComponent都對應了一個Mediator專責處理 (4) ApplicationFacade裡面要 initializeController,並在裡面registercommand,StartupCommand裡面要 registerProxy 與 registerMediator (5) Notification sender有 Command、Mediator、Proxy,receiver有 Command與Mediator

除了標準版外,還有Multicore版本,差別在於,Multicore的Facade裡面有一個HashMap,所以必須要以key為參數,取得Facade,也就是return instanceMap[key] as ApplicationFacade。目前並不是非常瞭解Multicore版本要用在哪裡,但網站裡提供了Pipes、Startup Manager與State Machine這幾個Utilities,Startup Manager是用來處理動態載入資源的過程,透過它可以取得載入的狀態與進度,Pipes看起來像是處理模組之間的訊息,但實際上的用途,我還沒看懂。

Cairngorm vs. Puremvc

Why I think you shouldn't use Cairngorm提出了五點說明,希望大家審慎評估要不要使用Cairngorm。我在看過之後,真的是覺得Cairngorm非常的複雜,但是已經存在了兩年了,又是官方的產品,如果要進入這個世界,對整個team來說,負擔很大,並不是每一個人都能讀懂J2EE Patterns之後,再讀懂Cairngorm。

結果當然是採用Puremvc,跟Cairngorm比較起來,package跟class都變少了,只要有按照固定的邏輯撰寫程式,程式變得比較容易讀了。一個簡潔的框架,才能適當地幫助Programmer減輕負擔,而不是一個龐大的框架,成堆的專有名詞,讓人沒辦法很快地進入狀況。

用了一陣子之後,發現了2個問題,第一個是我們發現很少用到Command,大都是Facade、Mediator、Proxy跟Notification就可以把整個AP做完,至於Command到底應該用在哪裡比較恰當,這個我還在思考中。另外還有個問題是,Constants並沒有固定的位置,範例大都是寫在ApplicationFacade裡面,但似乎切割獨立成一個單獨的class會比較恰當,或者應該把Naming convention的規則記錄下來,這樣對於專案來說或許會比較健康一些。


thoughts about Cairngorm (again…)

想飛 by 游錢桂

這是幼稚園懇親座談會送給家長的書,書本的內容部份篇幅,以實例告訴大家,錯誤的教育方法造成的後果,描述最多的,是分數主義及過大的壓力,造就一個無法生產回饋社會的人,或者影響一個人,養成一些特殊的生活習慣,甚至是輕生自殺。另外一部分,則是作者自己跟孩子的相處經驗。教育該作到的,是幫助每一個孩子,找到他最適當的位置,在社會中佔有一席之地,因為每一個人脫離家庭與學校教育後,最終都得要進入社會,20多年的教育,換來的是一個人在社會上立足50年的時間。

該用什麼方式對待孩子?

回想自己的小時候,到現在一直無法忘記的,就是媽媽要我們去國語日報補習作文,這件事,我還記得當時一直說不想去,因為自己覺得一點用處都沒有,但是媽媽聽從朋友的建議,覺得補習並沒有什麼壞處,我得自己搭公車到台北,寫篇作文然後回家。後來發生了一些事,她才沒讓我繼續補習下去。

其實後來上了大學後,也常常跟媽媽提起這件事,總是告訴她不應該一直要我去補習,應該讓我們多閱讀才對。但現在我已經不會這樣想了,其實媽媽也是聽了別人的建議,希望自己的孩子能夠多學點東西,到時候聯考的作文會好一些。只唸到國中的媽媽,如果真的那麼瞭解讀書,那麼她應該不會隨便地聽從朋友的意見,她的出發點是善意的,只是她不知道該用什麼方法。

現在已經當爸爸了,雖然我盡力地買繪本,唸書給他聽,陪他玩遊戲,但是有時候也常常想知道,唸書的時候一直問東問西的,問他懂不懂,他會不會覺得我很煩。到底該用什麼樣的方式對待他,才是最好的?如果沒有稍微地施加一點壓力,讓他聽故事的時候能專心一些,他能不能聽得懂故事的內容?對待孩子,教育孩子的時候,該用什麼樣的態度才是最恰當的,老實說,我根本不敢肯定。

該處罰嗎?

在他3~4歲的時候,他會因為說謊,或吃飯吃得太慢(超過一個小時),或作了一些我們反覆告訴他不該做的事,而被要求面牆罰站,雖然現在6歲了,我們已經不再用這樣的方式處罰他了,但是他卻養成了一個習慣,常常會問我們,他可不可以怎麼樣,能不能做什麼,雖然這樣子做,多少保護了他不會受傷,但相反地,他卻失去了「犯規」的權利,創造的能力。

因此現在我就修改成,當他問我的時候,反過來告訴他,請你自己決定該不該做,請你自己決定要怎麼辦,當然不是每一次都這樣處理,而是我認為他能夠自己判斷的事情才這樣做。

有時候會覺得,就算是同一種教育方法,也會教出不一樣的人,人是一種複雜的動物,同樣的一種方式,卻可能得到完全不一樣的結果。那麼我不應該那麼在意,到底要用什麼樣的教育方法,應該要用什麼方式對待他呢?我想這就跟媽媽那時候的心情一樣,希望孩子能夠得到一些幫助,但又不曉得什麼樣的方式比較恰當。

生活上的確有很多時候,會有發生意外的潛在可能,例如在沙發上跳來跳去,在家裡亂衝,吃到好吃的東西一直吃,看電視的坐姿不佳,也有一些屬於品格的養成,例如打破東西、打翻水卻不承認,在孩子剛懂事那時候,如果沒有用比較激烈的方式,讓他瞭解這些是錯誤的,那麼是不是放任他可以犯錯?該用什麼樣的處罰才是恰當的,老實說,我不知道。

有些時候,我會問他,你覺得沒有作到的話,應該要怎麼辦,要他自己想個處罰的方式,這樣的作法或許比直接叫他罰站要好得多。

該怎麼教?

買書、念故事書給孩子聽,這是我的工作。中文的故事書,他應該都能瞭解,但是英文的就不一定了,幾天前拿出一本4歲時唸過的A Kiss For Litter Bear,我才發現,故事書裡面的動詞時態,他根本完全都搞不清楚,為甚麼run是跑步,ran也是跑步,come in是進來,came in也是。

語言教學,是個難題,不管是英語或是台語,因為平常比較少用,對小朋友來說,學習這樣的語言要怎麼轉化到日常生活上?但就算有那樣的環境,也不一定能保證有用,例如阿公阿媽都是講台語的,但是小朋友也是跟他們講國語,因為他們可以聽得懂國語。

有人說先把母語學好比學第二或第三外國語重要,也有人說,3~6歲是語言發展的黃金時期,要好好把握這個時間,究竟哪一種方式比較好,我沒有答案。現在只有唯一一種作法,就是孩子能接受的方式就做,他想聽故事我就講,不想聽我也不強求,其他的就靠他自己,聽天由命了。

要怎麼認識孩子?

興趣跟天份對於一個人來說,是非常重要的,認識自己更是關鍵,一個人要能夠認識自己的長處,才能知道怎麼發揮自己的優勢。但是我問我自己,我認識自己嗎?其實沒有,在還沒有嘗試過之前,誰知道自己有沒有興趣,有沒有能力做好。

既然我自己都不認識了,我要怎麼認識孩子呢?這個問題我也沒有解答,現在除了幼稚園的課程以外,另外還讓他上了一堂一個小時的畫畫課,我們也沒有期待他會有興趣,或有什麼成就,就單純要讓他去玩而已。

尊重

他常常會大聲講話,動作太大揮到我們,這時候,我們通常說請他尊重我們,要說對不起,或是坐好不要亂動。結果現在有時我們不小心撞到他,他也會跟我們說,「請你說對不起!」我們也該謹守尊重的原則,以同等的方式對待他。希望未來能夠在這樣的原則下,繼續相處下去。

2008/10/27

名偵探柯南 顫慄的樂譜 與 wii music 的音感測驗

聲音的三要素,有音調、音色與響度,(1) 音調 頻率,使空氣產生相同振動的次數,就等於兩個不同的振動源有了相同的音調,也就是相同的Do (2) 音色 音色決定於聲波的波形,因為聲音的組成並非是單一頻率的,也造成每一種樂器發出的Do會有不同的音色感受。 (3) 響度 強弱,也就是振動幅度,聲波振幅越大則響度越大,通常以dB分貝,來表示響度的大小。

柯南在顫慄的樂譜中,印象最深的一幕就是跟秋庭憐子小姐一起「唱出」DTMF的高頻與低頻組合訊號,成功地撥打出報警的電話。柯南是個音痴,因為他唱出來的歌曲總是五音不全,但沒想到在這個劇場版裡面,他成了有絕對音感的人。這也告訴我們絕對音感跟唱歌是沒有關係這件事。

所謂絕對音感,指的是對每個音都有不同感受,聽到不同音高,好像不同人在講話,但不代表絕對音感的人音感都奇佳。絕對音感可以辨識音高,卻不保證能辨識音準。換句話說,有絕對音感的人,對聲音有絕對的分辨能力,也就是對聲音的認知能力,這倒跟一個偵探所要具備的特殊能力相符,但他發聲的時候,卻不能保證是那一個音高。

人類的發聲與聽覺,(1) 人耳可聽見頻率範圍:20 Hz ~20000 Hz (2) 人類可發聲的頻率範圍:100 Hz ~ 10000 Hz (3) 人類發聲清晰的頻率範圍:200 Hz ~ 6000 Hz (4) 人類交談的頻率範圍:500 Hz ~ 2500 Hz,DTMF的高頻訊號是 1209、1336、1477、1633 Hz,低頻訊號是 697、770、852、941 Hz,所以每一個DTMF訊號都得以一個高頻加上一個低頻訊號組合而成,這樣可以產生16種不同的功能訊號,依照這兩個資料來看,理論上人類應該可以用發聲的方式,產生DTMF訊號,編劇能以聲音想出這樣的情節,真的是很厲害。

剛好最近又有個wii music的新遊戲,裡面有訓練音感的小遊戲,要以不同的樂器音色,分辨出不同音高的聲音,有時候還蠻難的,尤其是後面遇到三和音的題目,我大都只能聽出頻率最高的那個音,其他兩個只好用猜的。這個wii music遊戲並沒有針對節奏設計出遊戲,最多只有指揮跟搖鈴的部份,跟節奏有點關係,另外有個大金剛叢林節奏的遊戲,要配合康加鼓,不過這個遊戲要在年底推出重製版皮克敏&大金剛叢林節奏,到時候就不需要康加鼓了。


Web Radio簡易編年史 — 歷史, 前景與硝煙(上)
Web Radio簡易編年史 — 歷史, 前景與硝煙(下)
聲音的三要素 ——響度、音調、音品
音樂之三要素
漫談聲音
聲音的特性和分貝標度
聲音信號處理基本原理

歌聲能震碎水晶燈?人類發聲原理詳解
人耳聽覺特性與聽力損失

絕對音感
你有沒有絕對音感?
關於絕對與相對音感
絕對音感

DTMF
十位脈衝式電話和雙音多頻式 (DTMF) 電話

用音響打電話(揭秘柯南電話撥號)

wii music

WAV
MP3: MPEG-1 Audio Layer 3

2008/10/21

鋼穴 written by 艾西莫夫

鋼穴是艾西莫夫機器人系列中的第一部作品,雖然故事是描述一個C5等級的警探伊利亞·貝萊,在局長的軟言利誘下,必須跟他最討厭的外世界機器人機·丹尼爾·奧利瓦合作搭檔緝兇,但整個故事的背景,是人滿為患的人類世界,大家已經習慣劃地自限於看不見天空的鋼鐵都市中,每一個都市必須要由管理階層,制定每一個人的社會位階,再由這個位階決定你可以使用多少東西,可以吃什麼東西,有沒有個人的私有(洗澡)空間,吃著分配的酵母食物。還有個太空族的世界,這是由早先移民太空的先驅,組成的聯合世界。人類憎恨機器人,也害怕跟太空族接觸。這樣的世界環境 隱藏於謀殺案的推理緝凶過程中。

貝萊推理的基礎,是人類絕對不會跨出城市的藩籬,尤其是不可能在晚上走出城市,這個基礎奠基於「鋼穴」的世界上,雖然有點忽略了,希望人類回到舊世界生活方式這個組織的實力,因為這個組織的成員在這個故事中的勢力並不大,但也許這就是故意設定成這樣的,因為故事的結尾,太空族的成員已經了解到,這個組織的實力會漸漸地帶領人類往外拓展,也是就是原本太空族的初衷,希望能引導人類走向太空,這樣才有機會拯救人類。到最後這個偉大的目標已經掩蓋了局長失手殺人的事實,謀殺的事實反而不重要了,因為犧牲才會換來代價。

整個推理的過程是精彩的,從局長,到丹尼爾,潔西,又到丹尼爾,最後又回到安德比局長,就八十億的地球人口數量來看,登場的人物不多,故事的內容也多是貝萊自己在思考或是跟其他人物討論的過程。讀者其實就像是「名偵探科南」一樣,跟著主角一起解謎,但又比科南的情節踏實一些。

一看到作者是艾西莫夫的作品,總是不會多加考慮就買下來,這個科普大師,機器人學鼻祖的作品不會是踩到地雷的作品,就跟買小朋友的繪本一樣,選擇得獎作品採道地雷的機會就會減低很多,有沒有得獎,對讀著來說是一個很簡單的評價指標,但對作家來說,就是很辛苦的,用心寫出來的作品,作者本身都會給自己很高的評價,但卻不一定能受到讀著的青睞。我身為一個讀者,也沒有太多心情、金錢與時間,可以花在這麼多出版作品中。身為消費者是可以非常挑剔的,但轉換身份變成生產者的時候,就得面對現實市場的衝擊結果,不管是作品、產品或是服務項目都是一樣的。


鋼穴
鋼穴 / 保護自己還是封閉自己?
鋼穴--以撒‧艾西莫夫/著
鋼穴讀後感
推理科幻 《鋼穴》 - 艾西莫夫
鋼穴:以科幻為骨架的偵探小說

2008/9/20

歷史 + 科學 + 推理 + 記憶 + 搜尋 + 整合 + 耐心 = 艾西莫夫 Issac Asimov

艾西莫夫科普教室(上:The Roving Mind 跟隨大師遨遊知識殿堂、中:The Tyrannosaurus Prescription 暴龍處方、下:Past, Present And Future 過去、現在與未來)共三本,我現在看了兩本,我對艾西莫夫的印象,就如同葉李華在第三本的封面底部寫上的註腳:後世子孫將很難相信,在「前網路時代」的地球上,曾經出現過這麼一位血肉之軀的百科全書。

雖然艾西莫夫以科幻故事與科普文學聞名,這樣的成就,我認為是 歷史 + 科學 + 推理 + 記憶 + 搜尋 + 整合 + 耐心 的知識與能力交織出來的成就,要能寫出通俗的科普文章,而不是專業生硬的科學介紹,必須要有鑑往知來的基本能力,艾西莫夫對科學與人類發展的歷史,非常有研究,也能根據這些存放在他大腦記憶體的知識,動態地搜尋與整合出他所想要表達的意思,再加上「合乎常理」的推理能力,才能「有所本」地預測未來。

這樣全面的知識能力,就像他在第一本page 183頁「藝術與科學」這篇文章所說的:知識是不可分割的事物,一個人如果在某個方面變得更聰明,他們必然可以更容易在其他方面也變得更聰明,反過來說,當他們將知識分割,只專注於他們自己的領域,並蔑視或忽略他領域,他們便會變得較不聰明。真正的藝術家除了具有想像力外,還都相當理性,真正的科學家除了具有理性之外,還都相當具有想像力。我想以上這些理念,都是以他自己為例,推理出來的結論,真正的聰明是全方面的聰明(多元智能)。

正因為艾西莫夫是個古人,所以在他的年代,他能以他自己的推論,寫出許多對未來的預測文章,身在現代的我們,就能以逸待勞地檢視這些預測,也因為艾西莫夫的預言已經有很多都成真了,他作為一代大師當之無愧。已經成真的預測舉例如下:以磁浮的方式達到高速行進的運輸列車、垂直起降的飛機、全球化的公司、全盤索引編目的中央圖書館、更深層的電腦化、死亡率降低與出生率下降造成人口結構的老化、電子郵件與線上消費、個人化的資訊與廣告、無性繁殖、DNA重組工程、個人飛行器、高速通訊與視訊會議。尚未實現的例如:核融合取代污染的化石燃料作為下一代替代能源、互補的人腦與電腦、太空殖民地、月球旅行,我們就當作指引的方向,並期待未來的某一天真的會實現。

艾西莫夫雖然有沒有界線的想像力,但是他非常不喜歡搭乘飛機,也不常旅行,一個兩個小時車程的旅行,他自己就能當作是一次冒險,更特別的是,他自己說他從來不曾根據任何有關電腦的實際知識來進行論述,他對於機器一竅不通,甚至是一台新的文字處理機,就讓他掙扎好久,才讓他放棄最常使用的打字機。這些對他自己的描述文字,讓我們知道他的日常生活跟一般人沒有兩樣,他也是正常人過著一般的生活,也讓人更佩服這樣的狀態下,還能提出許多正確的預言。或許「從來不曾根據任何有關電腦的實際知識來進行論述」這句重要的註腳,正是他能跨越時代限制的主要原因。

另外有一篇說明科學與技術的文章,一般是以二分法區分科學與技術,科學是「基礎、純粹、理智、完美」,而技術是「應用、衍生、商用、拙劣」,但是他以歷史來說明科學與技術的共生關係,例如伽利略以許多不同長度單擺,檢驗了單擺定律,而惠更斯利用單擺定律,發明了第一座現代化時鐘,有了製作時鐘的技術,改進了天文學的研究,可以容易地為天體運行計時。科學與技術是相輔相成的,不應該視為兩種不同的東西。

特地說明這個概念,是要比對我們現今的教育體系,就是以科學與技術分類,來區分一般學院的理論教學,與技職體系的技術教學兩種教育體系,事實上我們知道,做研究必須要有實驗的技術能力,才能為理論做驗證,深耕技術也要有相當的理論認知,才能了解自己的技術瓶頸在哪裡。會說也要會做,才是真正的科技人。

2008/8/31

秋葉原@DEEP by 石田衣良

秋葉原,是類似光華商場的一個地方,但又比光華商場涵蓋的範圍更廣,它整合了所有的電器、零件、資訊與軟體,在這個地方生活的人,有很多都是些御宅族,這個故事的主角,個個都是怪人,但似乎也只有怪人,才有辦法創造出擁有人工智慧的搜尋引擎crook酷克。嚴格說來,這本小說並不是很好的作品,因為某些故事內容的銜接過程,有一點牽強,但我也能感受到作者所提供的一些巧思。

阿頁會口吃只能用電腦交談,但卻是這群人的首腦,阿欄是平面設計專家,但有潔癖,太鼓是音樂天才,但有個宿疾,就是可能在任何地方任何時間點,遇到週期性的光線或聲響時,突然當機去了另一個只有他的音樂的個人星球,小光是個格鬥專家,達摩是法律專家,泉虫是個駭客,除了小光之外,其他人都是御宅族的成員。

也就是這些人創造了酷克,酷克的前身,就是當初將他們連結在一起的結衣大姐的分身,也就是泉虫製作的人工智慧程式,但是遇到了數位資訊的中込威,由於他企業家的個性,原本希望吸納酷克為數資的版圖,但是遇上了開放搜尋的精神,吃了閉門羹,後來就直接用搶奪的方式,把所有成員的電腦跟數位資料在一次設計好的偷竊中全數偷走。

這六個夥伴,為了釋放酷克也就是結衣,設計了耶誕節的一次解放行動,成功地將結衣大姐連接上網際網路,讓他自由沉潛在網海之中。

為了提供小光的偶像網站一些特殊的工具,而製作出一個搜尋引擎,這個人工智慧搜尋引擎,一開始有四種人格,根據不同的人格就有不同的搜尋結果,這些人格就是要將酷克使用者的人格拼湊起來,以便達成最精確的搜尋結果,所以每一個人的搜尋都是個人化的,設計出人類的各種性格,才以這些性格為素材組合出使用者的個人化性格,這個想法很好。故事最後讓酷克跟結衣大姐結合起來,擁有了個人的意識,重回網海這個結局,還算不錯。

半澤老教授只在故事中途跟最後面有出現,這個角色似乎是太薄弱了,以他們一天的認識,就能讓教授在數資7樓幫助他們,我覺得很奇怪。小光的角色也似乎是為了最後一場數資大樓的侵入戰,才刻意設計出來的,因為她的格鬥技巧,讓侵入大樓的行動能順利地完成。達摩的法律專長,在整個故事裡面完全沒有派上用場。

搜尋引擎本身就是在搜尋網海中的資訊,他本來就應該跟網路有管道互相連結的,搜尋引擎也要跟使用者連結起來才有作用,因為他必須要刻劃出使用者的人格,所以他必須要有網路連結,並跟使用者有直接的接觸,但是解放行動的目的,卻是要解放酷克進入網海,這似乎有點說不通,其實只要等到數資的SCOPE(源自酷克)正式對外開放,酷克就自然能夠進行那一段幾分鐘的人工智慧進化,根本不需要這個解放行動。

2008/8/11

中央集權

北京奧運的開幕式,實實在在地讓人體驗到泱泱大國的態勢,節目項目以中華民族的千年歷史支撐,使用的表演人員數量非常地多,整齊的動作讓人想知道,究竟花了多少時間完成這些設計與排演,用了這麼多人力,讓人想知道,究竟每一個環節花了多少金錢,個人得到多少回饋,還是只有京奧的光榮,民族的光榮,個人的光榮?

中央集權的組織,上令下達的速度與執行力絕對是毋庸置疑的,只要主事者能正確地接收資訊,下達正確的指令,就因為中央集權,所以不需要太多討論與質疑,就能在短時間內,執行這些指令,完成工作。但每一個人都不能保證自己不會做出錯誤的判斷,每一個組織也不行,一旦發生錯誤,就因為中央集權,主事者也要有擔當地承受錯誤的後果,甚至是道歉。若要一意孤行,若反而造成了民意反噬,擋不過的也只有下台了事。

軟體其實也會見到中央集權的設計,最有名的MVC,View的面向與Model的資料多樣化,而最重要的Controller就可以作成中央集權的,單一的Front Controller,可以讓伺服器端以單一入口接收Client端的所有指令,再藉由分配處理的Command,派送執行細節與命令,讓負責某個特定項目的後端程式完成工作,在這樣的狀況下,controller當然得保證,自己不會有錯誤判斷,下達錯誤的指令的狀況,不然就得承受出錯的後果。

身在組織當中,每一個組織難免都有中央集權的影子在,這就是管理階層的存在與價值,管理階層得負責帶領整個團隊,朝向最有利的目標前進,就公司來說,當然是以營利為目的,管理階層就是要讓公司賺錢,再回饋給股東、員工(maybe)與自己,能有很多回饋的,就不需要談理想,因為大家賺錢都賺得很高興,沒能轉錢的,就只能談未來,要讓大家知道,在不久的將來,有可能會成功,這些努力,都是為了讓大家對工作有凝聚力與專注力,不會隨意的移動。

不管是怎麼樣的組織,管理就是在處理人的問題,處理政治的問題,體貼與尊重,能讓人與人之間的關係,在利益衝突之間,還能維持鏈結的關係不會破裂,再來是要上下一同凝聚出共識,就能發揮力量,突破難關。

燦爛登場 體現中國4大發明
張藝謀:開幕團隊演出100分
既悶又失望 大陸網友一片罵聲
開幕式
鳥巢設計師拒出席:中國太極權
鳥巢設計師的憤怒宣言
開幕表演 評價兩極

京奧/原住民歌舞表演驚豔 央視特別專訪高金素梅

2008/7/21

經濟自然學 by Robert H. Frank

經濟自然學是作者在教授經濟學的時候,要求學生撰寫的500字小論文,所集合起來的一本書,用意是希望學生能夠以最貼近生活的方式,來學習跟生活息息相關的經濟學,而不是只認識白紙黑字的成本-效益法則,或是供給與需求的圖表與法則。

因為大多數的經濟學,都是用學術的語言,假設的語氣,來描述一些虛無縹緲的經濟學基本理論,但偏偏經濟學是一種人文科學,經濟理論都是因為人類的經濟活動而產生的一種現象,如果不能夠在生活上,了解經濟學的基本理論,那麼學習經濟學,只不過是在書桌上多了一本教科書而已。

成本效益分析(Cost-Benefit Analysis)是為組織提供決策支持服務的一種平衡法。 所有正向項目(如現金流及其他無形收益)放在資產平衡表的一邊,而所有負向項目(如成本以及其他開支)放在資產平衡表的另一邊。哪一方在數量上超過另一方,則贏。這個解釋是從網路上隨機找到的,很繞口。

但在書本裡,將成本效益原則解釋為,我們根據某一件事,做了之後所獲得的額外利益是否高於額外付出的成本,來決定是否該做一件事。或許可以解釋地在簡單一點,成本效益原則,就是做了某一件事之後「有賺到」,就要去做。這個原則就能解釋,提款機為甚麼都有盲人點字按鈕,牛奶盒全都是方的沒有圓的,這些生活上就會遇到的現象。

供給與需求的法則,則能用來解釋PUB裡面免費的花生定價問題。PUB裡面水要收錢,但是花生卻是免費,原因在於免費供給花生,可能會間接影響酒類飲料的需求增加,但是水雖然成本很低,但是跟酒卻有代替性,如果水喝多了自然酒就會喝得少,PUB獲利會降低,因此在PUB都是將水也設定一個高價。

雖然我在這本書裡,看到了不少平常沒有注意的問題,但整體看來,跟經濟學理論的關係,並沒有讓我印象非常深刻,或許是因為每一篇都是短論文,都很獨立,讓我斷斷續續才看完這本書,這種情況有關係。雖然每一篇短文看起來都不錯,但集合在一本書裡,我就感受不出一本書的重點概念,因為瑣碎的資訊沒有辦法讓我印象深刻。

2008/6/28

賞鳥 學習認識小鳥

自從買了一本都市鳥類圖鑑後,就開始注意身邊的小鳥們,最近看到了很多以前從來沒注意的小鳥,準備添購望遠鏡,但還沒有想過要花大錢買攝影設備,我想就當作認識鳥類,看看就好。

2008/06/14 下午,台中下雨了,可能是下雨的關係,我在羅娃麵包對面看到大冠鷲從我面前展翅飛過去 然後停在旁邊的樹上,看到大冠鷲其實是很奇怪的,因為他們應該都在山裡面,怎麼會飛到市區,而且還停下來停在樹上,大冠鷲的特色就是翅膀張開時,會出現一條明顯的白線,真的很大一隻,一開始還以為是老鷹。

2008/06/25 早上,在高速公路的護欄上,看到兩隻黃頭鷺,黃頭鷺跟中白鷺在圖鑑上是很像的,唯一的差別應該是身高,印象中看到的黃頭鷺腳比較短。

2008/06/28 7:57 AM 早起,聽聞「咕嚕嚕」的聲音,很近連續好幾聲,原來是在窗戶外面的窗台上,站著一隻斑頸鳩,距離很近,由於頸部有明顯的黑底白點斑紋,所以一查就知道是斑頸鳩。

2008/6/16

殺人本能 by 喬瑟夫.芬德

這本書是商業周刊第一次推薦的一本小說,獲得了2007年美國驚悚小說獎(Thriller Award)年度最佳小說,故事本身並不會艱澀難懂,文字也都很淺顯,而且很直接地就在一開始,以及序言的部份,就知道主角傑森.史德曼的對手,是不期而遇的一個戰場殺手科特.山姆克,等於是從一開始就知道故事結尾是什麼了。

但這個故事為什麼還是那麼暢銷,首要原因當然是,作者取了一個好書名「殺人本能」,把弱肉強食的紅海職場,適者生存的不二法則,跟戰場結合在一起,在打仗的時候,不是把敵人殺死,就是被殺,每一個人都得練就一身好本領,取人性命是戰場殺手科特.山姆克最熟悉不過的事,在商場上,有了這個本領,當然是如虎添翼,檯面上的正道走不通,就只有求助於檯面下的殺手科特.山姆克。

傑森.史德曼享受了科特.山姆克替他以各種手段,解決了的許多難題,讓他完成了多項不可能的任務,但是當傑森了解,科特的所作所為後,他擔心眼前一切鮮美的果實,會一瞬間化為泡影,他得反擊,對抗殺手所佈下的天羅地網。

傑森.史德曼是個業務員,他所要達成的任務,就是把公司的產品賣掉,他們又都是接觸商業大戶,所以每一個案子都舉足輕重,數量龐大的顯示器只要簽下合約,就能替公司獲取不少利益,他們也都能在公司站穩腳步,傑森使用了許多業務手段要達成目的。

科特.山姆克是個非常重感情的人,他會為了傑森替他找到的工作,而為他赴湯蹈火,這其實很奇怪,只因為幫他找到工作,就可以回報這麼多事情,還可以替他殺人,況且科特.山姆克原本就在拖車廠工作,我實在想不出為甚麼,科特會對傑森這麼友善。

科特最後覺得他被傑森背叛,所以要以更激烈的手段對付傑森,但我不明白的是,既然科特在一開始這麼厲害,能夠殺人於無形,而且都沒有證據被抓到把柄,他何必要跟傑森這麼面對面地對決,最後竟然還會被傑森從網路上學到的炸彈技術,製作成公事包炸彈而被炸死,這真的跟科特一開始,這個天生的殺手形象,完全是兩回事。

但故事的人物性格就是要夠極端、有特色,才會被讀者永遠記住,這可能跟現實生活中的人,有點差別,因多數的人,都有三心二意的毛病。這本小說,的確是成功抓住了我的目光。

2008/6/4

創意的技術 by 麥可 邁查克

整本書講了許多成功的創意產生的經驗,配合這些經驗提供了許多方法,其目的都是希望每一個人能跳脫從小到大的邏輯與科學的思考訓練,運用這些方法,就能讓大腦以全新的方式思考問題,多面向地產生答案,進而達成創意的產出。

第一個部份,看問題的方法,要讓大家以不同的方式面對問題,(1) 6W: Who, What, Where, When, Why, How,(2) 魚骨圖 (3) 改變問題的文字 (4) 以肯定句陳述問題 (5) 轉換觀點或角色 (6) 持續發問 (7) 像孩子一樣思考。以不同的方式了解問題,重新描述問題,不讓自己落入習慣的思考模式中。

第二部份,將思考化為圖像,(1) 思維圖 (2) 蓮花圖 (3) 系統圖 (4) 立場分析,這些圖形的思考方式,跟圖像思考的書本所描述的不同,圖像思考是教導大家如何以圖像取代文字,來描述一件事情,一個報告,思考化為圖像,則是利用圖像來幫助思考,就像是圖像思考的目的,是讓觀看圖像的接收端,能以圖像更直接、簡單地刺激,更正確地貼近圖像所表達的深層意義。

第三部份,思考泉湧,要大家不批評、取得越多的想法、記下所有的ideas、不斷地擴充加強、讓潛意識醞釀問題產生新的思考。也可以用SCAMPER(Substitute, Combine, Adapt, Magnify/Modify, Put to other uses, Eliminate, Rearrange/Reverse)的方式來擴充想法。

第四、五部份,創新的組合與不相干的連結,說明創意不是無中生有,而是一種天外飛來的奇妙連結,他可以透過隨機選字、隨機選物、感官刺激,結合不同的問題、文字、想法、極端項目、多重觀點、不同領域,這些系統化的方式,完成創新的組合與連結。

第六部份,要大家翻轉想法與認知,翻轉視角,製造矛盾,逆向思考,希望能用完全相反地想法,幫助大家去看所有事物的另一面。

第七部份,跨領域的探索,這就跟結合不同領域的不相干的連結,有類似的說明。第八部份,意外的發現,又是重複的東西。

第九部份,合作力量大,教大家以會議的方式,集思廣益,分享大家的想法,擱置預設的觀點與評斷的聲音,以腦力激盪的方式,找出創意的所在。

2008/5/13

Alaways Think about Your Customers/Clients

最近上了一次有關「客戶服務」的課程,再加上又看了How To Design A Good API and Why it MattersKeynote)這一段教學,其實這都是在說明一件事情,就是不管發生什麼事情,都該要讓你的客戶高興。

身為軟體工程師,在設計與製作API的時候,就要一直思考一件事,因為API就是要讓其他的developer使用的,當然得致力於要讓API簡單、好用、不容易誤用、容易維護,而且一旦產出了錯誤的API,又已經交給客戶使用了,這個錯誤可能會影響好一陣子。但即使看過這個影片,要能身體力行也是很難,也痛苦的,回想去年曾經花了很久製作的ACL API,雖然這個API運作得不錯,也適當地簡化了ACL的開發,一直用到現在沒出問題,但其實這個API是很容易被誤用的,但短時間內就只能以code review的方式,盡量能在開發期間就發現錯誤。

在專案上,就是要面對所有stakeholders,這包含了sponsers, project team memebers與end users,在專案上的努力,最終都得要面對並滿足所有stakeholder的需求與期待,讓大家都高興。講很容易,但做起來就很難了,並不是有了技術一切都能解決的。

「客戶服務」那堂課給我最重要的概念,就是要以「利他」的方式,跟客戶/主管或是其他人溝通,也就是說,講話的時候與說明的角度,假裝自己就是客戶,提出的建議,以客戶的客戶為依歸,這樣客戶就比較容易接受你的建議與意見。例如這樣的說明:如果要修改這項功能,因為這個修改,我們必須同步檢查並修改其他五個地方,這個修改要花上一點時間,可能會影響到你的使用者上線測試的進度。或許我們先以另外一種比較快速能解決問題的方式處理,這樣專案比較能符合上線的時程。

上課很輕鬆,聽課很容易,看看教學影片也不難,但實際接到客戶抱怨電話的時候,如果遇到了蠻不講理的客戶,就會非常容易因為情緒的影響,而擦出火花,失去冷靜判斷的態度。這樣的錯誤即使是事後的道歉,可能都會造成了某一部份永不磨滅的嫌隙,引以為戒。

2008/5/2

MDM (Master Data Management) 主資料管理 的概念

Master Data (主檔資料) 是企業內部最主要的資料檔,例如客戶資料、產品資料、員工資料等等,為了改善資料品質與一致性需求,提昇Master Data被運用與維護的效率,所以需要一個MDM的total solution。以一個小企業來說,一開始導入系統,應該是視情況與當時的需要,購入某些特定功能,跟主要業務有關的資訊系統,接下來企業慢慢地成長,資訊系統增加,這些資訊系統之間的資料轉換與溝通問題,就會慢慢地浮現。

對所有的資訊系統來說,一開始要面對的就是帳號跟權限,所以員工帳號應該是符合Master Data條件又最常見的一種資料,MIS遇到越多系統就有越多帳號得要整合,要整合帳號,就會想到帳號同步與SSO的產品,但如果公司的規模不夠大,或是業主無視於帳號同步的需求與重要性,SSO會是非常難推行的一種產品。

MDM所要面對的資料,是企業內部跟業務有關的核心資料,雖然用起來可能會跟帳號同步的概念很像,但得要更一般化地將所有可能的狀況,都規劃到產品的功能上,然而產品的規模越大,能夠運用的企業就越少,因為他們並沒有足夠的資訊人員能量可以撐住整個MDM的solution維護。

SUN的Mural將 MDM 解釋成,Master Index Studio (index -> search)、Data Integrator (資料整合與收集) 、Data Quality、Data Mashup (展示與使用)、Data Migrator (轉移)這五個子專案。Microsoft的roadmap中,則是將MDM product codename稱為 Bulldog,但還沒看到整體的產品線,如何整合出一個完整的MDM solution,目前只有在Roadmap中舉例,他會以PerformancePoint, Dynamics, MS Office Excel, Office SharePoint Server整合出整套solution。

資訊產品如何能夠將產品的進入門檻降低,又能解決企業主關鍵的業務問題,就是成功的唯一要件。雖然SUN以開放程式碼的系統,作為產品的行銷策略,但對企業主來說,如果真的有這樣的需求,有個方便又好用的產品,又能讓資訊人員快速上手,才是重點。這個部份,相信未來最會包裝產品的微軟,會提出最厲害又簡便的軟體工具。

Master_Data_Management in wikipedia
The What, Why, and How of Master Data Management November 2006
微軟將進入主檔資料管理領域 2007/7/20
嶄新Teradata MDM 2.0方案問世,隨即贏獲首張客戶訂單 2008-03-26
美商甲骨文宣佈推出資料整合套裝軟體 三月 26, 2008
Sun Microsystems Announces Mural: Open Master Data Management
Mural - Open Data Management Community
MDM (CDI, Data Governance) Vendor Products
Master Data Management - Microsoft

2008/4/29

cursor bug in FF

當我們在使用yui的dialog的時候,卻意外發現一個奇怪的問題,只有在Firefox才會發生,就是dialog裡面的input的cursor,在dialog放在一個iframe網頁上面的時候,即時用滑鼠點了一下input,但是cursor還是不會出現,經google後發現,這是firefox的一個bug,而且沒有一個適當的解決辦法。

Cursor disappears in Firefox這篇文章建議以調整 overflow 的style解決,我試過了沒有用。Infamous Firefox cursor bug - Info and possible workaroundsCursor (caret) sometimes fails to appear in input text fields這邊有人建議以 position:fixed 還有 overflow:auto; position:absolute的方式解決,但是dialog的位置就沒辦法任意地拖動了,目前的結論還是無解。

群 der Schwarm

水是萬物之母,地球上有2/3的地方是水,有4/5的地方是深海,另外又只有平方公里的海底地殼,人類曾經考察過。以往的科幻作品,多是往太空發展,描述太空中的其他高等智慧生物,或是人類前往另一個星系發展,這部作品卻往海水發展,內容不但引述了具體的事證,再加上作者個人的想像,成就了這部特別的作品。

有部描述海底未知生物的電影叫「無底洞The AbyssThe Abyss/無底洞」,電影的內容細節我記不得了。另外有一部電影,記得比較清楚,是Dustin Hoffman、Samuel Jackson主演的Sphere,一個特別的圓球,讓他們因著幻想成真的東西,而互相殘殺。

海水裡的東西,對我們來說,未知遠大於已知,「群」並沒有從外星生物下手,而是很特別地,將演化分成兩條大異其趣的進程,一種是人類,一樣的DNA產生不同的細胞與功能,每一個人各自獨立,另一種是單細胞生物(Yrr),DNA雖然類似但不一樣,另外他們有辨識彼此的獨特方法,為了求生存,他們必須要透過女王的協調,讓大家團結在一起抵禦外侮,他們的目標也是要消滅人類。

故事一開始是從甲烷冰水合物講起,為了解決石油能源危機,人類尋找替代能源方案,最後找到了甲烷冰,但在挖掘的過程中,卻發現了許多蟲子,後來才知道這些蟲子,是為了利用甲烷冰水合物的噴發,要讓整個大陸棚下陷,另外在賞鯨的聖地上,卻發現有鯨魚群聚攻擊遊艇,另外就是餐廳裡面,因為龍蝦帶來了液態毒物,滲透進入了下水道,影響了整個城市。

為了解決問題,美國派黎找了團隊,研究這項問題,原本團隊的目的是要跟這些未知的生物接觸,希望能要求他們和平共處,但後來,卻是黎一廂情願,決定要以散佈病毒的方式,讓這些單細胞生物,互相傳染疾病。

作者薛慶創造的Yrr,一開始看起來非常地厲害,因為要求生存,會想各種特別的辦法對付人類,而且看起來都像是了解人類的行為後,所對應產生的報復方法,包括以虎鯨等鯨魚直接攻擊、海嘯、以龍蝦木馬屠城、讓甲烷冰噴發等等途徑,但在故事的後面,Yrr的思考模式,變成了類似蜜蜂的方法,大家都以女王的思考為依歸,有異樣的個體就會被其他個體消滅。

約翰遜與安納瓦克提出的方法,讓Yrr女王辨識到了一個說要跟他結合的敵人,讓他學會尊重一個獨立的個體,進而學會尊重另一種生命體,因為了解人類而提出有效攻擊人類的方法,又因為不了解人類,想要把人類消滅,似乎是有點衝突。

書本前面一大半的部份,主角們從一無所知,到無能為力的狀態,一直再想辦法了解Yrr,最後才能產生對策,這整個過程雖然敘述有點冗長,但卻是能讓人想要把結局看完的一本好書。

der Schwarm 群(下)
[閱讀筆記簿]《群》

CEPA的開放態度

撇開政治與民族問題不談,CEPA(Closer Economic Partnership Arrangement)代表著香港與大陸之間的經濟開放互動,2004年的CEPA,帶來香港民生經濟的榮景,這個議題的答案在四年後的今天看來,應該能給予正面的肯定。最近看了謝金河先生的評論,他認為台灣將會遵循著香港的模式,有一波經濟復甦的榮景,我認同他的說法,所以也買了一點點的股票。

我根本不是經濟方面的專家,也不想對政治有太多評論。但我可以看到的結論是,開放的態度,活絡了經濟,帶來了更大的商機。這不就是自由軟體一貫的理念嗎?對不同於微軟策略的軟體產品來說,自由開放的態度,的確能讓軟體活得更健康而且更有價值,這是很多想要以小博大的軟體產品策略。

以香港跟台灣這種彈丸之地,天然資源不豐的地點來說,對應於一個資源不豐厚的軟體開發團隊,或許兩者都應該以開放的態度,面對自己的商品,期望能帶來更大的經濟效益。為了賺錢,大家都是機會主義者,哪裡有機會,就會往哪裡鑽,錢就會往哪裡跑,除了營造一個吸金的環境外,還有別的方法嗎?

以下是網路上有關CEPA的文章,按照時間順序排列:

兩岸簽訂CEPA須有前題 2004/1/9
經濟回春看今年? 2004/2/28
面對國家第27集
CEPA對台灣的影響 2004/4/27
CEPA的影響
CEPA:香港與長三角合作更緊密 2004/1/15
香港專家:CEPA存有風險 且等於矮化台灣 2005/4/28
中國將進一步充實與香港CEPA內容 2006/6/20
台商掀起赴港上市熱潮 2007年4月號
唐英年:CEPA是內地與香港雙贏的安排 2007/6/22
CEPA推動香港經濟高速增長,今後重點是服務貿易 2007/6/25
從台灣看香港 蕭萬長:CEPA是歷史轉捩點 2007/6/26
CEPA加持,經濟回溫 香港,猛掏陸客荷包 2007/6/28
CEPA為香港創意工業帶來商機 2007/8/30
08年營建資產類股~受惠兩岸關係解凍,投資價值提升 2008
壓抑10年 金融股長期價值爆發 今周刊 2008/01/24 第579期
中國商務部摸底CEPA,香港商求國民待遇 2008/4/11

Tomcat 5.5.26 6.x的 cookie problem

最近原本程式在Tomcat 5.5.25可以運作正常的Cookie,最近在Tomcat 5.5.26上測試卻發現出了問題,原因在我們在Cookie的數值上,是以Base64編碼,然而base64的編碼結果會在最後面產生多個 = 字元,這個等號,在Tomcat 5.5.26取得cookie value時,被視為cookie規格中的等號。

舉例來說 cookie1=value= ,應該取到有個cookie1,數值為value=,但在Tomcat5.5.26上卻是,有個cookie1,數值為value。在Cookie V0的規格中,他告訴我們cookie裡面的資料必須要自己用URL style %XX 的方式編碼。

我懶得再用java.net.URLEncoder去轉換,直接replace所有的 = 為 $,取到cookie資料時再把 $ replace 成 = 就可以解決了。

至於 V1 的cookie,應該是不要用,相容性可能會有點問題。

New: Tomcat 5.5. 26 - cookie with colon in name is parsed incorrectly
Cookies behave differently between Tomcat 5.5.25 and Tomcat 5.5.26
Cookies are broken in 6.0.16?

2008/4/22

用支援UTF-8 BOM的Reader解決proxool設定檔UTF-8 with BOM的問題

在使用 proxool 的時候,如果用JAXPConfigurator來啟動proxool,通常會用 JAXPConfigurator.configure(new InputStreamReader(proxoolInputStream), false); 這種寫法,但是java.io.InputStreamReader在遇到UTF-8 with BOM的檔案編碼格式的設定檔時,就會產生問題。

在遇到BOM(byte-order mark)的時候,通常都是找個支援修改檔案編碼的Editor來處理,例如我們常用的Emeditor或是EditPlus(參考網站 BOM (Byte Order Mark) 的問題BOM BOM BOMUTF-8),我們的作法,原本就是採Emeditor來使用,但是程式交出去的時候,就常常會遇到客戶直接使用Windows預設的文字編輯器notepad來編輯proxool.xml設定檔的狀況,導致程式在啟動DB Connection Pool就會出問題。

ROME實作了com.sun.syndication.io.XmlReader這個類別,在文件一開始就提到,"It looks for the UTF-8 BOM first.",另外這個類別又是extend java.io.Reader,這就省事多了,因為JAXPConfigurator.configure正好是需要一個java.io.Reader,所以只要把 JAXPConfigurator.configure(new java.io.InputStreamReader(proxoolInputStream), false); 這種寫法,改為 JAXPConfigurator.configure(new com.sun.syndication.io.XmlReader(proxoolInputStream), false); 就可以讓proxool設定檔也相容於惱人的BOM問題。

不想使用ROME的話,也可以使用UnicodeReader and UnicodeInputStream提供的程式。

2008/4/3

延伸VMWare的硬碟

使用VMWare,作業系統裝完才發現硬碟不夠用了,RDPSoftware這個網站提供了Virtual DiskFactory,可以延伸VMWare一開始所配置的硬碟空間,在延伸實體硬碟大小後,執行該VM後就能看到硬碟多了未配置的空間,再安裝Partition Magic就能順利地放大硬碟空間大小,繼續工作。

2008/3/21

RequestDispatcher 在 weblogic 9.2 的問題

因為用了filter寫cookie登入,又因為用了RequestDispatcher作轉頁,又因為用了weblogic,從首頁進來的request,因為cookie登入,但cookie的資料因為別的原因錯誤了,本來寫清除cookie後,再用RequestDispatcher轉到首頁,出問題了,成了無窮迴圈。

這種寫法在Tomcat運作正常,Tomcat在我寫RequestDispatcher之後,並沒有再apply一次Cookie登入的filter,所以可以傳回首頁的網頁跟清除cookie的response,但是神奇的weblogic,在我forward到首頁時,又apply了一次cookie登入,哇,無窮迴圈出來了。

weblogic真的是神奇的ap server跟免費的就是不一樣,只好改用sendRedirect,強制把response送回到瀏覽器,這樣就能把cookie清掉,再讓瀏覽器取一次首頁,這就正常了。

經過這樣的事件,不知道還有沒有信心......

2008/3/14

miroko網路硬碟

同學當PM做的網路硬碟miroko,這種消耗頻寬的東西,還真是普通公司沒有辦法做的,現在他們正在舉辦50G抽獎活動,有興趣的人可以參加。

安裝client端軟體後,就能提供一些功能,例如檢視本機硬碟的資料,同步等幾個功能,功能列表在這裡。朋友之間可以互相分享網路硬碟資料,這個功能很方便,相信未來開放BT下載後,會成為消費頻寬最大的網站。

測試的過程中出現一些問題:
1. 加入好友的連結放在留言頁籤裡面,而且藏在右邊,這有點奇怪,應該預設把好友的目錄打開才對
2. 我的預設瀏覽器設定為IE,安裝了client端的軟體,用IE打開miroko時,可以偵測到軟體,但用FF打開miroko時,就測不到了
3. 我的IE一直開著在下載檔案,同時開FF上傳檔案,速度就有點奇怪,上傳的地方,有時會一直是0%,畫面一直開著,等一下才能上傳上去
4. 相簿的地方有點奇怪,產生相簿後,得點選開啟相簿,才能看到,右邊的相片預覽似乎是沒有作用

在公司的下載速度還蠻快的,一個700MB檔案,流量為170KB~200KB,不過這可能是因為使用者還不多的關係,相信以後頻寬與速度配合上BT,會是這個服務最大的賣點,也是最重要的議題。

2008/3/9

MountainView第五天

今天一早很順利地坐上SuperShuttle,司機一聽到我們講華語,就問說你們也是中國人阿!他是個大陸人來自湖南,在網路上訂車很方便又不會被坑,真的蠻不錯的。

到了SFO,在UA check in的時候,辦事員突然又說我的行李有問題,我心想入關時一句話講錯,影響這麼大,後來他才又說,這個已經cancel了,才鬆了一口氣,順利劃位準備出關。

一堆人準備要過行李檢查這一關,身上所有東西都得拿出來,鞋子也得脫掉,一到我們的行李時,突然他又停下來講了一句話,我嚇了一跳,他又講了一次,這時才聽懂他是在問,是不是有帶laptop,我回答說有,他把我的行李拿出來,說laptop拿到外面另一個盒子單獨檢查。

行李沒問題了,人過去的時候,我下意識把手舉了起來,那個官員笑了笑講了一句,"Put your hands down. You're not under the arrest."。

過了檢查站,就開始逛商品店,買些東西回家,然後就上了飛機。回程的時候,飛機的航道得往北繞道沿著蘇聯,通過日本才能到台灣,時間得花13個小時,比去的時候多了3小時。除了時間比較久,還有一件最麻煩的事,吃完第一餐牛肉後,我就覺得肚子怪怪的,開始拉肚子了,快到台灣的第二餐更糟糕,是吃奇怪的義大利麵,不吃肚子會餓,只好還是吃下去。這次的行程就是以拉肚子為終點。

第三天晚上就透過email跟對方要求要有某個網路群組的授權,不過一直到現在都還沒有收到回信,不知道是不是第四天的面談講得不對,還是有什麼特別的狀況,希望不是白白去這一趟。

2008/3/7

MountainView第四天

一大早才吃完早餐,就看到計程車怎麼開來了,原來昨天叫同學幫忙打電話預約計程車的時間,我們說是 Seven Fifty,結果他聽成 Seven Fifteen。只好叫他再等十分鐘,我們提早出門。

跟昨天一樣,課程的行程很準時地在8:30開始了,今天的主題還算平易近人,都是在講API。還有一些新功能的說明,主持人一直跟大家說,某些資訊是機密,還沒release,要大家不能寫上blog。中午的食物口味還是一樣的怪,快受不了了,吃台灣泡麵還比吃這個好。不過這裡的果汁跟水,大都很好喝,隨便你怎麼喝都沒關係。

下午就精彩了,上課上到一半,這邊的sales跑來問我們要不要一起聊一下,這我就頭大了,我們三個人一起講了大概20分鐘,我雖然有時候還結結巴巴的,但大致上還能把要講的意思講出來,真是謝天謝地,希望對方不要誤解我的意思。講的時候我偶爾還能幽默一下,希望他能接受講公事時還有這種幽默,合作不要出問題。

我也在一個session中試圖問了一個資料授權的問題,因為這是我先前沒有注意到的功能,雖然我沒問,大概也知道答案是什麼,就是想嘗試問問看,不然這幾天的課程上,大家都不會理我們,問問題雖然很順利,不過我答案就聽不大懂他在講什麼,只好含糊的點頭,就這樣結束。

後來坐隔壁的泰國人突然問我中國字的問題,他說他們的泰文有44個拼音字,類似英文,但一串字的意思會因為斷句的方式不同,而意思就不一樣,他問我中文字的搜尋會不會有問題,因為泰文在搜尋的時候,word segmentation是有問題的。

回飯店途中,經過一家WHOLE FOOD超市,進去買了幾包巧克力準備帶給同事,還有兩罐帶給老人家當禮物的沙拉醬(不知道要買什麼了),跟晚餐要吃的派,還有一盒有點大的小蕃茄,派還不錯吃,小蕃茄雖然大了一點,不過味道吃起來跟在台灣的差不多。

問飯店櫃臺能不能幫我們叫車去機場,結果他竟然跟我們說,一個人要85元,比來的時候還誇張,只好回房間自己打電話給Super Shuttle, 原本已經準備好要怎麼講了,一打過去竟然是語音,叫我們自己上網訂車,用信用卡訂了車,兩個人坐加上小費只要47元,這也差太多了吧!價錢差這麼多,希望明天不要出包,可以順利坐車到SFO。

總算解決,不管合作的結果如何,明天要回家了。

2008/3/6

MountainView第三天

一早4:00就醒過來,有點睡不著的感覺,後來才知道可能是時差的關係,還好再撐一天,就要回家了。

昨天晚上試著請飯店櫃臺人員幫忙叫計程車,這裡的計程車跟台灣的差不多,開車的速度超快,連開上高速公路後,還能利用交流道超車,跟平常的馬路上的車行速度差別超大。坐計程車果然輕鬆多了,10分鐘就能到目的地。

今天也是一整天密集的課程,整個房間都是講英語的,根本不知道怎麼問問題,只有把聽得懂得、投影片上該記的都記一記。今天只有一個session是講gears,他帶了幾個網頁上都看得到的sample,而且當場trace程式碼,講得飛快,感覺得出來是交差了事而已,本來就不需要大費周章把大家叫來的,也許有些人覺得出國可以玩,但我覺得出國是很麻煩的。

也是昨天才知道,研所同學從紐約來到Fremont,他說這就在Mountain View附近,所以要他下課時來載我們去吃飯,他帶我們到Castro Street上一家西班牙菜餐廳,吃西班牙海鮮飯,加上兩道菜,吃起來還可以,但飯有點硬,這裡的消費水準真的很高。

現在已經凌晨一點了,應該要強迫自己去睡一下,希望明天講API的課程能平易近人一點。但似乎很難,整個房間都是英語語系的,誰理你!

2008/3/5

MountainView第二天

一早吃完早餐,就準備要出發前去上課,因為今天的時間還蠻充裕的,還是用公車解決交通問題,這裡的公車除了22號車子很多,而且很特別的是兩截的巴士之外,要轉換的40號公車,就很難等,30分鐘才有一班車。到了目的地,果然是很荒涼的地方,旁邊一大片空曠的草地。

一開始我們找錯地方,到了40號Building,在lobby問了一下才知道我們走錯地方了,櫃臺小姐還熱心的問,你們把車停在哪裡?我們坐公車來的,Oh,那你們走路過去大概要走10分鐘。這裡很奇怪的是,Lobby的位置都不是面對馬路,從那一區建築物中走出來的時候,還驚動警衛過來關心,到底你們在這裡幹嘛。

到了1501號Building,我們是最早到的,一度以為不會只有我們參加吧!只好在lobby等了好一陣子,後來才陸續有其他人進來。Lobby很特別的,都有一台投影機,一直把搜尋引擎的關鍵字,用類似console mode的方式列印在畫面上,上頭有英文、日文,偶爾也會看到簡體跟繁體中文。在裡面我是不敢照相的,因為有攝影機對著我們,事實上,後來也知道,裡面是禁止照相的,這當然,因為是商業機密嘛。在lobby都有一台按摩機,沒事就有員工上去按摩一下,building 40還有一個員工,一邊按摩一邊拿NB敲敲打打。

主持人開場沒多久,就帶大家去吃不用錢的中餐,隨便你吃,但是我吃起來覺得很怪,那個土耳其口味的東西,有很怪的香料味道,水、果汁、點心也是隨便你吃,但我沒吃多少東西。

今天上了一些tutorial,還有講到security的部分,他們是被併購的Postini,他們目標是面對Open Mail Server,並不限定哪個特別的Mail Server,聽到最後,就是累,因為全場都是英文來英文去的,雖然還有6、7成聽得懂,但聽起來很辛苦。

很快的結束半天課程,還有明後天要奮戰無聊的課程內容跟英文轟炸,希望能趕快回家。回程的時候,轉車時看到Wallmart,到裡面買了幾包上頭都是英文字的東東,要騙騙小朋友。然後就是簡單的Subway晚餐,回飯店休息了。

今天認識了兩個來自泰國tangerine的人,一個是Watt職位是architect,另一個就忘了,黃種人只有我們四個人。

2008/3/4

MountainView第一天

MountainView第一天交通旅遊日,明天才開始主題,重點在於看懂地圖跟問出答案,還得從下飛機開始,就一直不睡覺直到現在,現在已經是舊金山的晚上。

首先一到舊金山國際機場,我就因為回答帶了一包餅乾,讓我們得通過行李的X-Ray檢查,還好沒有被要求打開行李箱,不過我有時會突然不知道用英文怎麼講,突然講話結結巴巴的。本來就是另一個語言,又不常使用,當然難免有用得不好的狀況發生,遇到受不了的人,聽不懂就算了,反正我只是問個事情而已,大不了再找下一個問。

出了機場,就坐上坑人的藍色Super Shuttle,途中看到了幾家公司,不過都沒照起來,包括了Oracle、Salesforce.com,車子繞阿繞,到了之後,我們得一人給他30元,還跟我們要小費5元。車子在馬路上,常常會走走就突然停下來,尤其是沒有紅路燈的十字路口,只要看到STOP指示標誌就得把車完全停住,才能再繼續往前走。

到了Hilton Garden Inn飯店已經中午,行李放好後就馬上出門,先到了一家小超商買了水跟一包餅乾,再來就開始一連串的問路跟坐車的過程,先坐了22公車到Palo Alto Transfer Center,再來就換成Caltrain坐往舊金山市,到了那邊,走路到Cable Car Barn總站,然後坐上Cable Car到漁人碼頭,晃了一下吃了點東西,就準備回程了。回程先搭Cable Car回總站,然後坐BART捷運地鐵到Millbrae,再換Caltrain回到Palo Alto,然後坐公車回Hilton Garden Inn。

整個路程換來換去,一邊看地圖一邊問人,也搞清楚舊金山的交通設備有哪些,但市區內的交通,還沒有很瞭解,輕軌電車應該是跟Cable Car不一樣的吧?

2008/3/2

商務旅行頭一遭

才剛上完PMP的課程,明天就要飛去美國了,已經五年的時間沒有出國了,出國要準備的一些瑣碎事情大都是主管處理的,包括訂機票,跑簽呈,選飯店,處理交通工具等等問題,不過他跟我一樣,這是第一次商務旅行。

辦護照還好,但得跑兩趟才能拿到。最麻煩的就是得親自到AIT辦理簽證,雖然約的時間是8:00AM,七點半一到門口,排隊的人還是超多,有好幾個關卡得過,每個都得排隊,一開始是繳資料處理費的收據,然後繳驗文件資料,印兩手及大拇指的指紋,最後是面試。

面試的時候,前頭有一個女生,被官員說"You are not qualified....",後面就聽不懂了,我們兩個人一起面試的,蠻奇怪的,官員只問了我們兩個問題,「你們公司有幾個人?」「100個」「你是碩士嗎?」「我是碩士」講中文的,然後就OK了,我們離開時,旁邊那一對父女,還一直在被問東問西的,「你去那裡做什麼?」「你一個月賺多少錢?」...

換了美金,印了Montain View當地的地圖,帶了字典跟一堆衣服,準備明天要出門了。

2008/2/4

鋼之鍊金術士 - 物質的等價交換,但「何謂等價?」

「人不付出犧牲,便得不到任何回報;如果要得到什麼,就必須付出同等代價。這就是鍊金術的基本原則──等價交換。當時我們深信這就是世界的真理。」身在資本主義的社會中,我們明白要得到金錢或是地位,相對就要付出一些代價,有些人付出健康,有人付出家庭生活,但付出都出於自願。

艾德華為了弟弟阿爾馮斯的靈魂失去了右手,但他在跟真理之門交易的時候,他並不知道,跟阿爾的靈魂等價的東西到底是什麼,因此,「等價」對象的判斷與決定,是由提供被要求交換的真理之門所認定的物品,當時真理之門認定,阿爾的靈魂與艾德的右手等價,才讓這等價交換機制發生。

在許多時候,「等價」並不是由提出要交換的人來決定的,而是由提供交換物品的人來決定的。因為我有某個物品,你想要取得,你必須要拿到一個我認為與這個物品等價的東西來交換,這樣的邏輯是合理的。所以在「等價交換」的機制下,有需求的人,永遠得受制於提供交換物品的人。

在動畫裡展現的「鍊金術」中,很奇怪地並沒有完全依照等價交換的理論,例如,艾德可以沒來由地,隨時把自己的右手鍊成一把劍,他確實用了鍊金術,但他拿了什麼去交換,看來是沒有,如果真的硬要解釋,只能說成鍊金術士設法將門的另一邊倫敦,這個平行世界戰爭時所犧牲的人的靈魂能量,拿出來利用,作為被等價交換的物品。

這種說法或許是說得通的,因為透過犧牲許多活人材料製作而成的賢者之石,等於是在石頭裡面預先準備了許多靈魂能量,作為交換的物品,讓鍊金術士能夠不犧牲自己任何的等價物品,而直接拿賢者之石裡的靈魂能量,「無價」交換他所需要的物品。人造人(Homunculus)也可說透過了賢者之石的半成品,利用這裡面的能量,「無價」地換得他所想要的人類形體。

能量在被使用與傳遞時,一定會有耗損,這個部份在這部動畫裡,也很清楚地呈現出來了。包括霍恩海姆與但丁多次的靈魂轉換所造成的靈魂衰減,使用了賢者之石,就會造成賢者之石的耗損。

在這樣的思考下,鋼之鍊金術士真的是一部劇本架構理論堅實的作品,值得我們用心欣賞與了解。

鋼之煉金術士 Wiki
鋼之煉金術師的鍊成陣圖
動漫閒談::關於鋼之煉金術士 (Full Metal Alchemist) 的等價交換法則
Fullmetal Alchemist 鋼之煉金術士
鋼之煉金術士的動畫結局
鋼之煉金術師:蛇杖圖騰的由來
鋼之煉金術士

2008/1/25

經典的動畫需要好劇本,成功的網站需要好題材

最近開始在看鋼之鍊金術士,故事的設定背景,就是「等價交換」,也就是這句經典對白「人不付出犠牲,就無法得到任何回報。如果想要得到什麼,就必須付出同等的代價。那就是鍊金術中所說的等價交換。」也就是這樣一句深刻的對白,反應了整個故事的主旨,造就了這部經典的動畫。

網路服務也是一樣,每一個特別的網路服務通常都會有個核心的概念,例如Flickr就是相簿,Google就是搜尋等等。這個核心的概念,就等於專業的服務,在深耕這個服務概念之後,就造就了一個成功的網路服務網站。成功的網路服務,都能用一句簡單的話描述它。

上週末看到電視訪問群聯潘健成總經理(參考文章:創業成功因素),討論的主題是創業,主持人問他一個問題,群聯未來會不會走向建立品牌,他回答群聯的專業是在IC設計,未來還是focus在這個專業上,但希望未來能領導規格。設計是他們的核心價值。

雖然我們腦袋裡面印象最深刻的,是某個動畫的故事內容,是某個網站的核心功能,是某個人的專業知識,是某家公司的核心技術,但也不能忽略,要實現一部完美的動畫劇本,得有專業的動畫媒體製作團隊與技術,要實現一個特殊的網路服務,得要有專業工程師的協助。

專業力、執行力、抗壓力、努力...,成功真的不是從天上掉下來的。