Sunday, August 02, 2009

Cloud Computing & You

Cloud Computing is coming, and it's bigger than you think

Despite the enormous chatters surrounding the "cloud", I think it's still under-hyped. And no matter who you are, you will experience it. In my opinion, the significance and transformation brought about by the cloud computing will be as big a step as the transition from command-line to GUI and from isolated computers to internet - combined.

For a user, cloud computing means your data and applications are never confined to a particular "computer", never lost, and always accessible from anywhere. You can use your PC, your phone, your TV, other people's phone, airport kiosks to do email, play your favorite games, make presentation, listen to music and chat with friends.

For a developer, could computing means you have the power to build an application that can be accessibled from virtually all computing devices, and avaialble potentially to millions and billions of users, if you can attract them to come. Just like going from command line to GUI requires software maker to think about event driven programming, GUI design, pretty buttons and animation. Cloud computing brings new scenarios and also new programming models and contructs. Forgetting old ones maybe harder than learning new ones.

Past is a hint for the future

Let's review the three giant steps in computing in the past, and see what cloud brings to the table in the same vein.

  • Shared computing to Personal computing - a paradigm shift

    "Paradigm shift" is an overly used term, for me, it simply means a significant change in ways of thinking. There was a time when computing was not available to the mass. Like there was a time when driving was not avaiable to most people. And today, flying across long distrance is not avaialble to most. When computing was only available to selected few, software was developed in a particular way that assumes its users to be highly trained and many (>100) of them were sharing a super expensive computer.

    The shift into personal computing, required a sea change to the design of the software. No longer were the computer serving hundreds of masters at a time, the users were no longer highly trained scientists and engineers. If you were the designer of a 747 air-liner, how would you design an air plane that carries just a small family and can be operated by a crazy teenager with a few weeks in fly-school? It's hard not only in solving the technical problems, but also in the sheer changes to long standing assumptions, conventional wisdom and truisms.
  • CLI to GUI - bring in new audience

    Another significant shift into personal computing, is the user interface. In a shared computing environment, to spend significant CPU cycles rendering a pretty UI for hundreds of users simply didn't make economical sense. But in the era of personal computing, it had become increasingly necessary to attract wider and wider audience by reducing the learning curve for the mass. Early PCs thrived on command line (DOS days) because it offered significant functionalities (think Lotus 1-2-3, Word Perfect) to motivate its user to learn the arcane commands. But it wasn't until a successful commercial GUI was available - Windows 3.1 and the subsequent Windows 95, that numbers of PC users exploded in the scale we see today.
  • Local computing to Internet - eliminate the friction of information distribution

    When so many PCs are on the market, using them as terminals for receiving information, like TVs and radios, was an obvious thought. And PCs have the "interesting" potential to do two-way communications. Various attempts were made to build the "network" - BBS, CompuServ, AOL, early MSN, but they were largely superseded by the one network that rules them all - internet. Internet eliminated the friction (cost and access to technology) for distributing information. News, knowledge and stupid jokes alike in forms of text, audio and video can be distributed on the internet for the same low costs - nearly zero, especially when you compare to the cost of building TV stations and renting broadcast equipments.

Cloud Disruption

To assess the impact of cloud to our industry, let's take a look its potential impact from the angle of "paradigm shift in software design", "infusion of new users and new challenges and opportunities that entail" and "removal of major friction in delivering value to users". These are the lasting changes from the last sea change in the industry. If cloud computing could deliver in these 3 elements, wouldn't it carry the similar amount of force to reshape the industry?

  • Paradigm Shift - Personal Computing to Cloud Computing

    Cloud Computing is the product of internet. Like the transition into personal computing, cloud computing requires a significant change to how software is designed to fit the new realities and expectation of its users. Many software designers would never fully settle comfortably into the new world order. Developers who grow up with the internet would never look back. The "generational gap" will manifests in the software makers' ability to understand and predict the needs and desire of their customers. The transition would be incredibly disruptive for the industry.
  • Widening Audience - Make computing & services available to the next 1 billion users.

    By shifting the data storage and computation heavy lifting into the cloud, coupled with the continuing force of Moore's Law, personal computing devices could continue to shrink in size and cost. Mobile phones are already widely available in the developing economies, and with the relatively brief life span for these low cost mobile phones, soon, the next billion people who don't have access to a full fledged PC, will have a mobile phone that is capable of accessing the cloud to obtain most of the functionalities and information that we use our PCs for today. The infusion of new user base will likely drive a very different kind of economy. Disruption abounds for established business and revenue models.
  • Frictionless Application Access - Eliminate the friction of application distribution

    Today's application platforms allow developer to provide useful functionalities to its user on a particular computing hardware. Applications distributions has been costly. Distributing through retail channel like Best Buy is reserved for only the largest vendors. Distributing through internet or your own website is cost effective, but gaining people's attention to visit the website is hard. Once people get the software, installing the software, keeping it update to date with patches and upgrading to new versions, are far from easy and reliable. OS, hardware incompatibility, conflicts with other software on the machines, are a fact of life. These existing application platforms can work on solutions to many of the problems above, Apple's iPhone Marketplace is an example where the distribution and discovery of applications is simplified.

    Cloud application platforms of tomorrow will be built to avoid many of the problems above. The ease of clicking on a link, will be the benchmark for "installing and start running" an application on the cloud. Updates and upgrades to the software are expected to happen transparently to the user. For the most part, new features are expected to just "show up" without down time. And users would expect the application to run in a fashion that works on their device, no matter what OS and hardware the device has.

    The emergence of new cloud services / application platforms (Google's Google App Engine, Microsoft's Windows Azure, Amazon's cloud computing offering to some extend), will obviously be disruptive for dominant players in today's application platforms - Apple and Microsoft.

Part 2 work in progress =)

Industrial Movement & Related Technologies

  • Web Services
  • Software as a Service
  • Platform as a Service
  • Infrastructure as a Service

Microsoft Positioning

  • Windows Azure
  • Microsoft Applications for the Cloud Era
    • Live Mesh (consumer)
    • Microsoft Online (enterprise)
  • Client Future - Windows here to stay

Friday, November 23, 2007

Stumble Upon

