June, 2007 > 所有文章列表

RIA 的三大教派

In General, flex   June 21, 2007 - 12:06 pm

嘖嘖嘖,曾幾何時,當年沒啥人知曉的 RIA 不但己成為主流,而且還可以分成三大派了啊~

原文

簡單摘要如下

Browserism
is the belief that the web browser (or comparable page-centric markup-orientated HTTP-bound middleware platform) is the future of end user facing software; a belief solely based on observation that the web is currently the predominant tool for accessing the internet.

Neo-Desktopism
is the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac. The goal of Neo-Desktopism is to evolve traditional desktop application technologies (for Java, this would be Swing and AWT primarily, although also includes the JRE itself) to a point where they can float free of a physical local client installation, deploying on demand just like web pages.

Pragmatic Neo-Desktopism
is the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac, but we’d all get fired if we admitted that to our bosses.

基本上這樣的分類法跟之前大家的觀念有點差距。

在之前的分類裏,RIA都是 based-on browsers,不論 ajax, flash, silverlight 都一樣,因此爭論的主要是那種技術或平台比較好(好的定義包含技術難度、開發成本、使用者介面與易用度等)。

但在這篇文章裏,它則是從『程式執行環境』這個角度來分類,因此可以分成”在browser裏”、”在desktop上”與”可同時在 desktop與browser” 三種。

然後在這三大類之下,就可以收納幾十種檯面上下不同的技術與平台。

其實畫地圖這種事本來就是視野/角度的問題,不同的人從不同的方向看下去就會畫出不一樣的東西來,因此這篇文章仍然是頗有參考價值。

一個最簡單的用途就是可以拿來當作量表,評估目前幾個較紅的 RIA 技術,看它們在這些條件下,未來生存的機率與發展前景,我想 Adobe 跟 M$ 大概手上早有一份更完整的版本每日按三餐拜讀吧 XD

後記:
寫完突然想到,既然有教派,將來是不是就會有那種武林大會,各路人馬抱者laptop上台示範六分鐘護一生,呃,六分鐘開發blog之類的祕技?然後旁邊會有基本教義派小小聲說用 C 寫程式才是真王道啊~

1 comment | by admin

Adobe Digital Editions – 另一個 Flex 應用程式

In flex   June 20, 2007 - 8:35 pm

DigitalEditions 是 Adobe 昨天剛推出的電子書閱讀軟體,之前它已在 labs.adobe.com 上 beta 了約九個月。

巧合的是,昨天才剛寫過一篇關於 adobe 新策略的文章,今天就看到另一個證明。

DigitalEditions 幾個值得特別注意的地方是:

-它是用 flex 2 寫成,但整個 UI 設計與配置都儘量與一般 win/mac 風格相似,尤其是大部份 UI control (例如 button, dropdowns等),這裏面代表或許代表著 adobe 正一步步試圖轉型用 flex 來開發以往必需要用 C++ 撰寫的程式。

-DigitalEditions 總大小約3mb,但裏面卻包了三樣東西

Flash Player + PDF reader + Flex APP

想想看平常一個 Acrobat Reader 至少就要7-10mb,Flash Player 9至少也要 1mb,但為何這個 DigitalEditions 卻可以只佔 3mb 呢?

-DigitalEditions 的安裝過程異常簡單

有興趣的人可以連到下載頁面試試,點了下載後它會出現一個安裝畫面,然後立即 inline 下載並安裝完畢,整個過程約一分鐘,使用者什麼都不用做它就會自已搞定一切,然後程式就開起來了。

對了,裝完一定會想找本書來看看對吧?Library裏有很多,上面圖案中開啟的就是免錢的 AS3 design pattern 第二章,雖然這本書挺灑狗血的,但反正無料就看看無妨。

這背後的原理其實很簡單,在 flash player 裏本來就內建了這種下載/安裝的功能,之前在 Breeze plugin 就出現過,現在只是重施故技罷,但它真正的意義是:這種完全無痛的自動化服務,才是最上乘的 usability + user experience 啊~

俗話說 Less is More,這種精神在 mac 的軟體上處處可見(相反的,另一牌的軟體風格就比較朝反方向發展到極致啊~), DigitalEditions 如此簡易的的安裝方式也正是另一個非常好的例子。

好消息是,這一招在 AIR (對,就是 apollo,從今天起我會開始正式使用這個名稱)也有內建,只是裏面的 api 有部份現在是爛掉的狀態,所以可能會跑不起來(beta嘛)

-DigitalEditions 採用了黑色介面風格

就如同許多人已經發現的,近來黑色似乎是介面設計的顯學,一狗票軟體都是用黑色做為介面主色,只是這樣是否真的比較好?或著說使用者是否能輕易接受這樣的介面改變?就是一個很大的考驗。

以我個人而言,舉凡文字編輯器類的工具,例如 eclipse 或 mac 上寫 RoR 的 textmate,都是設成黑底綠字,因為這樣長時間盯者看對眼睛比較輕鬆。

