2012年12月31日 星期一

2012 回顧


又到了回顧的時候。今年想要完成一架二足機體,花了點時間及心血,二足機體沒能完成,AMIGO mini 只完成了三份一。幸好完成了 AMIGO Hexapod,算是第四台完成的機體。第一台是 AMIGO Spider。第二台是 AMIGO Striker,已經是 2007 年的事。第三台是 AMIGO 03。第五台是令人興奮的二足,目前處於保密狀態,將於上半年發表。

技術方面,DartsRevenge 的創新玩法最令我滿意,是全球第一個利用 iPad 前置鏡頭進行的 Kinect-Like 遊戲。Get Recharged 利用改裝打火機的遊戲不是創新,但也是一個好的嘗試。在 SMART WAY 中第一次使用 Box2D 引擎。在 Jacob's Creek 中把有限的 Location Push 作無限使用也是一個聰明的突破。總體來說,沒學到甚麼新技術,倒是創意發揮了不少。

公司方面,員工由 2 位增加到 7 位,是長足的進步,能開發更多項目。新客戶 8 個中有 2 個是我建立,算是交到貨。客戶項目有 21 個,當中 7 個是由我的人際網絡建立而來,成績算是不錯。自家研發項目完成 2 個,但只有 1 個能順利推出,成績不好。

2013 年要繼續努力提升,有更多實質的成果!

2012年12月28日 星期五

例會是多餘嗎?

我管理的部門在每周一早上都會開會,說明該星期要處理的項目及公司發展情況。好讓同事了解公司的想法與安排,從而增加歸屬感。有這樣的想法是由於在 Gameone 打工時,看到報導時才知道公司在做甚麼遊戲。只有數十人的公司搞秘密,身為中高層的我居然不知道,歸屬感值有如中了「超必」般立即大減。自此以後我都會不時警惕自已,盡量把事情透明化,讓同事理解公司的發展。

話說回來,以往一小時的會議因為同事多起來的緣故,漸漸變成一個半小時。有股東跟我說,$1000 x 8 人 x 4 星期 = $32,000。即一個月花在會議上的時間成本大概為 HK$32,000,是一個不少的數目。這是不是意味著會議的時間要縮短?這樣的計算方法比較像工業時代的產物,適合軟件行業嗎?適合創意工業嗎?幸而,同事們一星期的平均加班時數絕對不止一個半小時。會議可以說是「免費」。這讓我鬆一口氣,不用花力氣去保護一星期一次的例會。讓同事清楚工作範圍才執行,例會是必須的!不過,要是能縮短開會時間也是好事...。

2012年12月27日 星期四

對 Source Code 的執念

