May, 2007 > 所有文章列表

Google gears 與 flex/apollo 的簡單比較

In General, flex   May 31, 2007 - 4:53 pm

最近每天早上起床都很歡樂,總是有新玩具或大消息出現,今天的新聞是 google 推出 off-line solution - Google Gears.

基本上這玩意的目地只有一個,就是讓 html/js 寫成的 web app 可以在離線執行,它的內容物也很簡單,就三個:

-database
-local server
-worker pool

其中 database 採用 SQLite,是用來在離線時儲存資料,等下次連線後再同步回server。

local server 是用來 cache 網頁資料,例如 google reader 裏用到的圖片、js檔等,這樣當離線狀態user才能開的起來。

worker pool 則是比較有趣的概念,就如其名所表示,它們是用來在背景裏做苦工的,主要目地是偷偷將離線時變動的資料批次傳回server去,但由於它是在背景執行,因此不會拖慢 browser,讓user苦等。

在官網站中最值得一看的就是 architecture 這頁,而其中最俱代表性的架構圖,呃,就是本文最上面那張,看懂那張圖,你就瞭 google gears 想玩什麼東西了。

很巧的是,最近兩個星期由於工作需要,我們也正好在大量的 survey occasionally-connected application (其實跟 google gears 講的 off-line app指的是一樣的東西)的技術,包含實作方式與patterns等,也找了無數高手長輩們請教,所以今天看到google gears 真是難免會心一笑,覺得倍感親切啊。

下午花了幾個小時把所有範例跟文件看了一遍,還動手把內附的sample app - gearpad 裝起來玩了一下並且 trace 了大部份的 js code,目前得到的結論如下

-這個概念很有趣,實作的手法也很大膽,但要user另外下載安裝程式恐怕接受度不高

-文件內容過於簡單,off-line app 要處理的事遠比想像中複雜(依 app用途、屬性、需要功能而不同),絕不像文件中那樣輕描淡寫就可解決,所以它的 gotcha 會在開發的中後期才出現,到時才是精彩的部份

-google 此舉很明顯就是在為自家一狗票 app 鋪路,例如現在 reader 已經有離線版,將來 docs, spreads 與 ppt 等軟體必然會支援,這個企圖應該很明顯就可看穿

-它的成敗取決於下列兩點
1、user的安裝率(目前在 firefox 上的安裝經驗實在很糟,無誠勿試啊)
2、developer 的支持度,如果有很多人夠熱心願意用 ajax 寫應用程式,它就有可能活下去(但真的有很多人想用 html/js 來寫一票應用程式?)

-附帶一提,用 js 寫 app 實在是很苦啊,看者那一堆 js code 再想想還要為不同os/browser 寫多個版本,實在是,難怪有人想改行賣雞排…

至於 gears 與 flex/apollo 的比較(或講成swf 優於 html 的好處也行),這裏簡單列一下隨手想到的

-不用 LocalServer 來處理 html/js/image 等東西

因為所有 app 需要的 resource 都可embed在swf裏或預先下載

-不用 Worker Pool,因為 flash player 執行速度快,本來就沒有 browser 被拖慢的問題

因此當然也就不需要user另外裝軟體(當然 flash player 或 apollo runtime 至少要有)

-swf coding 複雜度較 ajax 低,平台相容度高,且可兼俱影音等

這裏主要看的是 GUI programming 的難度等,眾所皆知用 ajax 寫大型app複雜度難以估計(不論你用什麼 UI framework 都一樣,更別提跨平台/browser),而 flex 開箱就內建了數十種 UI components 使用上較方便

比較有趣的是,從新聞報導裏得知這是一個 open source project,參與者有 Adobe, Mozilla 等多個企業,沒錯,是 Adobe,大家會覺得比較奇怪的是,原本 adobe不是一心打算用 Apollo 吃掉 desktop 與 off-line market嗎?怎麼會跑去跟 google 合作(難不成真的是銘謝谷哥在前面擋子彈之恩?) 這個問題在gears 的 group 討論區裏也有被提起。