今天裝了這個 Firefox Extension 叫 Stumble Upon, 他提供一個 toolbar, 會帶你到一系列隨機的網站,在一開始, 你可以圈選你有興趣的類別(例如說: 科技, 攝影, 日本, etc). 使用者也可以進一步的指定要圖片(Flickr), 影片(YouTube, Google Video), 或是 Wikipedia 之類.

我大概半年前就有聽說過 Stumble Upon, 不過我對於融入軟體跟科技到我的生活裡面其實還蠻保守的, 我很少在自己用的電腦裡面裝新的軟體 (很多裝了也難逃再短時間內被 uninstall 的命運), 很少 sign up 各式各樣的網站, service (雖然我會不斷注意相關的新聞).

Anyways, 從 Sumble Upon, 可以接觸到很多過去完全不會有機會看到的網頁, 這一點, 跟 Digg 有點接近, 不過 Digg 最近總是很偏好政治跟科技, 標題也都是一些比較聳動的八卦新聞, 並不是特別有趣. Stumble 的類型跟內容似乎比較廣泛.

今天看到了一個很詭異的日本電視節目(Jan 1998 - March 1999)叫電波少年, 很難解釋他的內容與型態, 基本上可以說是 reality TV + 真人版 Truman Show (June 1998 上映, 互相的關聯不得而知), 其他網站上關於的個節目的記載很多, 我就不多解釋. 不過這樣的內容讓我感覺到網路還有很多擴展我生活經驗的潛力跟娛樂價值. 跟很多人整天看隨機 YouTube 的影片類似.


Sunday, November 18, 2007


  • Credit Score
今天查了一下我的 FICO 信用分數, 還好沒什麼意外, 覺得信用真的是個很麻煩的東西, 還好我沒什麼習慣用信用卡, 打算繼續一卡走天下, 對我來說, 只要有個像樣的分數可以應付房貸的需求就可以了. 現在很多信用評等公司都很拼命想賺你的錢, 紛紛推出各式各樣的評等系統跟監看服務, 大多都要 $15/month 左右, 實在是一比很高的花費, 我也不覺得會帶給消費者任何實質的保護分資訊. 總之很高興我基本上遠離這個 mess.

  • Zune 8
Zune 8 最吸引我的功能 = size, podcast, FM Tuner (for NPR radio). Price point 還可以接受, 我的 impulse buy threshhold 大概在 $79, 我大概可以買到 $125, 差距並不是很大, 考慮這一兩個月來買.
  • EeePC
EeePC 看起來很不錯, 我在等 10inch screen + 新的比較省電的 CPU 這樣就可以把風扇拿掉, 再加上 Windows XP, 這樣應該是很理想的行動 PC 組合, 很適合放在車子裡面當 GPS + 行動娛樂 + productivity computing. 我現在的 laptop 螢幕 15 吋, 並不適合到處攜帶, 我只有出遠們才會帶, 我的 Windows Mobile phone 沒辦法瀏覽任意的網頁, 也沒什麼娛樂的功能. 大概明年年中可以買.
  • 美元貶值
美元持續貶值, 產油國家考慮更換原油交易的貨幣, 可能讓美元更加貶值, 我的 money market 裡面的資金不知道要不要轉換一部分為外幣, 像歐元之類比較強勢的貨幣. 看了一下外幣的 bond, 大概也又有 ETF 跟 Mutual Fund 可以選擇, 費用在 0.4% ~ 0.75% 之間, 算比較貴. 再研究看看.

Tuesday, September 11, 2007

這就叫緣分啦! 找到十五年前有一面之緣的電動玩具....

我記得很小的時候,去松山機場參觀了一個大型電玩展,到底多久已經記不得了,唯一記得的是,當天真的像是進了糖果屋,玩到徹底的是不想回家了。回想起來,那天玩了三個最令我印象深刻的遊戲,其中一個是 Mortal Kombat (魔宮傳奇?!),那時候 Street Fighter 2 正在流行,很多類似的格鬥遊戲紛紛出籠,Mortal Kombat 特別讓我留下印象,主要是因為還蠻暴力的 ,記得 K 人血會一直亂噴,再那時候還是蠻前衛的,(那時好像沒什麼電玩分級的概念)。另外,隱約記得也玩到了後來幾年在台灣紅到不行,歷久不衰的「吞食天地 2」(Warrior of Fate)。

不過,最令我難忘的,是一個不知名的遊戲,後來也並沒有在其他的電玩場所看到。它是一個架駛飛機的橫向射擊遊戲,名字好像叫做什麼「幽靈戰機」之類的,反正完全就不是什麼想得起來的名字。很特別的是,你的飛機被擊落以後,駕駛員可以跳出來繼續玩 (不過就得跑在地面),地上還會有其他的交通工具像坦克,汽車,馬,滑板(現在看起來,有些還蠻搞笑的)之類的東西可以讓你駕駛,很有創意,也記得在那邊排隊排了一陣子只玩到一下下。

從那之後,這個遊戲,就一直偶而會閃回到我記憶裡一下,可惜不記得名字,也沒有再看到過。每次經過電玩場所,總是抱著那麼一點小小的期望可以再見到他一面。快轉個十多年,出現了大型電玩模擬器 MAME,我幾年前也試著找過一下,可惜上千個電玩,機海茫茫,大海撈針,也沒看到什麼類似的遊戲。今天,心血來潮又回去 MAME 抓了新的版本回來玩,想到以前這個一面之緣的電玩,想說在來超級任務 (現在還有嗎? 我跟台灣真的是很脫節耶)一下,回想那時候玩到的遊戲,一查 Mortal Kombat 是 1992 年出版的 (MAME 裡面有很多遊戲的資料),照年份一排,快打旋風 2,吞食天地果然都是 1992 出版,看來那個電玩展應該是 1992 年,我走馬看花的把其他 1992 年的電玩名單掃過一遍,突然,這個遊戲 Boogie Wings 抓住了我的注意力,Wings 通常是指飛機的意思,日本有很多電玩都是以 Wings 代表戰機 (X-Wings 也是指 X戰機),突然希望高了起來,馬上去 Google 查了一下這個 game,結果馬上就在 YouTube 找到了一個 video,一開始看起來還蠻陌生的,心稍微沉了一下,決定繼續看下去,等到過場動畫結束,一架飛機飛出來,沒多久飛機被擊落,一個人跳出來跑來跑去還開起坦克來,沒錯!這就是我多年來在找的遊戲。

