2012年8月31日 星期五

NXT Gyro Sensor


在 Yahoo 以 HK$498 拍賣了一顆《NXT Gyro Sensor》。雖然比市價平了,但一顆樂高積木要價 HK$498,真在很貴。不過,要造出 Segway 及自動平衡單車,非要這顆積木不可。

2012年8月22日 星期三

Region 通知的限制

Significant Region Change Limitation

替客人開發的 iOS 應用有一個通知功能。這個功能要在應用沒有打開時,當使用者走到某個位置時會彈出通知。我簡單地用 iPhone 4 試過是可行。不過,客人想把這個功能套用到 500 間店舖,一個意料之外的大數字。雖則只是把座標登記到 iOS,可是,這個數目不知道是否能被系統接受...。於是在實機上進行測試,發現最多只有 10 個座標生效!由於機能限制,我也無能為力。

突然想起以前編寫 ASM6502 時,礙於資源短缺、8-bits 定址(不能跳太遠)、記憶體非常少的情況下,有些功能本以為無法實現,只要轉換方法就能成真。於是努力去想,最終給我想到一個方法,不知是否成功。有待實驗試作!

2012年8月21日 星期二

Raspberry Pi Model B


最近有舊同事及網友購買了 Raspberry Pi,好奇之下一看,發現是一塊很好的電子板。它有 HDMI, AV 影像輸出,也有 SD 卡槽,又有 USB 接駁其他裝置,更有 GPIO。用來作為機體的主板實在不錯。它跑 Linux 之餘,也能運行 Android Jelly Bean,執行 PHP, Python 也行。價錢 HK$300 有找,實在吸引!可惜目前缺貨...

2012年8月19日 星期日

ABU Robocon 2012

早幾天才知道亞太廣播聯盟機械人大賽 2012 在今日舉行,當刻立即到網上預約入場門劵,可惜已經全部派發完畢。本來打算放棄,但這樣的國際賽事在我家附近舉行,不去的話真對不住自己。於是早上十時便到達會場「撲飛」。那個時候入場的人數不多,找不到有剩餘門票的觀眾。幸而在詢問處得知,要是在十一時仍然有座位的話便可以進場。帶著女兒吃個早餐後,時間剛好,也有幸進場。

我最想看的是日本隊的表現,可惜進場時剛剛完結。一路看來,最令有驚喜的是印度隊及越南隊。他們的機械靈活性高、速度快、時間準。真的大開眼界。由於買了戲飛看「低俗喜劇」,無法看畢整個比賽,在看完日本隊在八強的表現後便離去了。

當日相片:https://www.facebook.com/media/set/?set=a.10151125099302022.467839.590742021&type=3

2012年8月18日 星期六

從細節看 Apple

Steve Job 離開了我們十個月的時間裡,隱隱約約感覺到 Apple 的變化。

Mountain Lion 進一步整合 iOS 功能的同時,使用難度相應增加。先不說對頭人 Google Drive,連簡單安裝 Facebook SDK 3.0 也給欄下來,需要手動解除封鎖。對不熟悉電腦設定的人來說,是一個門檻。QC 方面也每況愈下,臭蟲多了。經常出現畫面上的問題,如工具欄沒有縮回去、明明在用 Photoshop 但系統列卻顯示 Finder、屏幕保護播放時按了鍵卻沒反應、等等。

電視廣告方面,正如很多評論所指,違背了 Apple 一向的風格。iPhone 5 的超多諜照流出。MacBook Pro Retina Display 出現訊號問題。這些以前不會出現的,現在都發生了。似乎 QC 真的差了,而且是差了很遠…。

2012年8月14日 星期二

Objective-C 下的 URL Safe 解碼

最近經常使用 Objective-C + Javascript 混合編程,如果數據由 Javascript 傳回 Objective-C 時,有機會變成 URL-Safe 字串。這時便需要用以下句子還原:

string = [string stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

2012年8月13日 星期一

天使投資中的魔鬼

最近跟一家新創公司接觸過,發現他們的產品不錯,而且有潛力。原本他們能賣出產品、我們能提升應用功能、客戶們能有更好的應用範圍,可謂三贏的合作方案。合作一直順利進行,但最終無法合作。原來當中有一位投資者在阻礙事情的發生,而他也正正是我們的直接競爭對手。

這件事對於我來說,學到了天使投資者的影響力有時真的不少。如果投資者沒有顧及新創公司的發展而從中阻難,團隊需要花費心力在爭拗之上,甚至影響發展,實在本末倒置。當然,也有可能是惡意注資。幸而,BeyondZ 的投資者對我們團隊十分信任,沒有干預開發及行政方面的事情,讓我們能有充份的空間發展,實在難得!多謝投資者給予的機會!

2012年8月11日 星期六

The 1st Hong Kong Mini Maker Faire


第一屆 Hong Kong Mini Maker Faire 已經完滿舉行。BeyondZ 的 iPad 3D Console 吸引了不少在場嘉賓試玩,實在很開心。今次盛會未能親身參與實在可惜。希望下屆能再次參與。多謝 Keith, Mike, Andy 及眾多網友舉行這場盛事!

2012年8月10日 星期五

Barcode SDK for iOS

最近有個項目需要加入「讀取條碼」功能。搜尋過坊間免費的開源方法,最好的是 ZBar SDK。不過它是以 Library 的形式提供,無法讀取代碼,也無法做出修訂,目前算是夠用。不過,在 iPod Touch 4G 上執行不了,主要是因為沒有自動對焦,較難進行正確的影像分析...。

2012年8月3日 星期五

不要浪費時間

新同事早上向我辭職了。原本他打算完成手上的工作才離開,可是要完成工作,非一頭兩個月不可。經過協商後,決定本日是最後上班的日子。

新同事的離開早已心中有數,事關平日的工作對他來說十分吃力。雖然他很努力學習,但進度還是很慢。有一次聽到他想的邏輯真是萬丈火起,禁不住拋出一句:「你這樣下去真的不行,我建議你還是考慮轉行,不要做編程人員!不要浪費時間!」。這句說話可能很難聽,但卻是真心誠實的。編程是一種能力,就像作曲一樣,不是每個人都能做,多少有點天資。我不是說沒天資不可以為之,只是要付出非常多的努力才能達到一般的成果。要是花了十年才發現不合適,到時要重頭來過,倒不如在開始時認清自己是否願意下一番苦功吧!同事經過考慮後,決定轉行。祝他一切順利!

P.S.世事真奇妙,他在校內的編程項目是拿 Credit。可能是我教導無方而矣。

2012年8月1日 星期三

Sin Wave 的用法


新同事在最近一個開發項目中,需要把圖像由畫面一處以拋物線的方式傳送到另一處;他不知道從何入手。於是教了他使用 Sin 弦波的方法。Sin 弦波前半段的曲線有點像拋物線,拿來使用十分方便。只要把起點與終點的 X 值對映到圖表的 X 軸,把拋得最高的高度對映到 Y 軸便可。如:y = sin(x) x 100 pixel。圖中藍色線為 Sin 弦波,紅色線為程序內使用的軌跡。