我的想法是,這一點也不奇怪啊,google gears 跟 apollo 其實不算完全的競爭對手,反到是 flex/apollo 可以借用 gears 的部份功能,例如透過 html wrapper 裏的 javascript 去呼叫 gears, datastore 存取db與localserver,這樣app還是可以用 swf 做,但local persistence 的事就交給 google gears,必要時,也可以叫 google gear 幫忙 cache 些東西,所以看起來是有利無害的。

所以簡單講,外行看熱鬧,內行看門道,google gears 本身不是很新奇的玩意,但仔細看它如何處理 off-line app 的 work flow 則是比較有價值的部份。

comments(3) | by admin

很殺的 google map 新功能 street view

In General   May 30, 2007 - 9:54 am

今早 R長輩傳來上面這個鏈結,原來是 google map 又多了新功能,這次是 street view, 可以直接看到該門號附近的街道圖。

稍微玩了一下後心得只有一個:真是天殺的無敵方便好用啊~Orz Orz Orz <-- 僅以三個Orz 表達對此功能的無限敬佩。

更有趣的是, street view 那塊是用 flash 做的,google長久以來一直不是 flash的重度愛用者,在它所有的服務中,大概只有 finance 跟 video 是自已用flash寫的,其它像 analytics 是買來的服務,所以這次的舉動還真人嚇一跳,最重要的是,它還寫的很不錯,下載速度快,實用性100分,真的是很讚的idea啊。

1 comment | by admin

Write once, use anywhere again ?

In General   May 28, 2007 - 9:26 pm

Lina VM

它想做的事很簡單,讓user 寫的程式可以同時在 win/mac/linux 上執行,做法也是用類似 vm 的架構,只是這個 vm 裏面跑的是 linux kernel,GUI部份看起來是用 GTK/QT (所以寫起來應該很苦 XD)。

Lina 下載大小約 15mb, 解壓後 40mb, 這是過去四年來由2-5個工程師共同開發的結果。

目前看起來工程耗大但理想可敬,只是有點時不我予了。

1 comment | by admin

上進的詐騙電話 XD

In General   May 22, 2007 - 10:45 am

鈴鈴鈴,詐騙電話又來了。

台灣詐騙電話多不是新聞,如果你沒接過才是 XD

從早期的信用卡被盜刷、電話費沒繳要停話到後期的你兒子/女兒被綁假打來大聲喊媽跟地方法院傳噢未到請按9轉總機,零零總總數百起手法我想這是過去幾年台灣人的共同記憶…

過去我一直為這些詐騙從業人員感到憂心的一點就是他/她們產業升級速度太慢,搞了幾年還是一樣的老梗,通常有下列幾個手法就會立即被識破,結果電話一被掛就浪費一次 call out 成本(這包含浪費的時間、層層電話轉接費、購買名單費用、人員訓練/再教育成本)

-大陸口音(99%會立即被掛)
-有問題請按 9
-媽,我被綁假了,快救我(但我說喂的時後明明是男聲啊,而且我只有貓女兒如果她會說話我早就帶她去世界巡迴表演不會在這裏寫blog了)

但昨天,家人逛街時接到一通詐騙電話,聽完後讓我悲喜交加,因為這通電話代表者廣大的詐騙從業人員裏還是有肯上進,願意投入心力時間不停從事研發的人,事情的經過大致是這樣的(詳細的手法請看延伸閱讀出那些從google 找出來的苦主自白):

家人在 Y! 拍上買了個東西,轉帳匯了錢也拿到貨一切ok,結果晚上突然接到一通自稱客服人員打來的電話,說是轉帳過程中發生錯誤,結果變成是分期付款,例如本來買500元的東西,就會變成連扣12個月500元,請問是否要辦理終止分期付款,如果要,噹噹噹,請就近找家郵局辦理,而且一定要在午夜12點前完成,因為會計師快下班了。

笑點:
-最好會計師會等客人到晚上十二點(身價三億等你一個小毛頭到半夜十二點只為了一筆500元的交易?他不用回家相妻教子做。家。事?)

-約定/非約定帳號可設定分期付款還可以直接在atm取消分期?郵局是你家開的?

這通電話有意思的地方在於它包裝的很好(well-rounded scam ?),完全避開了幾個易被識破的老梗,例如:

-換籍口:網拍轉帳錯誤連續扣款而不是電話費、信用卡等老套
-換地點:一開始只說去郵局,但不提要找atm
-換方式:到了郵局後還是要找atm,但教人使用英文介面
-換對象:一個裝成客服人員,另一個扮會計師
-換口音:不是大陸人而是正港的台灣人口音
-換時間:打來的時間通常在晚上五點半郵局下班後,但營造只能在午夜12點前完成手續的急迫假象

這通電話最大的特色在於:客服人員一打來就可以說出你的姓名、購買產品、時間、價錢與轉帳,因為有這些資料,立刻增加不少身份上的正統性,一旦場子開了後面要跑下去就容易了。

當然,打來我家人的這通最後下場可想而知(其實第三次打來時本來想說詐騙不成仁義在,既然打來了大家就聊聊針對產業現況交換點意見順便我也可以做個田野調查,可惜她另有要務就勿勿掛斷了),但事後分析,我覺得整件事奇怪的地方在於:

為何騙方可以說出買家的詳細資料(購買日期、購買品項、帳號後四碼)?

原先我以為是賣家自已流出去的(不論是遇到不肖賣家或他/她的電腦被入侵或玩 p2p 白目到把整個hd都分享或是Y拍帳號被盜等等)

但上google找了一下後發現,這是全面性的問題,也就是有非常多人(不特定買家與賣家)都遇到這個情況,因此幾乎可推定洩密源層次更高,不是從單一買家取得資料,而是有更靠近資料源頭的管道,這時只能開始懷疑是不是直接從網站或db撈的資料?

如果是的話,那問題就很嚴重了,因為這代表只要有在Y拍上交易過的人,個人資料就可能已外流(當然這真的也不是什麼了不起的大事,數年前台灣就破獲過詐騙集團手上持有全台灣人口資料的光碟,裏面戶籍資料一清二楚,只是這次詐騙之餘還可以順便做消費者行為調查?預先為你還沒買的東西騙一下?),而為何這種事在發生這麼多次後,仍然沒辦法被防止?資料是如何流出去的?商家有沒有做什麼補救處理?總不能也像丁丁大站般一皮天下無難事吧?更多的質疑請看這篇#41

至於有沒有什麼方法可以稍微保謢一下呢?我的做法是:

-打來的電話只要提到:去銀行/郵局並要找atm,立刻掛
-只面交:一手交錢 一手交貨
-儘量減少透露個人資料(姓名、帳戶、卡號)
-帳戶分離,準備一個小額戶頭只放數萬元專做網路交易、轉帳,減少損害
-white list: 就跟防火牆的設定原理一樣,不要用 black list 而用 white list,也就是除非特別允許,否所有的通訊都切斷,當接到陌生電話,尤其跟交易或金錢有關的,一律先列為詐騙電話不處理,真正重要的事通常會以許多其它的方式再回到你身邊(例如雙掛號郵件)


延伸閱賣
苦主現身說法
google 上苦主聯誼會

comments(10) | by admin

Alan爺爺又來了 - About Face 3 !

In General   May 18, 2007 - 5:18 pm

I
第一本(1995)

II
第二本(2003)

III
最新的一本(2007)

VB 之父 Alan Cooper 爺爺又回來了,這次帶來 About Face 3。

大學時期第一次看他的 “The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity” 就獲益良多,其中 “persona” 的概念一直到今天做 prototype 時都還派的上用場,更別說 paper prototyping 與軟體產品的企畫概念技巧,在後來的十幾年中,大概只有 Joel 的一些論點可能提供更多的幫助。

根據網站上的介紹,這次的版本著重於 RIA, web 2.0 式的網站與產品,果然是很跟的上時代潮流,看來該是跑趟天龍書局的時後了(只是 amazon 原價$45 但折扣後變 $29.7,最好天龍也很有良心啊~)。

可惜的是在 amazon 上有人提到出版商用了只比報紙高一級的紙質印刷,然後圖案全是黑白,感覺很廉價啊,怎麼不弄個”About 鐵の Face III” 啊~

comments(3) | by admin

Previous Posts

mobile phone