原來這個遊戲叫做 Boogie Wings 是 Data East 出版的。找到這個遊戲跟找到失散多年的朋友一樣有一分說不出的感動,特在 blog 上記上一筆。

YouTube video:

Thursday, June 07, 2007






Friday, June 01, 2007

我看 Live Software

粗略的以 Word 來看: 1. 使用者介面, 2. 檔案格式, 3. 資料編輯的功能, 4. 輸出(存檔,列印), 5. 使用協助(說明)
以 game 來看: 1. 使用者介面, 2. 故事劇情, 3. 跟遊戲世界的互動, 4. 存檔, 5. 使用說明
以 photoshop 來看: 1. 使用者介面, 2. 檔案格式, 3. 資料編輯(影像資料的處理), 4.輸出(存檔), 5. 說明

基本上,很多程式的基本架構都是類似的,而且所有基本的元素,都落在【軟體】的範疇之內。如果我們把視野放寬,想像三個同心圓,最中心的圓是軟 體。外圍一圈的,是【硬體】。在最外圈的,是【網路】。以這些軟體來說,硬體都是一樣的,就是 PC (把 Mac 也列入廣義的個人電腦中)。軟體跟硬體間的互動,是我們很熟悉的,從第一天有電腦開始,軟硬體這兩個元素就是並存的。網路,卻是一個蠻新的元素。透過 Internet,軟體慢慢的增加了一些網路功能,例如說 game 可以網路上遊戲, Word 可以從網路上下載插圖, photoshop 可以從網路上下載新的濾鏡效果, 或是可以把做好的圖面上傳到 Flickr 等。

Live Software 是微軟拿來統稱把這三元素做整體思考的開發模式。跟傳統軟體不同的地方如下:

軟體: 軟體不再是完全安裝在硬體上面,一部分的軟體機能會由網路服務提供。
硬體: PC 將不再是唯一,甚至不再是主要的平台。手機, 遊戲機 (Xbox, PS3), 家電, 都會是 Live Software 的重點平台。
網路: 我們稱網路上的軟體為【服務】,Search (Google) 是一個服務, Map, web mail, social network, 等都是網路上熱門的服務。在 Live Software 中對網路服務的整合會不斷增加。網路能提供的服務包括即時資訊,內容(歌曲,電影),資料存取,甚至是大量資料的計算等等。遊戲是目前非常明顯的例子,對 許多遊戲來說,網路連線不只是一個外加的功能,而是整個遊戲最核心的一部分。在這個新的模式裡面,軟體公司對網路能提供的服務,也還在摸索階段,很多服務 需要一些時間來思考跟開發。

以 Live Software 的模式,來思考現有的軟體:

Game: 軟體 = 遊戲, 硬體 = Xbox 360, 服務 = Xbox Live
數位音樂: 軟體 = iTune, 硬體 = iPod, 服務 = iTune Music Store
文字處理: 軟體 = Word, 硬體 = PC, 服務 (舉例) = 文件儲存, 備分, 分享, 校對, 出版, 買賣
數位影像: 軟體 = Photoshop, 硬體 = 數位像機 + PC, 服務(舉例) = Filckr, 照片儲存, 照片分享, CD/DVD 製作, 買賣

軟體+硬體+網路服務 這樣的組合,在大多是人的眼中,是不可阻擋的趨勢,許多人發明了不少新的名詞來統稱這種新一代的軟體,其中一個,是 Web 2.0,在這邊可以稍微跟 Live Software 坐一下比較:
Web 2.0 可以被歸類為 Live Software 的一種。Web 2.0 盡可能的把所有的軟體功能都推到網路服務上面,在硬體上,只需要安裝【瀏覽器】這一個共用的軟體就可以使用。Live Software 並不特別局限於瀏覽器之中,而可以使用作業系統提供的所有功能。瀏覽器的好處是提供了一套標準 (DHTML, CSS, JavaScript, RSS) 給跨平台的資料顯示跟程式開發。缺點是,瀏覽器通常都只使用作業系統能力的一部分,缺少的部分,必須透果瀏覽器 plugin 來補齊。在硬體上,只要能執行瀏覽器,就可以執行 Web 2.0 的服務,不過在非 PC 的平台上,瀏覽器即使可以執行,也常常無法提供非常流暢的互動 (因為缺乏滑鼠,鍵盤,低解析度螢幕,等問題)。

殷非凡老師的 Blog

懷舊時間到囉! 今天突然想到, 不知道這些年來殷非凡老師過的好不好, 就到網路上 search 一下, 結果找到老師的 blog, 看來老師在 2004 年已經退休, 跟丈夫小孩移民到澳洲雪梨過著安逸家庭主婦的生活了.

記 得再台灣的時候, 學校的科目, 我大概只對英文比較有興趣吧, 也是來國外唸書以後最受用的. 高中的時候到處補習, 大概也只比較喜歡去上殷老師的課. 沒有其他在火車站附近補習接那種要窒息的感覺, 我記得後來教室搬家到新的(華山?)大樓, 所有東西都很新, 樓上有很棒的 K 書中心, 我也在那邊度過不少日子 =)

殷非凡老師的 Blog:

Sunday, September 10, 2006

Adobe Apollo - 用 Flash 核心技術開發主流應用程式

大約十年前 Java 以他的跨平台虛擬機器架構掀起一陣熱潮,很多人熱切期待著有一天,需多主流的應用軟體會透過 Java 達到完全跨平台軟體的境界。十年後,有那個熱門桌上應用軟體是用 Java 寫的呢?我自己在用的只有 Azureus BitTorrent Client。Java 攻佔桌上軟體市場的夢想,還很遙遠。另一方面,Macromedia (現在被 Adobe 併購) 在幾年前,也開始增強 Flash 的功能,為進攻桌上軟體市場準備著。一兩年前 Macromedia 推出 Flex 算是第一波攻勢,我從來沒看過有人在用,新聞消息也少的可憐。

