June, 2007 > 所有文章列表
While I was categorizing my photos the other day using Apple Aperture, I noticed there are some nice little UI controls on the panel that fit closely into the layout, hiding complex selections inside with a simple button.
See the image below:
The panel’s title bar are fully utilized by the three buttons inside, when clicked on each one of them, there will be a drop down menu with even more choices (this kind of button are actually called “disclosure button” as in Apple User Interface guide, which every serious UI/Interaction designer should read, again and again, and again…)

Also take a look at the control bar at the bottom of the panel, there are three buttons there with drop down menu too.

and here’s a very similar UI design from Breeze, notice how the button at the bottom occupies more screen real estate then Aperture’s one (overall speaking, Breeze’s UI looks too heavy and doesn’t feel as friendly as Apple’s, although I believe they share the same design concept).

If my memory served me right, Aperture is the newest application from Apple, so the UI design style probably reflect the newest trend of their research, and it’s indeed a very standard style of mac applications – simple and clean user interface, with all the necessary/advanced features just one click away.
I liked this design so much that I gave up categorizing the photos and tried to implement it in flex (this is the necessary evil of a software developer…)
After a couple hours of hacking, I got something like this:

As seen in the image, it’s basically a standard flex panel, with TitleBar and ControlBar on top and bottom of it, but of course all the bars are heavily customized to incorporate the buttons and various style settings.
Currently the buttons can be aligned on left, right, or middle, but actually user could put pretty much anything they want in there (like a combobox, date chooser, PopUpButton…you name it)
My next step will be focusing on the TitleBar, trying to make it as flexible as possible, so user can put standard min / max / close button there, or, they could put buttons with drop down menu just like Aperture.
Side note, recently while playing with Flash CS3, I also noticed some nice new UI controls there, which helps user to better utilize the screen estate, I probably will spend some time on that too (if I ever got another free cycle)
| by admin
有在用 Flex Builder 的人對 Eclipse 一定不陌生(廢話,就是 built-on Eclipse啊),通常會用 Eclipse 的人一定也會裝 Subclipse,它是 Subversion for Eclipse 的 plugin,用來管理專案的 source code。
往往在 FB 內新建了 project 要第一次放進 svn 時,它會把很多 project setting 檔案也一併丟進去,例如 .actionScriptProperties .flexProperties .project 這些檔案。
老實一點的人就是乖乖手動按右鍵選 add to svn:ingore 把這些不要的檔案排除在專案外,傻一點的就直接全丟進去,然後當其它人update 後就順手毀了他們的專案。
比較快的方法是可以直接設定 subclipse 的 config 檔,它的位置如下:
C:\Documents and Settings\[-YourWorkstationUserId-]\Application Data\Subversion\config <-- 這是一個純文字檔
打開後搜尋 ignore 這個字,會找到一行被 # 給 comment out的設定,把 #拿掉,再加上下面這些即可
global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.actionScriptProperties *.flexProperties *.project .settings bin
這樣下次建新專案時,就會自動排除掉不必要的檔案囉。
| by admin

Pownce
Pownce 是一個使用 AIR 製作的工具軟體,主要功能是讓朋友間可以方便的傳訊息、檔案、鏈結與活動訊息。
它主要的特色是,呃,其實沒有…我猜你也已經想到了,上面說的這些事那樣不能用skype, msn, gtalk, yahoo messenger, iChat 完成啊?(btw, 最近 im市場裏又多了兩個新玩家, myspaceIM 跟 facebook IM)
目前看來唯一比較特別的地方只有一個,那就是它的創辦人,正好也是 digg.com 的創辦人,所以這等於是他個人的第二春(或者是第 n 春,大部份矽谷的創業家都像連環殺手一樣,不會只幹一票,所以才會有 Serial Entrepreneur 這種名稱)。
如果真要說 Pownce 可能有搞頭的地方,應該是在於它可以同時在 desktop 與 web 上執行,因此它的賣點之一就是平常你可以用桌面程式快速操作,例如拖放檔案就傳送出去,但在外邊兒時,又可以透過 browser 看到一樣的畫面而且可以做相同的事,也就是說 web/desktop 的 user experience 是一致的。
另外,它的商業模式,目前看來仍然是廣告,但要怎麼玩呢?想傳檔案前先看一段影片?每傳五句話跳一個關鍵字廣告?或每點廣告一次可用十分鐘?
總之目前看來這玩意真正的賣點不大,但 adobe 應該會愛死它,大概可以拿來當作 air 的宣傳品之類的。
| by admin
最近幾個月一直不斷被客戶、同事、朋友、學生問到類似的問題:
你對微軟的 Silverlight 有何看法?*1
前陣子也下了些功夫去實際調查跟訪談,還因此認識了(或該說重逢?)台灣微軟目前負責silverlight 這塊的操盤手,但細節太多,長話短話仍然一言難盡,乾脆也就不說了,直到今天看到這句,覺得頗能代表心中想法,特此一貼。*2
Microsoft doesn’t need to lose, for Adobe to win.
還有這句
The Microsoft folk aren’t evil; they’re just trying to make a living like the Adobe folk and all of us developers.
當然還有這句
Companies should be penalized (and heavily)
for unfair competition, but that doesn’t mean the entity necessarily
should cease to exist, nor does it mean that everything that comes
from that company is evile.
其實更簡單的結論就是:
silverlight 的出現不見得會吃掉 adobe 的市場,它比較像是為廣大的 .net developer 開了一條新生路,讓他/她們有機會玩另一個市場,而這群人,本來就不太可能跑來學 flash/flex/actionscript
(在以往,他們的選擇要嘛用 ajax 做掉,要嘛就是用傳統 asp.net 硬幹,很少會有願意真的改行來學 flash的)
所以既然市場這麼大,多一家公司進來把 RIA 做大其實沒什麼不好啊~
同場加映,在跟許多朋友閒聊鬼扯中,某現旅居紐約大長輩開示的一句話也頗值得玩味:
目前來看,silverlight 跟 flash 其實很像,都是一個跨平台/browser 的 runtime,也都有 GUI controls 跟 video playback 能力,但差別是 flash 早在五六年前就已經做到這些…
這句話的重點到不是在說誰抄誰( .net 抄了不少 java 的優點結果變的更好用也不是壞事),他的重點在於,一家公司的 innovation 才是比較寶貴的資產,如果這間公司在過去五六年能有這樣的原創力來開發一個新技術並創造出一個前所未有的市場,那至少可以合理預測它在未來的幾年不會秀手旁觀坐視其它人超越,相反的,它現在想走的每一步,才是真正值得觀察的。
這些話,其實套在 Apple 上也是成立的,從 os x, intel cpu, iPod, iTune, 公司改名、iPhone 到現在 Safari for windows,這一切都有脈絡可循,只要看的夠仔細,往往隱而不現的答案就在其中。
同樣的,以現在為基準,用相同的細心去觀察 Adobe 過去18個月的表現與未來12個月的發展方向,整個脈絡也就會隱隱浮現,然後驚覺有趣的還在後頭呢~
*1.(如果你是問我這個名字取的如何?hmm, 發音超過三音節可能比較不好推…這裏有誰可以正確拼出 Open Laszlo 的嗎?)
*2.原文在 flexcoder 上
| by admin

