2010年5月17日 星期一

你為甚麼要買 Nokia N900?


這篇文章寫是完全不合我的個性的, 因為我通常是希望寫出別人比較少寫的觀點, 但因為我前面幾篇寫了一些有關 N900 的文章, 就很多朋友問我這件事, 所以我還是寫出來當作回答很多人好了.

通常會拿出 N900 出來, 最主要有三個比較點: 為甚麼不用 iphone, 為甚麼不用 Andriod (gphone), 為甚麼要升級 S60/S60 Touch (Nokia)?

在 5/16 日的體驗會之會前會, 我很意外的很多玩家對這隻手機有相當的興趣, 尤其這隻手機在某種程度已經是很接近電腦的手機了, 且加上很多人喜歡 Nokia 的 UI (使用者介面), 以及不錯的 qwerty 鍵盤, 好像在某些交集下, 只有這隻手機莫屬了, 雖然這隻手機怎樣都有一個缺點: 還是很貴, 除外還真的是不錯的手機, 只是最後是大家對這些 Feature (特色) 與價格比的觀點不同了.

對我而言, 這隻手機是:

1. 程式設計師, 且不是主要是寫 Java 的設計師: 可以很無痛的寫網頁程式, 無論你是習慣 Python, PHP, Perl, 都不用強制自己去用不習慣的 Java 來寫手機程式, 不然用 C 種可以吧?

2. 工程師, 對 Linux/Unix 軟體很熟, 且對 Console 也熟的工程師: N900 一進 Root 就可以安裝 Easy-Debian, 也可以用 Debian 來安裝許多軟體, 加上又是內建 Terminal, 這個對於用慣 Linux 的工程師是最好的介面.

3. 專用須求者, 或是給公司組織用: 無論是 iTunes Store, 或 Google Market, 再開放還是有一定的限制, 而 N900 的 Maemo 中 Application Manager 的觀點, 你可以建立自己的 Repository 的路逕, 很輕鬆的安裝與管理使用者的軟體, 總不能連公司內部用的程式都要上 iTunes Store 吧?

4. 控制狂或喜歡自製化(尤其是UI)的吹毛求疵者: 基本上我通常說, 若 iPhone vs Andriod 是 close vs open, 而 Andriod vs N900(maemo) 則是 open vs unlimited, 這是可以給你完全沒有限制的環境讓你做無限的創意, 手機要怎改都可以, 即使變成 Brick 磚塊, 幾乎都可以輕鬆 Restore.

5. 本身有錢者或公司預算足夠者: 最後就是要用多少錢買阿, 不然就是想辦法叫公司買, 說 N900 是個可以讓工程師或程式設計師能力加倍, 工作效率加倍, 用手機就可以工作寫程式的手機, 花這點小錢真的不為過吧?

6. 手機玩家或搜集狂: 這隻 N900 絕對可以給你不同的體驗, 我想錢就不是問題了.

當然若不是前面六種人, 我並不會很建議買這隻 N900, 畢竟這隻 N900 不是阿公阿嬤機, 若只是想拿來打電話的人買這隻真的是浪費阿, 還不如把錢捐出去會比較有意義.

右上角的圖就是用 N900 當時照的, 而下面則是我那天的 Slides....

2010年5月13日 星期四

APEC TEL 41 後記


基本上應該沒有人會寫 APEC TEL 會後記的這種東西, 因為在某種觀點而言, 像我這種以工程師為主的人, 不應該是會去的, 但事實上說不定是很必要去的, 畢竟應該沒有官員會寫後記吧.

這次會去 APEC TEL, 最主要是去提一個 Proposal, 就是要去跟其他國家 "說明", NGO 及 Social Media 在救災時的價值, 這個一看就知道指的是 Morakot 莫拉克經驗, 而這個經驗看起來沒甚麼, 但也是許多人努力換來的, 有時這件事比想像的還有價值, 就像是我一直記得 8/7 晚上在台南的時空與感受, 沒想到那個感受是個分界點.

嗯, 先不提莫拉克風災, 因為這已經提太多次了, 雖然到現在一直有新的想法, 但我們還是聚焦 APEC TEL 41 這件事.

這次這個案子能夠成行, 有太多有趣的原因了:

-1. 數位文化協會辦了個政治 2.0 研討會, 因此跟 21 世紀基金會接觸與各地方政府有合作關係.

0. 當然是大家在莫拉克風災的投入, 尤其是透過網路所引發的由下而上的合作.

1. 原本這次的會議應該是在馬尼拉, 但一時他們放棄後由台灣來主辦.