今天剛好看到 Adobe Apollo 的網站,看來,這次 Adobe 打算一次把 Flash 打造成一個完整的桌上型程式開發環境。Flash 一值都有很不錯的 2D 繪圖功能,大概在 Flash 7 左右加入了一些元件技術,讓開發 GUI 程式簡單一些。不過 Flash 被關在 Flash Player 裡面,因為安全考量,也缺乏很多存取系統資源跟資料的能力。現在 Apollo 整合這些技術資產,加上整個設計完全針對桌上型程式的開發,提供了很多以前 Flash 缺乏的重要功能,我看到了幾個讓我覺得特別有用︰

1. 跟 Flash 一樣,用 Apollo 開發的程式也是跨平台的。
2. 網路︰完正的 socket API 可以拿來寫很多網路應用程式向 Bit Torrent cliemt 或 FTP client。
3. 桌面整合,這是最關鍵的,讓 Apollo 程式看起來像是一般的程式,而不會像是次等公民。例如︰存取系統剪貼簿,拖曳,開啟其他程式,跟其他現有的程式溝通,等等。

目前看來,Apollo 可以當作是一個加強功能的多媒體 Widget 引擎,開發一些提供特定功能而且有漂亮,高互動性介面的程式。我自己蠻喜歡用介面漂亮的程式,例如 uTorrent, Skype, WinAmp 都很不錯。不過 Flash 應該可以提供更多的彈性作出更有趣的介面,著重介面的同時,Apollo 看來也提供了足夠的設施,讓程式可以有足夠的功能性跟其他的軟體競爭。畢竟,軟體功能如果矮人一截,還是沒有競爭力。

另一個問題是,Apollo 有沒有辦法在比較複雜的桌上型程式開發上,跟 Java 或是 .Net 競爭呢?例如,一個讀信軟體好了。我想,以目前我所看到 Apollo 的功能,是沒有什麼技術上的限制,不過複雜的軟體最好要有完整的開發環境,包含 IDE,除錯等功能。另外程式資料一多(幾千封 email) Apollo 執行環境的效能跟記憶體管理,也變的很重要。Apollo 有沒有野心跟實力往上吃下這個市場,還要在看看後續的發展,不過目前,我很看好用 Apollo 開發小型,特定功能高互動性的多媒體程式,像是RSS reader, 及時通 IM client, 聊天軟體,簡單的相簿秀圖軟體,等。

Adobe Apollo:

Saturday, September 02, 2006


今天在家裡癱瘓一天。昨天只是有點輕微疼痛的肩膀,今天早上好像更糟了,稍微動到,左邊肩膀就會一陣劇痛,痛到臉都揪在一起了,一陣一陣大概五秒。不知道是不是抽筋,肌肉好像沒有拉傷,肩膀用力或按摩也不會痛。因為怕引起疼痛,人的動作不自主的變的很慢,也沒辦法出門,吃了點香蕉補充電解質,好像沒什麼用。家裡還有很多 protien shake 可以喝,不過什麼事也不能作,所以睡了一個下午。


想到 long weekend 變成廢人癱瘓再家裡實在令人喪氣,很想出去吃壽司。

Update: Joey 叔叔說我是脖子的問題啦, 還有圖喔... 大概是數字 2 的地方... 希望明天會好點...

Monday, June 19, 2006


最近在書上看到一個說法蠻直得參考,是關於購屋自己居住的房子屬於資產,債務,還是投資。很多人再開始賺錢後主要的目標就是準備購屋自己居住,並將這個行為歸類成「投資」。房子在還沒有付清貸款前, 是一筆負債這應該是沒問題的。如果考慮自己住在屋子裡的情況,如果本來在外租屋的房租沒有明顯大於每個月所還貸款的利息部份,其實並沒有省到什麼錢 (這是我自己直覺的想法),因為實質上只是銀行變成你的房東而已。很多人覺得自己住的房子是個投資的另一個原因是,房價會上漲,可是,仔細想想,如果你沒有獲利了結,把房子給賣了,其實是沒有賺到一毛錢的。如果真的把房子給賣了,你還是得在買個新的地方住,基於現實考量,你不能般的很遠,也不太可能越住越差,新買的房子如果至少要跟本來的房子比擬,甚至更好,難道不會根本來的房子一樣貴嗎?畢竟保守一點,在類似的客觀條件之下,房價應該是類似的。如果把小房子賣掉,又再貸款買大房子,這又回到原點,再度回到負債的狀況。我的結論是,買給自己住的房子,是一種負債,付完貸款後轉換為資產,但並不會自動成為投資。真正屬於投資的房地產,是沒有要自己住,一開始就要拿來出租,又能再適當時候買出的獲利的不動產。



背房貸的情況 ($100 元的房子, 6.31% interests, Year 3 假設房價上漲 20%)︰
Year 1: $37.92
Year 2: $37.92
Year 3: $37.92
Year 3 資產︰$100 * 120% = $120

另一種選擇,租房子,同樣的資金拿去投資: (假設房租 = $4.5 / Year)
Year 1: ($37.92 - $4.5) + 10% net investment profit = $36.76
Year 2: ($36.76 + $37.92 - $4.5) + 10 % net investment profit = $77.20
Year 3: ($77.20 + $37.92 - $4.5) + 10% net investment profit = $121.68
$121.68 > $120

這個計算裡有很多變數與假設,不過有一點蠻重要的是,房地產的漲幅是很難預料的,所以上面那情況的 20% 是很樂觀的情況。如果房市開始轉冷,房地產的投資是沒有什麼彈性的,屋主還是得乖乖付完房貸。而在投資的選擇裡,10% 的稅後投資淨收入也許也算樂觀,但是投資工具很多,在各種市場情況下,可以轉換投資工具,似乎有彈性的多。

Sunday, May 07, 2006

Google 買了個 3D 模型軟體