玩家自建版本
Airwaves 有趣的地方在於他採用的技術,前端介面是用 AIR,因此從一開始就支援跨平台。
*Airwaves 使用 AIR, RED5, FMS, XMPP
在後端部份,他採用的是 FMS 與 Red5。
其實要做 IM 這種應用,大概能走的方向就幾個,先決條件就是有否支援 audio/video,如果是純文字的交談,那隨便一個 socket server 或像 FDS 這種昂貴的產品都可以勝任。
以 airwaves 開出來的規格來看,因為它要同時提供 text/audio/video 交談(這年頭誰不想?可以飛時幹麻在地上爬?),所以選擇立刻就少了許多,而 FMS, RED5 則是其中比較受歡迎的選擇。
有趣的是在 mike 的blog中他中說明了一些挑選的過程,我想這也是大部份有類似需求的人在評估技術時會遇到的問題,值得一看。
其中他提到 FMS 與 RED5 的主要差異性為:
*FMS – 優點
-採用熟悉的 AS 語法,上手較快
-容易安裝與使用
-Adobe 大廠品質保証(這點我持保留態度,因為過去也被 FCS 整過很多次,但感覺上,目前 FMS 的 A/V 品質確實是比 RED5 好)
*FMS – 缺點
-貴,貴,貴
-非 open source 因此將來惡搞的空間比較小
*Red5 – 優點
-免錢
-open source 可任意修改
*Red5 – 缺點
-要用 java 編程,不是每個人都熟(*1)
-社群太小,出問題時沒人求救
-設定太複雜(*2)
*1.其實 red5 也支援 javascript, ruby, groovy 等語言,但這方面的教學實在太少,而且 v0.6 後許多 api 又改掉了,到底還能不能支援也不知道,這方面 red5 到是繼承了大部份 open source project 都有的通病,文件資料與溝通皆不足,這點將來要是不改,另一牌 wowza server 大概就有機會起來。
*2. 作者的原文是這樣:
It’s not as automated as Flash Media Server… too much digging into XML config files.. which is a headache.
這真正是大部份 java 軟體的宿命,改不完的 config 到底是怎樣?
難怪有人說未來真正的潮流是等 JRuby 夠成熟穩定後,直接以它為基礎,接手 RED5 裏面的 AMF module, RTMP module 然後組裝出一個新的 Ruby On Media server才是王道啊~
至於通訊協定部份 mike 理所當然的採用了 XMPP (也就是所謂的 Jabber protocol ),這樣一來其實它也可以跟許多其它 im 相通,例如 gtalk 或 mac 上的 iChat.
*後話
雖然 airwaves 目前只是一個熱血玩家吃飽飯沒事自創的小玩具,但從這件事裏卻可以觀察到許多。
-AIR 做為一個跨平台的 runtime 有它許多先天與後天的好處,例如程式撰寫容易、style/skinnig 輕鬆、可輕易跨 browser 與 desktop 執行
-前陣子 Yahoo 也發表了使用 flex 製作的 Yahoo Messenger web 版,相信也是循者相同的脈絡而行
-就目前來看,AIR 與其它技術/週邊的相容性頗高,因此開發者有許多機會用它來做真正的商業應用,它不再只是一個櫥窗裏擺者好看的洋娃娃
這幾個星期因為種種原因,其實我們也在 survey 同樣的事情,只是因為客戶需求不同,我們還得同時研究 FDS 與其它 socket server 的可行方案,所以對這件事特別有感覺。
簡單來說,現階段每個方案都有不同的爛法,我個人最希望的則是 FMS 能完全免費,那就能一次解決所有問題(yeah right, 最後世界也會和平,路邊小貓小狗也都能各有所養快樂終老一生…)
| by admin
Previous Posts