發表文章

Google Map可以查危險路段

看到 這則新聞 , 這也是一種混搭應用, 維基經濟學中有很大的篇幅在探討這種混搭現象, 什麼是混搭呢? 簡單來說就是A+B=C(混搭), 混搭是一種創新, 但有時也會有著作權的問題,例如歌手A要翻唱某某作曲者的歌曲並將它加上藍調的風格後出CD, 如果歌手A沒有獲得原作同意,即使他將曲風變成藍調風格,但還是有抄襲的嫌疑. 但是對於是軟體公司而言, 提供API讓非公司內部的Developer利用這些開放的API再創造出新的價值,對於軟體的行銷有意想不到的效果. Google Map 大概是運用在混搭最成功的example, 像是 地圖日記 ,越多網站引用Google的服務,等同讓Google的曝光率越高,這無形中讓Google又多出一個廣告通路(我猜未來Google Map應該會與網路廣告結合), 所以在維基經濟時代, 無論是軟體開發公司, 網站服務提供者, 電腦硬體週邊,甚至是IC design house, 提供開放API服務, 將會是未來產品跟競爭者拉開差距的地方.

使用Wiiremote自製Multi-touch Whiteboard

昨天和Blair吃飯時,Blair告訴我們這個新奇Wiiremote玩法, 我以前一直以為Wii的CMOS sensor是裝在電視前面, 看了這個Video後, 才發現剛好相反..

維基經濟學讀後感

上星期舉辦了公司創立以來的 第一次公開且免費的教育訓練 , 以往的教育訓練都是針對已購買的客戶並在客戶端進行,但是為了更多對於對於我們公司代理產品與應用有興趣的客戶能有面對面的溝通機會, 所以往後我們會再陸陸續續定期舉辦CodeBeamer相關應用的教育訓練. 第一次的教育訓練是以 維基經濟學 為輔, Wiki 操作為主的教育訓練, 過去很多購買或是評估CodeBeamer的客戶對於Wiki的應用非常陌生, 我最常遇到的問題是既然已經有文件管理為什麼還要有Wiki功能? 當時維基經濟學這本書還沒有問世, 我當時對客戶的回答現在回想起來覺得有點不太專業, 而且讓客戶覺得Wiki反而是麻煩的製造者, 因為何時要使用Wiki?什麼文件要放在Wiki?是一件令系統管理者在對內部的管理很頭痛的事. 不過還好有了維基經濟學一書, 這本書舉出維基在目前許多歐美知名企業的成功應用範例, 整本書讀起來既令人感到驚訝, 也令我感到冷汗直流. 驚訝的是以往我認為Wiki是屬於開放原始碼的衍生產物, 要能成功走進企業還有一段很長的路要走, 但是這本書舉了許多企業使用Wiki的成功案例, 令我對於這些走在前端的公司感到折服, Google就不用說了, 我想Google算是執行維基經濟學最徹底,也是最成功的公司, Google幾乎每一項服務都有提供API, 並開放讓Developer應用這些API開發各式各樣的應用, 另一家公司 Amazon , 在我讀這本書之前, 我對於Amazon只是一家" 網路書店 " , 但是讀完本書之後才發現Amazon更是電子商務平台的提供者, Amazon也提供各式各樣的API, 讓外部的Developer可以取得Amazon線上產品資料, 如果透過外部Develper網站或是軟體所販賣出的Amazon商品, Developer也可以與Amazon共享利潤. 這只是Amazon其中的一項創新, 其他的部份可以在維基經濟學中看到很詳細的描述與分析討論. 我上面所舉的例子, 也許大家都有一個疑問, 這與Wiki有什麼關係? 確實, 維基經濟學所代表的實質意義並不是教企業如何使用Wiki工具, 維基經濟學的維基這個名詞應該是協同作業與分享的代名詞, 所以維基經濟學裏面提出了 四大競爭原則 開放 同儕分享 分享 全球行動 七種新的集體協作模式 ...

Android開發文件繁體中文翻譯計劃

上週五晚上,在 JavaWorld 看到KentYeh上傳了一個他初步翻譯的Android中文文件, 原本我也想寫一些Android的開發文件放在blog讓大家參考, 但是看到KentYeh已經翻了不少Android的文件, 所以為了避免做重複的工作, 當天晚上就跟KentYeh聯絡, 問他是否願意將他的文件原稿分享出來一起翻譯, KentYeh很爽快的馬上就答應了, 所以我們隨即在 http://opensource.javaworld.com.tw 建立了一個 Android繁中開發文件計劃 專案, 為什麼這麼強調繁中? 因為大陸彼岸已經有網友在進行 簡體中文版的文件翻譯 , 我想這不是民族主義作祟, 純粹是不太習慣大陸的資訊用語, 就算直接將簡中的翻譯用Word轉成繁體中文, 很多資訊名詞還是看不太懂:-) 這個專案也是採用開放原始碼的方式但是是使用Wiki來協同編輯翻譯文件, 只要申請加入專案, 就擁有Wiki的編輯權限開始貢獻翻譯, 目前除了我與KentYeh, 陸陸續續又有4位網友加入, 真的非常感動. 這個專案一開始原本是起始於Android文件的翻譯, 但是前一陣子在看 維基經濟學 這本書, 所以也順便利用這個專案來實現維基經濟學中所說的同儕生產, 與點子市集, 我開了幾個Tracker, 讓參與的專案成員可以 貢獻Android Sample code 貢獻How to或How to聯結 貢獻Android的idea 讓以後開發Android軟體的程式設計師可以方便找到資料, 希望未來會有更多人的加入, 讓這個專案成為Android的繁體中文知識社群.

軟體開發競賽與協同作業