今天發現 Google 賣下了 SketchUp 這套據說簡單易用的 3D 模型製作軟體. 目前很簡單的根 Google Earth 做了一點整合, 可以再 Google Earth 上下載照片, 然後平面的照片上建立建築物的立體模型. 看來 Google Earth 也許會走向 user generated content 的路線, 讓大家都可以自己做出 3D 模型然後上傳到 Google 裡面, 增加內容的多樣性, 讓 Google Earch 從衛星空照圖到有各式各樣有名建築物的 3D 模型. 現在 有許多 Google 自己做的模型. 其實大多蠻簡化的, 也缺乏建築物的材質 (texture) 所以看起來有點像玩具. 如果使用者貢獻的資料品質不要差太多的話, 應該也是蠻有趣的.

Thursday, May 04, 2006

遊戲的下一個里程碑 - 物理加速

前幾天看到了一個新款獨立物理加速卡 Ageia PhysX 的示範遊戲電影,遊戲的概念蠻簡單的,是兩個有超能力的士兵在一個充滿碎石的平台上互相對打,過程中,他們可以用超能力把周圍的物體丟向對手,如果受重傷,血會像瀑布那樣噴出來 (哈哈,蠻噁的,不過主要的目的還是要展示他的流體模擬),整個影片裡面,可以看到他想展示的各種物理計算,包括︰大量物體的碰撞測試 ,車輛移動,爆破模擬,不規則物體的移動 ,人物肢體的動作,等等等等。有了這些物理計算能力,遊戲的真實度很明顯的提高了很多 (可能要看了才能有所體會),我想如果玩家一旦看到這樣的物理效果,就很難再回頭了。在 3D 運算達到了前所未有的高峰的今天,物理加速是讓遊戲世界更加貼近真實世界不可或缺的元素。


強調遊戲裡物理效果的遊戲,從最早期的 Tresspasser 到最近的 Half-Life 2,都想要透過遊戲裡真實的物理特性來增加遊戲的可玩性。Tresspasser 很不幸的徹底失敗了,Half-Life 2 基本上還是以畫面取勝,物理效果只是陪襯。我預測,終究會有那麼一個遊戲,能徹底的把物理效果融入遊戲裡,變成遊戲過程非常重要的一個環節。這樣的遊戲,也會徹底的改變大家對遊戲中物理效果的期望,讓他們加入故事,畫面,音效,成為所有遊戲必須具備的基本元素。

想到今天的物理加速,很難不拿他與當初 3D 加速卡興起的歷史比較。一開始,有少數的遊戲有 3D 畫面 (Ultima Underground, Doom, Quake),完全運用軟體運算來達到畫面的效果。後來出現了 3D 加速卡 (3Dfx 的 Voodoo) 跟他特有的 API Glide,許多遊戲廠商支援 Voodoo / Glide 作出當時最先進的效果跟最漂亮的畫面。後來競爭者增加了,3D 繪圖卡也開始支援高階的 OpenGL 微軟針對這個新的市場推出了專以 3D 遊戲為目標的 Direct3D 標準。今天,DirectX / Direct3D (現在改叫 Direct Graphics) 已經成為標準而 API 也隨著硬體的改良不斷的演進,快速的推動這個技術的成熟。今天,我想物理加速也是循著類似的步伐,不過大家都很熟悉 3D 加速卡的歷史,標準化的腳步應該會更加快速。今天,我們有不少遊戲自己用軟體運算(或買軟體引擎,如 Havok)達到有限的物理效果,我們有了第一張物理加速卡,在缺少標準的今天,只支援自己專有的 PhysX API。不過回顧歷史,我想大家心理都很清楚,API 必須標準化才會有廣泛的支援。而 DirectX 是當然的人選。


Sunday, April 16, 2006

Google 到底是什麼

好一段時間前,我就打算找個時間從各種角度來看看 Google ,今天剛好有點時間來寫點東西。Google 到底是怎麼怎麼樣的公司,有什麼產品,靠什麼賺錢,未來技術上跟生意上的淺力在哪裡之類的。一次大概寫不太完,所以我打算慢慢寫,之後會再加東西近來。

  • Google 的賺錢方式
    • 廣告︰在看 Google 的產品之前,我們應該先來看看 Google 賺錢的方式。

  • Google 的產品︰
    • Google Search: 網路上使用率最高的搜尋引擎。Google Search 的好處是 1. 搜尋結果的品質高 2. 介面簡單易用 3. 速度快。這些優點其實每一樣,都是得來不易。搜尋結果品質來自於他們對於網頁做的 indexing,用他們不斷改進研究的演算法,來計算每一個蒐循關鍵字應該提供哪些網頁。搜尋結果必須不斷更新,演算法也必須跟著網頁內容的演進修改。每種不同語言的斷字方式跟內容重要性都不一樣,都要分開處理跟調整。介面簡單也許技術上不難,不過對搜尋引擎來說,公司的首頁是瀏覽率最高的頁面,大家都會很希望能在上放昂貴的廣告賺錢,也會希望能在上面放鏈結到 Google 各式各樣的功能來增加他們的知名度跟使用率,要把首頁維持的簡單乾淨,其實是要抗拒很多誘惑。搜尋速度來自 Google 的硬體的處理能力,Google 自己研發了龐大的機房設施能提供非常快速而且便宜的處理能力,很快的傳回搜尋的結果。便宜是個非常關鍵的特質,因為 Google 能花同樣的錢買到更多的處理能力,他們可以利用這些處理能力提供更複雜的演算法,算出更精確的結果,或是提供新的服務。Google 利用廉價硬體製造出龐大的處理能力的技術,是他們最有競爭力的地方之一。
    • Blogger
    • GMail
    • Google Earth
    • Google Desktop
    • GTalk
    • Picasa
    • Google Pack
    • Google Video / Images Search
    • Google Toolbar
    • Google News
    • Froogle
    • Google Book

  • Google 以後技術上跟生意上的潛力

Sunday, March 26, 2006

Notes on mixed drinks

Base liquors = Vodka, Tequila, Gin, Rum
Liqueurs & schnapps = Midori (melon liqueurs), Peach schnapps
Friuit mixers = Orange juice, Grapefruit juice, Pineapple juice, Cranberry juice, Sweet and sour, Grenadine

Forumla 1: Base liquor + Fruit mixer