但像 flash, photoshop, lightroom (還有像mac 上的 aperture, final cut, shake等) 這種工具型軟體,是否也適合用全黑的介面就值得再討論,當然它會有一定的 wow-factors 在,給人耳目一新的感覺,但真的操作起來 usability 是否有增加恐怕得實際做一下測試才知道,這到是個好課題,有空要來研究研究。

-DigitalEditions 代表的意義?

從技術面來看,跟前一篇所提的三點基本上相同:

1、展示 flex 與 AIR 平台的技術實力/實例

2、充份發揮內部廣大工程資源(不論是應用 actionscript/flex/air 或 pdf/reader 等技術)

3、享受跨平台的好處(至少前端部份包含 flex app/xhtml/pdf reader等是可以複用的),只有外包的 wrapper 需要改。

我想在未來類似這種的應用模式應該只會越來越多,這正是所謂的 eat it’s own dog food 表現。

而從應用面來看,就更有趣了。

我在 google 用這個關鍵字查詢後,很驚訝的發現居然在中文世界有許多人關心這件事,當然這些人主要關心的是 digitaleditions 是否可做為一個真正跨平台又兼具 DRM 的 ebook reader,喔,當然,還有它是不是免費。

長久以來中文世界(尤其台灣)似乎就對小量出版、個人出版等非常有興趣,對各種類似的技術接受度也非常高,像之前台灣很多出版社採用的 zinio 就是一個例子,而這次看來大家是對 digitaleditions 寄予厚望。

就我來看,adobe 這步棋真是走對了,這家公司有者最知名與普及的 PDF 技術,長久以來就是數位出版軟體與技術的主導者,現在結合了 RIA client 的技術與原有資源,加上一個夠小又方便安裝的 reader,如果將來再開放部份 api 供廠商操作,感覺是挺有前途的,寫到這裏,就越覺得 Adobe “Integrated” Runtime 裏面的 Integrated 這個字變的特別醒目,似乎在隱約暗示著更無限的未來…

comments(5) | by admin

從 Youtube Remixer 看 Adobe 的新商業策略

In flex   June 19, 2007 - 3:58 pm

Adobe Remix

Adobe Remix 是一個陽春版的線上影片編輯工具,基本上它就是個超簡單的 Premiere (而且實際上它的另一個名稱就是 Adobe Premiere Express),可以在線上籍由拖拉影片、聲音、轉場效果到時間軸上完成影片編輯,並立即分享出來,是正港的 web 2.0 enabler (cough cough…)

這個工具的idea本身並不新奇,在這兩年的創業潮中,早就有幾家公司在開發線上影片編輯軟體(而有另外數十家在開發線上照片編輯軟體,借如 picnik),例如已被yahoo買走的 jumpcut。

*Adobe 全新商業策略

那有趣的是那部份呢?

首先,它是用 flex 寫成。

Flex + AS3 搭配上超快速的 AVM 讓這種原本 web 難以負擔的高運算程式現在變的可能,因此這可以說是 adobe 最好的實力証明,拿出來可以大聲說:嘿,用 flex 是可以做很實用的線上軟體喔~

其次,這是最有趣的一點,是它的商業模式。

我們早就聽說 adobe 想進軍 Software as Service (SaaS)市場,而且一直以來都是謠傳會有線上版的 photoshop,但沒想到先推出的居然是線上版的 premiere。

而且這個模式還很靈活,等於是 SaaS 的變型手法,adobe 將這個 remix 授權給各大網站,讓它可以加上自已的 branding,等於是不廢啥力就可以在網站上提供影片編輯工具,目前已知的授權對象包含 photobucket 與 youtube。

這種模式有趣的地方在於它確實是一個雙贏的商業策略,以開發軟體來說,還有誰比 adobe 更懂 flex/flash/actionscript 與 video editing ? 畢竟 Adobe 裏大概有2/3的工程師都靠寫這種多媒體軟體維生的啊~

就 video portal (例如 youtube)來說,這種工具正好切中他們使用者的需要,這些人本來就需要一個無痛(不用安裝,不用學習、最好能靠腦波掃描就直接生成最終成品)的編輯工具來處理他們產生的影片,remix 正好滿足了這個需求。

對 youtube 來說,要自已寫這樣一套工具出來,說難不難,說簡單到也不是兩三天就能完成,更況手邊的工程師可能都還不太熟 flex/as3(畢竟平常開發 youtube player 只要 as2 就夠,沒必要把事情搞太複雜)

所以,這種模式對 adobe 與 youtube 來講都是雙贏,但對adobe來說,它的實質意義卻可能更大一點。

因為一旦此種模式可行,將來可以玩的把戲就多了,他們可以加速把旗下適合的軟體(想想看 CS3 裏有多少東西適合?)都轉變為線上版,然後成為軍火兼代理商,另一方面,也可以籍由這樣的操作,向市場/潛在客戶証明 flash player 是一個可靠的商業軟體開發平台。