2. 21世紀基金會在整件事情有很重要的角色, 讓原本只是存在民間的事被官方認同提案.

3. 由於是地主的關係, 理論上大陸與韓國都會提出角色問題, 質疑我國的提案, 這次韓國 SPSG 主席最後還一反常態的很支持這提案.

因此這次能夠提案成功, 是相當難得的, 因為 Chinese Taipei 雖然在這次是有很多報告, 但都是 Presentation 居多, 而這次大會的新提案不多, 而這個案子是衡跨兩個小組, 所以變成我須要跑兩邊, 回答兩邊問題, 說真的是有趣但還蠻累的.

這個題目已經不知辦過多少次研討會, 講過不知多少次, 我偶而會以技術人員的身份幫忙回答, 但畢竟數位文協會及志工跟許多網友才是主角, 所以我從未以這樣的身份參加, 但現場因為全部都是用英文問答, 所以最後這 "重責大任" 落在我身上, 因為最後是比我懂的人英文都不好, 英文比我好的人都沒有我了解這案子, 因此說真的不應該也是只有應該了.

在會議之前, 數位文化協會的人努力的整理簡報, 這簡報是許多次 Present 累積起來的, 尤其是像 Schee 加了不少東西, 所以理論上準備不會不夠充份, 但把這 Proposal Submit 之後, 各國的代表提了一些問題, 所以在會議之前跟 21世紀基金會做了一個演練.

拿到這些問題, 基本上我們完全傻眼, 因為都是講跟 APEC 的關係, 尤其是 DSG, SPSG 以及 TFEP 的關係, 以前一些條文的關聯, 而此時我們對 APEC 完全不了解的情型下就只好開始惡補, 惡補一些 APEC 的資訊, 此時很有中華隊在完全沒有情搜就上場打擊的感覺, 若真的就這樣上場就只能靠實力, 但事實上這是不足的, 所以最後只好印出許多份報告, 花了很多時間 K 完後, 大家就問題討論, 一直到最後再修改 Presentation 後, 才覺得可以放心上場.

而我們有一種很大的感覺 (尤其是數位文化協會的駱呈義) : 為甚麼都找不到台灣或中文有關 APEC 的資訊, 若這些資訊真的有價值有意義, 是否應該組織翻譯的計畫把這些有用的資訊弄好呢?

而在 5/10 先參加大會, 而大概我的 Dress Code 跟現場完全不一樣, 最後還被 NCC 很禮貌的叫我過去問我是誰, 因為現場幾乎都是黑西裝, 領帶的官員, 我穿著長短袖格子襯衫, 真的不該在現場阿, 但我大概說了一下, 大概被我的談吐認同, 就放我回去排排坐了....

而 5/10 下午就是第一次的 Presentation (SPSG), 而由周韻彩上台報告, 但因為她不了解狀況, 所以都是由我來回答, 我一開始還覺得怕怕的, 一開始全部用英文講還真的有點繞舌, 後來越講越順, 而 5/11 上午的 DSG 我就回答的很順了, 而到下午又回到 SPSG 再回答一次, 此時已經覺得可以應對如流了, 從原本的對 APEC WG 這種會議的不了解, 到慢慢上手, 還真的很有趣.

事實上這次有我們的提案, NCC 辦這活動才真的更有價值, 因為大部份的議程都只是報告, 或者是 Informational 的演講, SPSG 我們是唯一的 New Proposal, 而 DSG 也只有兩個, 這次的會議花上千萬元, 但民眾知道的很少, 新聞都是一語帶過, 事實上連我們這種 Delegate 一開始都知道的不多, 更何況是記者, 而民眾就完全不知道了.

我們在這次把莫拉克經驗帶給 APEC, 以後也會在其他國家實施, 第一站就是泰國, 尤其是有幾點很重要的理念:

1. 應該建立一套從 Social Media 搜集民意的系統.

2. 應該協助成立網路社群的 NGO, 就像是台灣的數位文化協會那樣.

3. 真的發生事情時, 這個 NGO 應該在 EOC (Emergency Operation Center, 災害應變中心) 扮演資訊仲介的角色.


[後記] 我後來去官網去找照片, 發現還不少張我的照片, 也讓大家看看我為甚麼會穿這樣會被關切的原因吧, 呵~~

第一天的宅樣, 躲在角落打電腦~~~


第二天就對答的很有自信了~~


以上照片應該屬於 APEC TEL 41 所有, 我只是拿攝影大哥的照片來用....

N900 : 3.1 上一篇的規劃更新

上一篇還有很多沒寫到的地方:

1. 在最初的規劃這個數字是 Increamental 的, 也就是為了避免沒有抓到資料時的問題, 而這三種數字有兩個是一直增加的, 一個卻是在變化的.