Fill the glass with ice, pour 1 oz base into the glass, and fill the glass to top with the mixer. To keep the concept simple, I am omitting glass type and garnishes used in the drink.
  • Screw Driver: Vodka + Organe juice
  • Tequila Driver: Tequila + Orange juice
  • Vodka-Cranberry (or Cape Cod): Vodka + Cranberry juice
  • Greyhound: Vodka + Grapefruit juice
  • Slow Screw: Sloe Gin (A brand of Gin) + Orange juice
Forumla 2: Base liquor + Fruit mixer + Float

A variation of formula 1 is to put some "float" or "top" on the drink. That means an additional 1/2 oz of liquor or liqueur on the top of the drink.
  • Melon Ball: Vodka + Orange juice + Midori
  • Tequila Sunruse: Tequila + Orange juice + Grenadine
Forumla 3: Liqueur + Fruit mixer

Substitute base liquor with a liqueur. A liqueurs is a mix of sweet flavoring and liquor. This would produce a very sweet or fruity drink.
  • Midori Driver: Midori + Orange juice
  • Fuzzy Navel: Peach Schnapps + Orange juice
Forumla 4: Base liquor + Fruit mixer 1 + Fruit mixer 2

Now we change the 1 fruit mixer into a mix of equal portion of 2 fruit mixers. Other stays the same, base liqor is still 1 oz.
  • Sea Breeze: Vodka + Grapefruit juice + Cranberry juice
  • Madras: Vodka + Orange juice + Cranberry juice
  • Hawaiian Driver: Vodka + Orange juice + Pineapple juice
Forumla 5: Base liquor1 + Base liquor2 + Fruit mixer

Following the trend, we could have 2 different base liqours as well. Each one should be 1/2 oz, so the total amount of liquor in the drink is still 1 oz.
  • Brass Monkey: Vodka + Rum + Orange juice

Tuesday, March 21, 2006

Thought Traffic Jam @ 1:30AM

When you sleep @ 8:00PM, you wake up @ 1:00AM.
When you are awake @ 1:00AM, and been sleeping for 5 hours, all sense of time is lost.
And your brain kinda scrambled like, well, who knows, smashed cream pie?
It's a traffic jam in there, nobody's moving and eveyone is blazing the horn like crazy.
I need a fix.

Eating Haagen-Dazs Light Dutch Chocolate ice cream. It's Light, only 1/2 whatever, so I am not guilty. Finished half pint of it. Don't feel a thing. Ah ... much better.