再著,adobe 本來就握有大量的 domain knowledge (例如 image/sound/video editing 的製作知識),而內部又有十數年專注在這種類型軟體開發的工程師,因此不論是要直接改寫一些既有的程式碼到as3,或是遇到問題時直接調一位 Premiere/After Effect 首席工程師過來顧問一下,問題就很容易解決,對adobe來說,進軍這個市場,門檻實在是太低了。

*三國鼎立衍然成型

再延伸觀察下去,可以發現另一種三國鼎立的線上工具市場已衍然成型。

Google 靠者 docs, spreads 與開發中的 ppt 工具還有其它一狗票既有的軟體(例如 gmail, calendar跟最核心的 search engine),將在線上 office 的市場佔有最大一塊。

Adobe 未來適必將推出 image(photoshop express?), video(remix 已推出,再玩下去就是連 after effect 來加入), sound (soundbooth ?),等於是撐霸線上多媒體編輯市場。

而另一方面,salesforce 則是完全專注在企業服務/內部軟體市場,透過一個健全的平台提供 ERP, CRM, SCM等各種專業服務。

這三家公司如果照者目前的方向與腳步繼續下去,未來應該就很清楚明確了。

另一個更宏觀的角度則是同時觀察 Apple 與 M$,前者似乎沒什麼動作(對,core animation 很炫,but No,它跟 RIA一點關係都沒有,不用再混為一談了),後者手上有bling bling 的 silverlight 看來頗有搞頭,但那是後話改天有空再說(啥,你說那 JavaFX呢?呃,等它存活超過一年再說,現在我比較希望 Sun 專心搞好 JRuby 就行 XD )

*後話

從工程師的角度來看,類似 remix 這樣的軟體,它乍看之下應該是很容易製作,大概只需要六七個module 組合起來就可以。

但真正可怕的事在於,表面上看起來越簡單的東西,往往製作越麻煩,隱藏的陷井也越多,像 remix 這樣的app,基本上它的複雜度跟 desktop app 完全沒有兩樣,雖然 module 很少但彼此之間的互動卻很頻繁,在剛開發的前1/3時會覺得很愉快,成就感很高,一下就可以有很大的進展,但等進入 2/3 時歡樂的地雷就會開始顯現,而且最麻煩的就是不論用了再高明的 framework 或 pattern,會炸的就是會炸,管你有兩年還是二十年經驗都一樣。

過去半年我們正好有機會接觸了一個類似的案子,也是開發一個線上編輯器,也同樣只有十來個左右的 module,但也同樣的非常複雜(complex in a very special way),在這六個月內真是深刻學到了無數寶貴的教訓,從此對軟體開發(比較接近 desktop app 而非傳統 web app)這件事又有了完全不同的體會,簡單來說還是一句話:越簡單的東西,往往裏子越難搞~

但也因為這段經驗,等於讓我們加速成熟,提前準備好未來應用 Apollo (AIR) 撰寫桌面程式所需的能力,也算是小有收穫了吧(不過其實我心裏在想的是,adobe 到底派了多少工程師寫了多久才弄出那個 remix 呢?)

comments(7) | by admin

可愛三個月大女生小橘子貓待認養

In General   June 14, 2007 - 4:50 pm

噹噹噹,公益活動時間~

可愛三個月大女生小橘子貓待認養-個性溫和,外表可愛,非常親人

橘子喵相簿

昨天在樓下撿到這隻迷路的小貓咪,當時餓的哇哇叫,餵飽她後發現背部有點受傷就帶去醫院治療,順便全身健康檢查。

她約三個月大,個性溫合,很親人,會主動靠近人給人摸頭,很適合當家貓(這樣寫程式時可以右擁滑鼠左抱小花貓,寫出來的東西一定更有人性 user experience 一定也會更好 :D )

如果有人想領養,請與我聯絡。

—- 分隔線 —-

為了儘量跟本站主題沾上關係,鬼扯一下那個相薄的製作過程好了。

1. 拍了幾十張照片回來後,先在 Acdsee 裏快速過濾一遍,把晃動的、不清楚的都刪掉

2. 進 fireworks 用 batch process 把所有圖片縮小為原本的 40% (原本是5M像素實在太大不適合網頁用)

3. 進 dreamweaver 用 convert to web photo album 功能自動生成縮圖、網頁與導覽系統

4. 編輯一下 layer 加入最下面中英文說明

5. 開 ftp 軟體上傳到 blog

6. 到 tinyurl.com 生一個短名稱出來,完工

總共大概花10分鐘。

這件事給我一個想法,這些流程應該要完全整合起來儘量自動化才對,或許用 Apollo 寫一個?

comments(5) | by admin

早點吃午飯

In flex   June 11, 2007 - 10:12 am

再過兩小時就沒時間吃了….:-)

edit: 開始了

comments(3) | by admin

Next Posts Previous Posts

mobile phone