2. 在第二組的距離, 事實上最後應該只會採用一個, 做一下 x*y*z 應該對資源影響不大.

3. 所謂的平均無論就取樣的區間, 最後指的是這區間的全部, 甚至是中點, 反而不是最新的時間的代表資料, 所以可能要做某些位移.

所以在上面三個考量之後, 可能要做兩個修正, 甚至打破上一篇的計算,...

1. 第二組提供距離合, 所以只有一個數字.

2. 因為是平均, 或許就直接降冪成 40*40, 也就是把 -1000~1000 變成 -20~20, 此時就可以用 0, a 到 t 及 A 到 T 來表示, 因此就不在手機端計算所謂的 "這段時間最常見的姿勢", 改由 Server 端計算.

事實上為了考慮效率的話, 應該用 C 寫, 而不是 PHP 寫, 但我想趕快做個 Prototype 出來比較實際.

2010年5月12日 星期三

從 Accelerometers 來看 Human Behavior Pattern (N900:3)

承上一篇的 Nokia 900: The Plan , 這計劃就網路技術面, 就程式技術面是一點都不困難, 最困難的反而是數學模型, 單單就取樣的部份我就想了很久.

從這 Accelerometers 來看, 會取出三個數字, 這三個數字本質雖然是 -1000 到 1000, 但就自由度的觀點來看, 真正表現的應該可以從這個三維空間轉換成二維的球面座標, 也就是大家常見到的 0~360, 及 -90~90 的座標系統, 只是雖然可以很輕易的以地心引力去定義平面(切平面/軸心), 但最大的問題是 0 度的定義是很麻煩的.

但實務上雖然這個球面座標轉換是可以降冪, 但事實上就盡量想出一個不損耗電力的最低計算是不划算的, 保持這個三維座標體系並不是不可以, 而當時想的 9 個數值應該是:

1. 這段時間移動的總距離
2. 這段時間的向量變化
3. 這段時間的最常見的方向

當然單單定義這段時間, 跟取樣頻率就是傷腦筋了, 一開始實作可能會用 5 秒或 15 秒來作取樣, 這個可以解決前兩點, 但最直覺的第三組數字卻是最難的部份, 因為如前面所說的, 就實務上這演算法早就存在, 是一個很單純的 Clustering 分群就可以做到的事, 但這個演算法在 Data Mining 已經是不能存在的, 更何況在手機上跑.

假設我們以 15 分鐘做一個現在的最常見方向, 就會有 60 組數字, 而每組數字有 3 個, 若是算距離的話就代表是三倍的時間, 接下來若是一個標準的 Clustering, 大概每次要計算 60!*3 次, 這數字之大可想而之, 若還不包含比較及找出新重心的計算.

而若這是一維的數字, 要找出最接近的一組數字已經很困難了, 更何況這是三維的三個數字, 當然理論上也可以嘗試著降冪, 例如把 -1000~1000 變成 -20~20, 一口氣把可能性縮小 125 倍, 然後用數值方法來去 Approach 一個 Feasible Solution, 而不是最佳解.

0. 計算 N 點的初始的解空間 (三維的最高與最低)
1. 計算平均
2. 排除距離平均最遠的點
3. 計算目前的解空間
4. 看看在剩下的 n 中, 其解空間是否是只剩 (n/N)^3 或是直接少於 1/9 (一個定數) => 其平均就是解
5. 回到 1

當然這個計算有很多相乘, 平方與開立方根的比較, 而若只是比較的話 (計算最遠的點) 直接就不用開方了, a^3>b^3 => a>b, 這樣就可以把 60! 的計算變成 60 次的計算, 因為這樣就不用計算目前所有點的相互距離, 直接用平均求點.

這個有一個很糟糕的假設:

一群距離最接近的數值, 會影響平均很大, 若能慢慢扣掉偏離的點, 就會逐漸逼近這一群最接近的數值的集合.

而這個的假設應該極有可能證偽, 但應該是可以相信適用在 95% 的解空間 (尤其是常態分佈後), 但確可以節省 99% 以上的計算.

[編按] 在找到一個合適的圖中, 無意翻到這個資源 (Data Clustering and Pattern Recognition (資料分群與樣式辨認)), 對 Clustering 有不錯的介紹, 只是我上面提的這個解法是用來找到最大群(最常見的姿勢), 而不是單純的分群.

但這篇跟 N900 有甚麼關係阿? 呵呵, 我也不知道, 但至少就演算法面要先想出手機中最麻煩的耗電問題吧.

熱門文章