Monday, June 30, 2014

gcc visibility

在處理某個 bug (https://bugzilla.mozilla.org/show_bug.cgi?id=933588#c26)  時,遇到了 linking error :

hidden symbol '_ZNK7android6Parcel9readInt32Ev' is not defined locally


最後研究了一下
原來是本來的 build system 是用 -fvisibility
這只會影嚮到 definition
但後來用了 prama gcc visibility ,這是更 strong 的 directive, 也會影嚮到 reference 到的 symbol

Monday, June 9, 2014

The History of Scotland for Children

上星期到蘇格蘭玩時,看了一本
The History of Scottland for Children

http://www.amazon.co.uk/History-Scotland-Children-Fiona-MacDonald/dp/1842040731/ref=pd_sim_b_1?ie=UTF8&refRID=17F1AP7D6KX61M602H4R




是本簡明易懂的故事書(寫給小朋友的嘛~~)
不過特別的是
書中寫 某某某為什麼要作這件事時,都很直接明瞭的講
"因為他想要錢,想要當老大,...." 等等的

不會像台灣的書略過,或會寫著
"為了解救人民,為了多少同胞的未來,...."等

國外從小就在教育小朋友 "Why"
反過來如果是台灣的教科書,重點可能就在於 "Who, When, What"

另外書裡面也有介紹到羊毛,也很直接的就提到
羊毛的利潤遠高於農產品所帶來的利潤,所以地主為了飼養羊群,而把許多已住在當地的人們趕離,即使他們已經住在這好幾個世代,甚至好幾百年。

Wednesday, May 28, 2014

format NDEF for Felica Lite S tag

因為工作的需要
同事買了 NFC Forum Type 3 的 tag 來測試

http://www.identivenfc.com/en/nfc-tags/identive-blank-nfc-tags/blank-nfc-tags-type-3-felica-lite-42mm-dia.htm

這個 tag 其實就是 Felica Lite S RC-S966

http://www.sony.net/Products/felica/business/products/RC-S966.html

但現在遇到的問題是 不能寫 NDEF 進去

看了 Felica Lite S 的 spec,

http://www.sony.net/Products/felica/business/tech-support/#Lite01S

3.1.12 MC
裡面提到

Byte3: System Option (SYS_OP)
Perform the setting to store NDEF data. When the value of this Byte is 01h, FeliCa Lite-S is compatible
with NDEF
, and returns a response to the Polling command in which System Code of 88B4h or 12FCh is
specified. If compatibility with NDEF is unnecessary, set this Byte to 00h. With this setting, FeliCa Lite-S
returns a response only to the Polling command in which System Code of 88B4h is specified.
01h: Compatible with NDEF
00h: Incompatible with NDEF
02h-FFh: Reserve

拿了 TagInfo 的 app 來看這個 tag, 果真是 00h
(Block 88h, MC)


正在想說是不是要有什麼 Felica Writer 才能寫 NDEF 進去時
有發現到
  • NdefFormatable 只有在 Type 1 and Type 2 (Mifare-UL) 的 tag 才會有
http://androidxref.com/4.4.2_r2/xref/packages/apps/Nfc/nci/jni/NativeNfcTag.cpp#1347

  • 在 libnfc-nci 裡有對 Felica format 的 function, "RW_T3tFormatNDef", 而這會被 NFA_RwFormatTag() call 到,而且這個 API, 只對 Felica-Lite 的 tag 有效!
所以就想試著用這個 function 來 format 這個 Felica Lite S 的 tag
我的手機是 Nexus 5
再 call 了 NFA_RwFormatTag() 後 ,果真 format 成 NDEF format 了!!!



Tuesday, April 9, 2013

Javascript ES6 Striong.startsWith

之前看到 Javascript 裡 String 有個 startsWith 的 method,
就直接用了

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/startsWith

startsWith 在 Java 裡是個很基本的method,
在用的當時也以為在 Javascript 也是如此

沒想到他是到了 ES6 才有的功能
幸好 Firefox 早就作好了

https://bugzilla.mozilla.org/show_bug.cgi?id=772733


Sunday, March 31, 2013

Days in our lives 1


在台灣大家都說科技業工時高
但來了這後發現
國外的 RD 工時更高
只是他們的工時並不是只是由 "待在公司的時間" 來計算

到了一般的晚餐時間
他們也是一樣跟大家去用餐 or 回家
等享受完晚餐後
他們又回到 Hacking mode
而地點可能是某個 Bar, 某個 Reserved 的 Room
或者是自己的房間 or 家

然後就這樣 一直Hack到深夜
這樣的情形幾乎每天都可以在irc上看到


另外一個很大的不同是
國外的 Engineer 是拼了命的來搶bug
來爭取表現的機會
而不是等到他們的Manager 開口了才來

跟台灣公司這更是有很大的不同
這是有bug的就得拼命的推給別人