I stared into nothingness, and let the thought flow:
* Today is fucked up, but tomorrow will be better.
* Going to gym tomorrow, OMG, just kidding.
* Going to work early tomorrow, shooting for 9, have to wake up by 8. 8 is basically a cosmetic number for me. It sounds as far fetched as 10 million annual salary. Anyways, we are always encouraged to make unattanable goals. So go for it.
* Must eat sushi, need a fix by Wednesday.
* My teeth hurts.
* Pay the god damn utility bill and jombo combo of water / sewer / waste.
* Natalie Portman is awesome, must see V for Vendantta. Must watch Natalie Portman.
* Tacohachi was the Japanese curry place I was looking for, schedule Sunday dinner there.
* Saturday is a deep balck hole, must plan something, or life will suck.
* Butterscoth Schnapps, Peach Schnapps are waiting for me
* 2AM is the time to sleep, where is my alarm clock.
* Next in line for Blockbuster, Taken series, Red eyes, and a movie that is not to be named. (....fine, it's Harry Potter).

No one's around on MSN. My source of hapiness is drained. My little world is crumbling down like a sand castle. Press eject button.

Saturday, March 18, 2006

The other side of the moon

2:00AM: I think it's time to sleep... but the DVDs for Band of Brothers have been sitting on my desk, and I have all these stuff waiting on my rental queue. Let's just watch 1 DVD before sleeping...

6:00AM: Phew... the war is finally over, and I have found my peace, too. Just sitting on my chair to enjoy the moment of silent.

6:15AM: Geez, it's daylight already! It's been a while since I am awake this time of a day. Wait a minute... It's Saturday! That's the day new Xbox 360 get restocked in the local stores. Hm... maybe it's meant to be the day I get my 360.

6:30AM: Fred Myers people are too busy to tell me if they have any 360 in stock for this morning. Guess there is only one way to find out.

6:45AM: In my car, the engine has just warmed up a little after the short driving. It looks cold outside, the parking lot is empty. I feels like that I am going to school on Sunday. I felt a little stupid.

6:47AM: In front of the door, nobody else is around. Some activities inside the store, getting ready for me paying for the shiny new 360.

6:55AM: Time surely goes slow when you are waiting, in freezing cold. I am playing with my cell phone, looking for things to do. Checking watch, it's been only 1 minutes since I last checked. It sure feels quite a bit longer than that. There are a few cars in the parking lot now, parked but the engines are still running. Are they waiting for their 360, too? They don't seem too eager to line up at the door though.

6:58AM: Door's open, mercy. I think it would be too dramatic if I ran in to grab my 360. There wasn't even anyone else around. I walk into the store. Fast I walked.


"Uh, do you have any Xbox 360 today?"
Guy writing on paper, without moving his eyes from his work, "No"

7:00AM: It would be such a crushing defeat if I just leave the store now. I walked around the store and try to piece my dignity together. I standed in front of 360 accessories and games, looking inside the locked glass showcase.

7:01AM: On my way out, the store has spring to life just as my hope of getting a 360 today was declared dead. Store clerks walking around the shelves, I felt a little uncomfortable. It wasn't meant to be this way, it feels wrong. Walking towards me, an old man, a few shelves down the road, another old ladies, an exciting day has started for them. What kind of people would go shopping at a super store the moment it opens, if not for an Xbox? Life is very different for them, I felt. I have just seen the other side of the moon.

Tuesday, January 31, 2006

Got curious about Google, Yahoo and Windows Live

最近突然對 Google, Yahoo 跟 Windows Live 很有興趣,常常在網路上看些相關的東西。晚點可能會來些一些對 Web 2.0 的看法跟對 Web 2.5 和 3.0 的期望。

另外,我對 Desktop widget/gadget 也頗有興趣,目前 Google 跟 Windows Live 好像都只有 web widget 也就是在網頁裡才能 render 的 widget ,而 Yahoo 買了 Konfabulator 所以有了 Desktop Widget 的引擎,被從新命名為 Yahoo Widget。Windows Vista 有 Sidebar 而 Sidebar 上有 Widget 已經是很普遍了解的事,我隱約記得也有看過報導說 Sidebar 也支援 web widget 所以可以把 web widget 拉到 Sidebar 上,不過詳情不太清楚。總之,Windows 會有 Desktop Widget 是蠻定的事。 Mac OS X 也有了 Dashboard 跟 Konfabulator 很類似。

我研究了一下 Yahoo Widget 的說明文件,他的引擎裡有幾樣好東西︰COM (ActiveX) support, HttpXmlSocket, URL, FileSystem 物件, XML parser (with XPath support), text-to-speech, 內建iTune 遙控功能, 內建 Yahoo 登入功能, JavaScript runtime, 動畫引擎,等等。都是蠻實用的功能,加上現在網上能取得的 web services 跟資料源包含圖片,RSS feeds / Podcast,動畫影像,等,喔對了,好像不支援影像喔,很可惜。

我對 Yahoo Widget 的第一印象是︰很有趣,基礎設施還蠻豐富的,可以支援很多有趣的小程式。很危險,我能看到的安全措施只有跟你說,這個 Widget 不是 Yahoo 發行的,你要不要 run... Widget 可以直些執行任何的 command line 程式,完全沒看到 sandbox 的概念,也沒看到選項可以開啟 sandbox 或選擇禁用危險的功能,很令人擔心變成傳撥 ad-ware 與 spyware 的溫床。既然是 Desktop Gadget 對於多媒體跟繪圖系統的運用都應該要豐富許多,如果能整合 Flash player 到 Widget Engine 裡面,就瞬間多了高品質的向量動畫系統跟視訊撥放,想到這裡,其實 Flash 本身就是一個很不錯的 Widget 引擎耶,對了他們之前推廣的 Central 就很類似是一個 Widget 平台,不過似乎沒有引起什麼熱潮。題外話了。

Anyways 我對 Desktop widget 的前景很期待喔,我想以後 Desktop widget 也會是傳撥廣告非常重要的方式之一,而高度運用繪圖系統的精緻 widget 也會出現,試想一個百寶廂 widget,每次去開他都會從裡面跑出一些有趣的 3D 小物件,一些小巧玲瓏的東西,喜歡的話,你可以把他收起來,而這些小東西,也許是你可以真正買到的商品,我想,這個平台的淺力是很廣的。

Monday, December 12, 2005

TV Shopping

搬進新家已經四個多月了,客廳一直很少去用他,主要的原因應該是少了個靈魂人物 - 電視吧。沒有電視,在客廳不知道要作什麼。現在西雅圖已經冷起來了,客廳裡的暖氣通常是沒開的,冷的要命,又不能上網,不能看 DVD,不能打電動,所以我也很少「光顧」。

不過也總不能一直這樣下去,所以大概幾個禮拜前,我就在研究買台新電視的事。想想我的基本需要,以後要可以接 Xbox 360,所以最好能顯示 720p 的解析度 (1280 x 720) 比較理想,螢幕希望最少能有 37 吋,不知道要不要搬家,太重的不考慮,所以映像管的電視基本上已經出局了。因為有 KTV 系統,加上一些有的沒的東西想從電腦上顯示,最好能直接接電腦的 VGA 訊號。

一開始去網上看了一下,發現 Panasonic 的電漿 (Plasma / PDP) EDTV 備受好評,價錢也便宜 (42 吋大概 $1400 或更低可以買到),不過 EDTV 解析度直有 480p (16:9, 854 x 480),有點擔心以後接收 HDTV 視訊可能會有小小的遺憾。HDTV 基本的解析度是 720p (16:9, 1280 x 720),如果用 480p 的電視看,還是可以看,不過解析度會被調低一點。在網上作了基本的攻課,參考了各式各樣的說法,決定到店裡去實際看看。

一開始,看了本來中意的 Panasonic TH-42PD25U, 42 inch EDTV,沒有附喇叭,畫質很明亮 (電漿電視普遍的優點),顏色很漂亮,感覺明顯的比周圍的電視來自然。不過,隔壁有台 720p 的 HDTV,同樣的畫面,可以明顯看到 EDTV 的畫素的確比較粗大些。往下走,看到 Samsung 的 DLP 電視,有一個特色馬上吸引了我,Samsung 叫他 CinemaSmooth,他的畫素跟畫素之間沒有任何接縫。Panasonic 的 EDTV 畫素之間的黑邊 (叫 Screen Door Effect) 還蠻明顯的,不過稍微往後站一點,就不太看的出來的,Plasma 的亮度很夠,可以把小小的黑縫遮住。

Anyways,看到 DLP 後,發現他有幾個優點,一,尺寸比較大,因為 DLP 屬於背投影式電視,加大尺寸的成本不高,最小的也有 42 吋,大的到六十吋或更大,價錢也相對便宜。我後來看上了一台 46 吋的機型,有附喇叭,有點厚度,可以直接擺在我的小桌子上 (Plasma 可能要掛在牆上還頗麻煩),重量也不太重 (80 多磅,Plasma 只有 60 多磅),有 VGA input,CinemaSmooth 的畫面,和 720p 的解析度,各方便都符合我的考量,所以就開始來看價錢。

家附近有家音響專賣店叫 Magnolia AV 聽說服務不錯,也有 Price Guarantee,如果再別的有店面的商家看到比較便一的價錢,他們可以 match。好巧不巧,我那天剛好去 Fry's 買點東西,他門關門前幾分鐘,我繞道他們的電視部門,赫然發現 HL-R4667W 在特價,$1799,我在網路上看到最低「可以相信」的價錢大概是 $1599 上下,運費多半要 $250 左右,如果有問題或是想退貨,也麻煩,Fry's 的 $1799 算是不錯的價錢,一看,特價到隔天為止,所以第二天,我就到 Magnolia 用 Price Guarantee 把這台電視給買下來。我想,也許不見得是最划算的 deal 吧 (後來突然想到,如果在外周買,好想可以不用加稅又省下快兩百塊),不過我向來也不是什麼撿到便宜的人,想說能在預算內解決,就謝天謝地了。

兩天後,電視運到家裡,裝起來後,這幾天陸陸續續在測試,目前結果都很滿意,後來在網路上有看到有關於 video 訊號 delay 的問題 (其實是許多數位電視都多少有的問題),一般打電動的時候比較會發現,視訊可能有 0.5 到 2 秒的 delay。經過調整後,我的 delay 大概在 0.5 秒內,玩熱寫高校躲避球的時候發現接球的 timing 比較不好抓,不過其他沒有很顯著的影響。有了電視以後,客廳變的有趣多了,許多玩具像電玩模擬器,Dreamcast,等等已經很久沒玩了現在也可以拿出來玩 =)