一直以來,我對於代碼(Source Code)的想法,就等如產品的設計藍圖。有了藍圖便能複製產品,甚至理解產品結構及箇中設計的來龍去脈,是學習的範本。所以,如客人要求提供代碼時,我會要求三倍開發費用作為定價。至於為何是三倍?原因有:

  • 有了代碼,客戶能把產品複製成新的產品
  • 代碼有很高的學習價值,懂得運用能汲取當中精華的技巧
  • 系統維護也是軟件開發的收入之一。客人有了代碼便能自行為護,變相少了維護的營利。而且很多時都要解答關於代碼的問題

    我也認為這個定價有點高,也不知道這樣的想法是否合理。不過,情況有點像不懂畫的人想用 HK$100 買一幅名畫。到目前為止,除了 ING 外,沒有一個客人會購買代碼,他們大多嫌貴,認為買了回來用途不大。不過這不是問題,反正賣代碼不是我希望的收入來源。
  • 2012年12月24日 星期一

    Windows 8/RT

    客人決定了使用 Windows RT 作為新應用的運作平台。為了準確計算時間及價錢,必須要嘗試 Windows 8/RT 及其開發工具。之前在 Linux 服務器上的 VirtualBox 安裝 Windows 8 不成。今日更新了版本再試也是失敗。於是改為使用 Mac OS X 的 VirtualBox。成功了!








    2012年12月21日 星期五

    人手分配

    2012 年算是忙碌的一年,客人的項目很多但人手不足。到下半年人手才能得到舒緩,但同事們都忙於處理客戶項目,沒太多時間能花在自家項目上。為了有效開發自家應用,公司決定將人手分成兩組。一組負責客戶項目,另一組開發自家應用。不過,人手分配是一個很頭痛的問題。

    舉個例子:
    勝利組:技術好、學習快、質素高、責任高
    普通組:技術中、學習中、質素中、責任中

    開發自家應用理應選擇最好的組別;但把客人的應用交給普通組,又怕他們處理不來,又怕他們不能準時交貨。到頭來苦了大家又影響公司聲譽。把勝利組撥歸客人,又會令自家應用質素下降,對長遠發展又是不利。勝利組放在兩邊都適合,但不可能兩邊都參與。有點經濟學的兩難味道。我想,唯一的解決方法是把普通組提升至勝利組水平吧…。

    2012年12月17日 星期一

    D-U-N-S Numbers

    友人是 App 公司老闆,但他主力是 Facebook 及 Mobile 遊戲。他問了一個問題「Have you heard about DUNS number?」。我當時不知道,忍不住追查下去。原來這是 Apple 在六月時加入的東東,只在新注冊的公司版 iOS Developer License 出現。這個東東是免費的,但可會花上一個月的時間處理。然而,要快的話,付費即可。要免費的話,可在 Apple 這個頁面申請。

    2012年12月16日 星期日

    Google Drive SDK


    AMIGO Controller 加入了 Dropbox SDK,十分好用。但由於機體的動作文件都是用 Google Spreadsheet 編輯,如果加入 Google Drive 會更加方便。於是乎 Checkout 了 Google APIs Client Library for Objective-C。


    按照 Google 的指引設定好 Xcode,但組譯時發生錯誤。原來是漏了加入 SystemConfigure.framework。Google 的指引其實有註明,只是大意看漏了。組譯成功了,真機也能跑了。可是要生成 Ad-hoc 版本時,卻沒有所需要的選項。花了點時間,終於找到解決方法!需要在 GTL 項目的設定內,把 Skip Install 改為 Yes。這樣就能生成 iOS App 的 Ad-hoc 版本!

    2012年12月15日 星期六

    Apple Store Causeway Bay


    Apple 在香港的三號店在今天開張了。之前錯過了一號店及二號店,一定要感受三號店的開幕盛況。就在世界末日前傻一下,反正香港不知道會否有四號店。以下是今天的相片:











    今日發生了一段小插曲。一名 Apple Fan 碰巧生日,她的男朋友特意為他準備好蛋糕。由於不能使用明火爉燭,他更準備了 iPhone 的爉燭 App 代替。實在很花心思。

    2012年12月14日 星期五

    拉闊圖書館

    公司人數已有一打,是時候加入分享技術知識的環節。我決定開辦「拉闊圖書館」,一個月一次的分享空間。取名「拉闊圖書館」是出於對 Lakoo 的尊敬、出於分享的理念、出於對教學相長的認同;希望高總不要介意。

    拍檔提及他以前的公司有也類似的東西,可是最後淪為政治批判大會。建議小心處理。然而我很有信心不會走歪。畢竟這是純粹分享的環節,可以不認同,但沒有對錯之分。幸運地,我做過的公司(Gameone, Lakoo, U1)都不會出現政治問題;至少在我的部門內不容許。今次更加不能出現。

    第一課由我操刀,主題暫定為「Reverse Engineering」。希望能讓大家明白分享課的運作。

    2012年12月12日 星期三

    Dropbox SDK


    下一台二足機體打算以 iPad 作為控制器。要設定機體的動作,在 iPad 上還是不方便。最理想還是用 Numbers 或 Excel 來編輯。但編輯了的檔案又如何放進 iPad?我選擇了使用 Dropbox。它有不同平台的版本,在 Windows 內編輯好檔案又能自動上傳到雲端,十分方便。

    要在 iPad App 內取得 Dropbox 檔案也很簡單。首先在 Dropbox 的 App 頁建立一個 Dropbox 應用。下載 iOS SDK。再按照教學的方法去做。SDK 中有一個名為 DBRoulette 的示範程序,只要換上自己的 App Key 及 Secret 便能進行測試。

    2012年12月11日 星期二

    AMIGO Controller


    在 BlueTooth 4.0 LE 晶片還未到手之際,已開始控制器方面的設計。我希望能設計出一個簡單易用的介面,最好是能快速上手。機體的動作十分之多,如:前進、後退、左移、右移、左轉、右轉、蹲下、站立、攻擊、防禦、起身…等等。要能快速操作之餘,又要方便使用,更要設計簡約,實在很花功夫功力。目前的動作以搖桿方式來設計,似乎還能滿足,希望真正上場時沒有問題吧!

    2012年12月10日 星期一

    B.Y.O.D.

    B.Y.O.D. - Bring Your Own Device 最近成了我思考的題目。事緣要由三個月前講起。

    三個月前,新編程同事加入。每每有新同事加入,我們都需要購買新的 Mac 電腦。當時知道 Apple 將會推出新 iMac,心想如果能忍那一丁點時間才買,除了款式新性能快之外,新的電腦也可用得持久一點。碰巧新同事負責的是 Android 項目,用 PC 比較好;而同事又願意使用自己的手提電腦。所以決定在新 iMac 推出時才添置機器。

    三個月時間過去了。Android 項目依舊在開發中,iMac 也如期亮相,但近一星期才開始供貨。在思考是否購買新 iMac 的同時,同事已經習慣了 PC 的開發環境、使用的工具、以及私人的設定,也開始抗拒使用 Mac 機。如果是開發 Android 或 Blackberry 的話,PC 是比較方便。雖然同事仍很願意繼續使用自己的電腦,不過在公司的立場則另有考慮...。

    首先,PC 的盜版軟體特別多,管理起上來有點麻煩,畢竟電腦是同事私人的,有私人的文件,不能隨意審查。要靠同事的自律。可是當發生問題,負責人也有要負的責任。

    第二,檔案更新問題。雖然公司規定每天需要上傳最新代碼到 SVN 服務器,但人始終有遺漏事情的一刻。服務器內未必有最新的版本。遇上同事放假,便無法取得最新的內容。

    第三,保安問題。若同事的電腦遇上失竊或損壞時,內裡的資料也會有被盜用或消失的可能性。同事沒機可用,也會影響工作進度。還有病毒的問題,也有機會污染公司的網絡。

    我的考慮可能過多,但以上的情況是有可能發生。對於管理者角色而言,把事情簡單化是最好的方法。所以在未找到 B.Y.O.D. 的強優勢前,還是不要 B.Y.O.D…。

    2012年12月9日 星期日

    I.T. Fun Day


    今天上環市政大廈對出空地舉行了「I.T. Fun Day」。在場除了網友製作的機械人及電子板外,我也展出了公司的 3D Console Case。吸引了很多途人試玩,特別是小朋友。他們很愛玩當中的可樂汽水遊戲。有的更玩了十次以上。由最初只有數百分,玩到後來的最高五千分。能令小朋友玩得著迷,真是十分開心。

    2012年12月7日 星期五

    免 Jailbreak 取回 WhatsApp 的自動下載選項


    自從改用了 iPhone 5 後,下載了新版的 WhatsApp 2.8.6。這是一個很討我厭的版本。原因是「自動下載」選項消失了。跟友人說起,她比我遲一天使用 iPhone 5,而 WhatsApp 也是 2.8.6 版本;可是「自動下載」選項卻如常出現!除了是人的問題外,真的找不到差異之處。既然選項是會出現,那麼應該會在 plist 內設定清楚。

    利用 iExplorer 把 WhatsApp 的 net.whatsapp.WhatsApp.plist 抽出來,發現到「ShowAutoDownload」項目。把數值改為 true,儲存並取代手機上的 plist。重新啟動 WhatsApp,選項便重新顯示出來。

    2012年12月6日 星期四

    守時

    今日一早到客人的公司做 UAT。雖說一早,其實已是十點半。到達時客人說「嘩!那麼準時!?」。心想,約定了就必須履行,這是自小以來的家教。我十分重視承諾。承諾了便要盡力做到。可能有些人認為小事一樁,UAT 早一點或遲一點不會影響結果及進度;但我就是有這樣的執著。正所謂見微知著,看過很多成功人士的書籍,他們都是守時守諾的人,希望我有朝一日能跟他們成功。

    2012年12月5日 星期三

    CoreBlueTooth

    最近在計劃開發新機體,打算用 iPad 控制。自 iPhone 4S 起,Apple 的新 iOS 設備都使用了 BlueTooth 4.0 LE 晶片。除了低消耗外,最重要的是不用 MFi License 也能直接跟藍牙晶片通訊。真是一大福音!要達成以上工作,就要用上 CoreBlueTooth Framework。不過,我手上沒有 BlueTooth 4.0 晶片,目前還沒能實際測試。待在淘寶購買回來後再進行測試!

    2012年12月4日 星期二

    談 Startup 請人

    自從看過高總的《也談startup是甚麼》發現了《偉大航道》的 Keith Li,這位 Startup 前輩;在《香港 Startup 如何面向世界》聽了 Keith Li 經驗之談;到在 Facebook 上認識了 Keith Li 談 Startup 請人心得。

    過去一年來,公司不斷刊登招聘廣告。但應徵的人少,而且能力也較為普通,甚至乎是水準之下。然而,在八月份開始,應徵者多起來(但數目仍然很少)。經過反複面試,好不容易才找到較為合理的人。不過,三個月試用期後,還是有些人不能留低;也有人勉強過關。給他過關是因為請人實在太難,有點能力都希望保留,至少會帶來一點進度。可是,這個做法似乎是錯了。雖則是有人,但能力不及就是能力不及,工作做得長,又或者做不來;到時還要其他同事跟手尾,甚至影響士氣。因此,現在請人的策略是請多一點,汰弱留強。希進這樣能帶來好的結果...。

    2012年12月3日 星期一

    iPad mini with Retina Display


    最近網上開始流傳 Apple 在開發第二代 iPad mini。擁有高於視網膜的解像度。看來是理所當然,但我卻有點疑問,所以尋找一下支持的數據。按照一貫做法,第二代 iPad mini 是把 iPad with Retina Display 由十吋縮到八吋。既然十吋版本已經是已經是視網膜密度,再超越也感覺不出分別吧。不過,在數據上, iPad mini 是 163 PPI,變成視網膜密度的話,則會跟 iPhone 5 一樣是 326 PPI。從這個角度看,iPad mini 會擁有視網膜密度是有很高的可能性。