自從Google宣佈了 Android 平台並懸賞1000萬美元做為Android平台上的軟體設計比賽獎金, 身為程式設計好手的你想必也是摩拳擦掌,躍躍欲試, 或是呼朋引伴組一個團隊一起參加比賽為程式設計生涯留一個美好的回憶. 如果你有時間也有一些志同道合的夥伴, 我很鼓勵你們去參加這樣的比賽, 最主要的是Google舉辦的這個比賽跟我們以往所見到的程式設計比賽有許多不同, 我大致摘要如下: 沒有年齡限制: 所以只要你會寫程式(最好寫過Java)都可以參加. 不是採用圍場的方式: 所以你可以用最輕鬆的方式寫程式, 穿著睡袍, 躺著,臥著,趴著 .... 沒有限定題目: 只要在Android可以跑就可以, 所以Google建議的Topic最後一條是 Whatever you're excited about! 任何讓你感到興奮的題材都可以, 只要你爽就好:-) Google是目前唯一可以挑戰微軟的國際級軟體公司, 當你的軟體進入決賽, 除了Google的巨額獎金, 同時你與你的團隊也受到全世界的關注. 看到這裏您的熱血開始沸騰了嗎? 不過Google有限定的交件日期, 從2008/1/2~ 2008/3/3, 算起來剩下3個多月的時間. 所以如何在這3個多月的時間內與你的夥伴更有效率的一起合作以贏得這項比賽? 我在這邊有些建議與想法 使用既有的OpenSource協同作業平台例如 JavaForge , OpenSource@JavaWorld , SourceForge , Google Code , 因為當你的團隊是分散在各地的情況跟OpenSource開發模式是非常相似的,運用協同作業平台讓軟體文件分享例如UML, 或是Idea透過Forum來討論與溝通都非常的方便,而且這些協同作業平台對於OpenSource專案都已經得到許多成功經驗. 儘量使用 Eclipse 內建的團隊協同工具, 例如 Mylyn 做工作管理,可以縮短你工作被中斷並再Warm up的時間, 而且Mylyn可以與 JavaForge 與 OpenSource@JavaWorld 中的Tracker做很好的整合, 詳細功能請看 這裏 使用版本控制如 SubVersion , CVS . Eclipse跟SubVersion, CVS的整合相當好, 團隊協同開發如果不採用S...

關於Google的Android手機開發平台

Google已經正式宣布GPhone(Sorry! Gphone是不存在的, 但是我覺得Gphone比較容易記與發音, Android念起來舌頭會打結:-))的開發平台 Android ,讓人驚訝的是Android目前僅提供Java開發程式語言, C/C++還沒有支援, 在Android的Forum已經引起 熱烈討論 , 我直覺是C/C++最後還是會支援,只不過要讓C/C++可以在不同的CPU執行則必需先搞定Cross compiler,GCC目前支援MIPS,ARM,等CPU已經是很成熟, 這部份應該也不成問題才對, Anyway, 如果是使用Java, 那麼IDE使用 Eclipse 就一點也不令人意外, Google還開發一個ADT的Eclipse plugin 以協助Developer建立與執行,偵錯可在Gphone上執行的軟體. 既然是使用Java, 那麼JRE呢? 是J2ME嗎? 這一部份就令人驚豔了, Google使用自己的JRE名為 Dalvik, 我用google search了一下Dalvik關鍵字, 找到一篇另人耐人尋味的文章 Google如果繞過Sun在Java ME的IP-Based授權限制 , Sun並沒有開放對J2ME的授權限制, 所以只要是做手機的都知道, 手機要支援J2ME平台,都要支付給Sun授權費. 但是Google在Android建立了自己的Java Virtual Machine而且是以 Apache License v2 釋出source code(但是我還沒有在Android看到Dalvik的source code, 這篇文章這樣說還有待考證), 如果是這樣, 這對於嵌入式系統開發廠商是一大利多, 而且對於Sun無疑是一種傷害. 但是也許事實並沒有這麼糟, 畢竟Dalvik不是J2ME, 如果手機開發廠商想利用Dalvik取代J2ME來節省成本, 市面上所有的J2ME程式勢必要再重新compile或是改寫, 我想這樣的改變要看Gphone有多成功而定, 不過無論如何,Dalvik對於Sun猶如芒刺在背, Sun的未來不禁令人擔心.

使用Anki Web功能

圖片
Anki的網站 有提供個人生字卡的儲存功能, 這個功能對於可以上網的手持裝置, 例如手機, PDA等, 非常方便, 可以隨時隨地連上Anki網站來復習您所建立的日文生字卡, 算是非常貼心的一項設計. 接下來我們來看一下要如何使用Anki將已經建立好的生字卡同步到Anki的web網站 1. 打開您的Anki程式, 選擇Edit,再選擇Preferences 2. 在Preferences選Autosave and synchronisation 3. 填寫Anki網站的使用者帳號與密碼, 如果你沒有在Anki網站註冊帳號, 你可以按下create a free account連到Anki網站建立帳號 4. 回到Anki主畫面, 打開你已經建立的生字卡, 在與Anki網站同步之前, 有一個地方要注意,就是Deck的名稱必需是英文, 否則在與Anki網站同步的時候會發生錯誤,所以我們先檢查一下Deck的名稱, 到Edit選Deck Properties, 將你的Deck名稱改成英文 5. 設好Deck的名稱後, 再點選Deck的Sync 6. 這時候, Anki會出現建立Anki網站的生字卡提示, 如圖示, ShinBunka-class13是剛剛設的Deck名稱, 按OK後就會開始同步 7. 同步完後, 我們可以到 Anki網站 檢視我們已經同步的Deck 輸入你的帳號與密碼 登入後會看到最新同步的生字卡 8. 如果你要檢視舊的生字卡,點選左上角最新的生字卡名稱 列出所有已建立的生字卡