改天在來開 party 吧...

And the Dreamcast NES emulator is just beyond belief... I spent a few hours today just to play some NES games that I used to play in my childhood. Ah... the good times. Posted by Picasa

And of course, Dreamcast is still alive and kicking, and still my favorite console! Posted by Picasa

This is Burnout Revenge, a super awesome Playstation 2 game. Using the component cable to get the 480p output. The quality improvement is not dramatic but noticable. Progressive scan DVD playback is great, I have never used it on my PS2 until now. Posted by Picasa

Besides being a TV, this set is hooked up to a computer, Playstation 2, and the most awesome Dreamcast. The computer provides not only the Karaoke system, but also a full range of arcade / console emulators. I really need 2 more better game pads... maybe Xbox 360's pad would work great. Posted by Picasa

My Karaoke system is back online in its full glory. I don't have an extra VGA cable, so I am connecting the PC output to a composite input, and it looks totally blurry. Once I get the VGA cable, I could use the TV's native 720p (1280 x 720) resolution, which should be awesome. Posted by Picasa

Fresh out of box... Posted by Picasa

New member for the family living room! It's a Samsung biggie TV. If you are geeky like me, this is a HL-R4667W, a DLP rear projection TV. Posted by Picasa

A day later... Posted by Picasa

First snow in Seattle! Posted by Picasa

Saturday, November 12, 2005

Another weekend, another audio book

This week, the audio book is "Built to Last" by Jim Collins and Jerry Porras. The book has been published in 1994, but the audio book is recorded recently in 2004. And that makes it even better than the original book becuse the authors have time to reflect upon their theories and observations.

I find it hard to absorb Jim Collins' another book, Good to Great. Perhaps I am just not very good at reading books =p

I think it's worth pointing out that all the audio books are borrowed from company's library. I think it's critical for my first job to be a positive learning environment. A place provides learning opportunities. I think the place I am working for, is going out of its way to excel on this. There are thousands of webcast on all sort of topics on its intranet, ranging from our core business information, technologies, science and social science. And the library has a vast collection and is easy to use.

Anyways, my recent interests is product design. How you make a product that's not just useful but invokes people's positive emotion, called Emotional Design. I sucked up all the books by Don Norman, hoping to gain some insight on the art of design product people not only use but love.

Gonna read some of those over the weekend, so nothing much to share yet.

Saturday, November 05, 2005

Audio book is awesome

Update! That's right... Back to update this blog again
Not that anyone would care =p

Today I have just finished a book by Thomas Friedman called "The World is Flat", actually, I listen to the audio book in Windows Media Player at 2.0X speed. The experience is great, I get to finish this wonderful book in about 3 hours, which I otherwise would probably give up in the middle of it due to my short attention span.

I like it so much, that I think I am going to do this once I go back to work. I am going to go through my Amazon Wishlist and search them one by one on the company Library website. If they happen to have the audio book, I am gonna grab it right away! If they only have the book (which, they probably would, the library is huge), I would probably need to think about if I would actually go about reading it.

So the points of this post:
1. The World is Flat is an awesome book! Read or listen to it if you could.
2. Audio books are wonderful for people who can't read fast enough
3. Windows Media Player speed adjust feature RULES. Absolutely the best feature ever.
4. Portable audio players, support Audio book as a core scenario. iPod / iTunes already does that, so wake up and do it!
5. Windows Media Audio format has a voice codec that could compress an hour of audio down to about 10MB, and an audio book usually come in as 6 - 8 CDs.

Sunday, August 28, 2005

The magic of software - fully automatic image stitching from Microsft Codename: Acrylic

This is New York City from the Empire State Building. Posted by Picasa

Sunday, July 17, 2005

Steak Dinner is ready! Posted by Picasa

Getting ready for a steak dinner Posted by Picasa

Finished product - taste great too =) Posted by Picasa

Preparing the ingredients for the spaghetti. Posted by Picasa

Friendster API / Library

Today I have written a .Net Friendster API / Library in C#. It would extract all kind of information from Friendster's HTML and allow easy programmatical access to information in the service, including friend list, profile information, photo URLs, testimonials, etc. I might make the source available if there is significant interest. I wrote this because I want to write an Outlook plugin that would pull information from Friendster and annotate the information to your Outlook contacts. Outlook <-> Friendster integration that is. I haven't started working on the Outlook plug-in just yet. But the Friendster Library is functional now =)

Wednesday, July 13, 2005

And this place will for sure make you hungry. Just look at the Chicken and Beef Kabob. Posted by Picasa

Sometimes you would find interesting stuff that you can't regularly find in a supermarket. Posted by Picasa

Smoked Salmon, yum! Posted by Picasa

Weekend visit to Pike's Market! I really love going to farmer's markets everywhere. It really brings back the memory from home. Posted by Picasa

Trying the pancake mix. Not too bad at all, easy to use and tastes alright. Posted by Picasa

Quick Salad Posted by Picasa

BBQ Chicken, tastes better than it looks =D Posted by Picasa

Korean BBQ Short Rib, this actually tasted pretty good. The off the shelf Korean BBQ sause is awesome! Posted by Picasa

I have been busy... a pork Quasadilla (probably quite an insult to Quasadilla) Posted by Picasa

The bedroom before I made a mess in it =D Posted by Picasa

I use kitchen a lot these days. Posted by Picasa