Sunday, September 28, 2008

Without Title VIII


Date: 15th Dec 2007
Location: Tochigi, Japan. (栃木県栃木市)
Equipment: EOS Kiss digital + EF 24-70mm

[2008OCT02 THU]
長假前的時光過得特別快,寫script、
檢查一堆QXDM/Eathreal log,一天就過掉了。

為甚麼我是倍受中緯度雨神鍾愛的小猫呢?(哭哭)
2004年拿到加簽後第3次加拿大旅行,
真希望有人類可以陪我開車去Banff呀。

Notes:
SSID: Service Set Identifier(a name to identify a 802.11 wireless LAN)

[2008OCT01 WED]
祈。晴。

[2008SEP30 TUE]
在家具店的櫥窗裡看到一隻橙色的貓,
總覺得他也在盯著我看,很溫柔地對我微笑,是一種不折不扣的幻覺吧。
也許... 哪一天,當我戀戀不捨地將視線移開櫥窗,
就會有人來拍我的背,那就是橙色的貓咪變成的王子吧。

我在大學時代果然沒把程式語言學好,
n年後的今天,我才赫然發現,
被我用到快爛掉的sizeof真正的身分竟然是operator
這已經不只後知後覺了,根本就是不知不覺了...

又是一段用來demo語言,而不該出現在現實世界的code:

這段code藏的概念是C++唯一吃3個運算子的運算元,是可以再nest的。
書上其實很好心地分成3行,看起來都很吃力了,
如果串在一起變上面這樣,就會造就貓在鋼琴上昏倒事件了。

[2008SEP29 MON]
筆記一下怎樣cout超過6個digits的double:


C++ Primer ch5.5短短的一個advice專欄,竟然用了
brevity, terseness, concise, succinct共4個「簡潔」,
欸,這本書是教programming的還是writting的?

[2008SEP28 SUN]
亂逛了些溫哥華和維多利亞的網頁,懶懶地,
完全沒有力氣規劃這星期五晚上即將開始的旅程,
我想,我需要的不是觀光景點,
我只是單純地需要逃離我現在完全不喜歡的打雜小妹工作。

Saturday, September 27, 2008

Starbucks City Mug—Madrid (Spain)


スターバックス・シティ・マグ―マドリード
(星巴克城市杯/星巴克城市馬克杯。西班牙。馬德里。)

★ My Starbucks City Mug Collection Homepage [link]

Friday, September 26, 2008

[USA2004] Mackinac Island




↑從Mackinac city搭渡輪往Mackinac Island途中拍的。





撮影日付:16th Sep 2004
撮影場所:Mackinac Island, MI, USA.(アメリカ)
機材:EOS Kiss digital + EFs 18-55mm

只有馬,沒有汽車的童話小島。

Thursday, September 25, 2008

おみやげをもらいました


Date: 24th sep 2008

おみやげをもらいました。
ありがとうございました =^^=

Sunday, September 21, 2008

Without Title VII


Location: Lyon, France.
Equipment: EOS Kiss digital + EF 24-70mm

[2008SEP27 SAT]

上面的code是從C++ Primer Ch5-2的範例改編的,
乍看之下很奇怪,因為現實生活中不該這樣用,不過,
上面的code還是可以用來demo一下這個語言的運作:
大於小於的邏輯判斷,
是運算元左邊的運算子比較完return一個bool,
所以上面兩個if被比較的cat,都是和一個bool型態(0或1)的值比。

[2008SEP26 FRI]
不要去思考工作的意義和價值,不然永遠都會為
「我這麼努力卻是做娛樂的?」這種不平衡而傷痕累累。
之前做案子的時候,有個RD跟我說過「要適時打混」,
那時候的我,對那樣的advice根本就是嗤之以鼻,可是,
現在的我,漸漸能懂那原來是一種智慧,
因為,很多很多時候,即使自己再努力,都不能改變些什麼。

半夜,又抓了一隻side effect的蟲,
global variable真的是不能亂用啊。

[2008SEP25 THU]
好恐怖的MSN SKY Driver,
竟然沒詢問使用者同意,就亂寄通告信。根本就是病毒啊!

寫code寫到第三天已經寫一堆了才發現,什麼,
竟然一換成release config,就會有prefetch exception,
而且還非常神秘地出現在WM_DESTROY之後...
很努力地debug整傍晚,又發現超神奇,把最佳化關掉就沒事了...
Beta 1 Internal Release。

[2008SEP24 WED]
小小的同窗會。好像又回到在東京office工作的那段時間。

parsing tool本日進度幾乎是0%。
今天都在弄streaming和檢查一堆call stack, 根本沒寫幾行code。

今天連續和兩個以前合作過的同事MSN,
雖然不見得真的有聊到做案子,但是聊完心得是超級失落,
人家今年都做幾個案子TA了,我卻只能當打雜小妹。

[2008SEP23 TUE]
parsing tool比預期中進度快,寫完80%的parsing了。
接下來就把點畫到全螢幕上面了。
其實,我覺得最難的,是不知道UI該怎麼設計會比較漂亮,
這個問題也許也是最不切實際的,
反正就Assistant Tool嘛... 我的user也不會有人管漂不漂亮。

每天都遇到壞人捏。
跟他約也裝死,請他吃好好吃的麻吉也不說謝謝。(怒)
哪裡有好人啊?????

[2008SEP22 MON]
今天開工的parsing tool,怎樣也不能徹底關閉。不過,
在issue解出來前,能寫的地方還是得繼續寫下去,
因此,一整天,我的device裡面住滿了
catPointParser1, catPointParser2, catPointParser3,
catPointParser4, catPointParser5, catPointParser6...
這樣不斷往上編號的程式 < >
還好,我最後終於找到兇手是一個沒有處理好的global變數。
不然我的device不就從此成了「幽霊アプリの棲家」@@
本日進度:全螢幕畫點介面、檔案輸出入。

晚上,和一個壞人約吃晚餐,吼,都走到公司外面了,
壞人才跟我說他已經吃飽了。(哭哭)
哼,下次我要改約好人了...

[2008SEP21 SUN]
再努力地撐10個工作天就是逃避之旅了。
我不知道等旅行結束,再回到台北office之後的日子,
還有我的未來的人生要怎麼過下去,
とりあえず出かけてみよう。

每次,在C++Primer裡遇到typedef,
我都很想說,準沒好事... 怎麼會這樣哩?

打雜小妹或許也是需要一點knowhow的...
前幾天,一邊填著FedEx的單子,我還得一邊Google說。
然後,要追殺人,也是要有knowhow的,
要有一張每個追殺對象的delay度和優劣質度的list,
如果是優質對象,那就等deadline前一個晚上再追殺就行了,
因為通常不用追殺,對方就會先來敲門了,
如果是劣質對象呢,那就要把用來擦眼淚的面紙準備好,
有一種狀況是每天追每天追,追到最後一天對方還堅持裝死,
另一種呢,就是那種什麼工作都不做,
就說我不知道/我不會/我沒時間/沒這種事的超厚臉皮者,
這種啊,就要有不要被氣死的心理準備。
還有一種劣質之下的,那種呢,就不要打電話了,
一切溝通全詳列於CC雙方老闆的信,
省得不但被氣死還要被對方反咬一口。
再來,當接線生也是要有knowhow的,
這點我還沒摸到訣竅,我比較像鸚鵡only repeating Q&A。
最後,是整理一堆信,這徹底是耐性大考驗,
就算再枯燥,再沒頭緒的內容,都要當字字珠璣,
省得沒有讀出弦外之音而慘遭天打雷劈波及。
唉。也許這堆通通都是渡世間所需的學問, 但是這些都不是我想要的啊。
我希望我是一個對radio network瞭若指掌的engineer,
我希望我是一個對coding的心應手的engineer...

Saturday, September 20, 2008

[France/Swiss 2008] 美食之都。里昂。






窗邊的座位向外拍。街景。(非餐廳外觀)








主菜: 煎牛肝



Restaurant: Le Laurencin
City: Lyon, France.
Date of visit: 9th Feb 2008

Thursday, September 18, 2008

Starbucks City Mug—Heidelberg (Germany)


スターバックス・シティ・マグ―ハイデルベルク
(星巴克城市杯/星巴克城市馬克杯。德國。海德堡。)

★ My Starbucks City Mug Collection Homepage [link]

Monday, September 15, 2008

Without Title VI


Location: Trois-Rivieres, Canada.
Equipment: EOS Kiss digital + EF 24-70mm

[2008SEP20 SAT]
Korean Barbecue with Mr.Stone & Miss Snow.
冬眠日。

[2008SEP19 FRI]
City Center tour。
逛蘋果店。Mr.PC和Mr.Mac的廣告影片超搞笑 XD

team裡面的老大之一終於歸隊了,很多事他做掉了,
這兩天有突然從地獄重返人間的感覺。
今天主要是寫script,非常非常勞力密集的工作,
不過,不要讓我整天追著莫名奇妙的人們跑,日子就都很好過。

Mr. R, why don't you say we are sorry?

[2008SEP18 THU]
和新同事J的晚餐。真是難得。
難得之一,我有吃晚餐,難得之二,我和人類一起吃晚餐。

[2008SEP17 WED]
Device大概知道我心情不好,
竟然在那邊上演恐怖幽默來搞笑,讓我哭笑不得。
我丟著讓程式跑script的device,在我突然抬頭關切它的時候,
它竟然偷偷打開我的聯絡人,
而且眼看著就要把第一個聯絡人的號碼撥出去了...

[2008SEP16 TUE]
もう限界だった
又開始覺得得去看心理醫生了。
Everything is so messy. I hate my job.

一隻笨蛋小貓蟲。
照理說,動態define的array,
應該要用delete [] arrayName釋放掉才對,
不過,我的程式,反而是釋放了就會掛掉 @@
沒有道理啊... 經過了一天的百思不解,
我突然發現,原來問題真的是出在掛掉的那行,
我的程式有動過arrayName指到的address,
所以最後delete根本就不是原本new出來的那個array的開頭了。
(昏倒... 我只能安慰自己,不經一事不長一智。)

[2008SEP15 MON]
Monday Night Feast.
星期一過得太歡樂,接下來的4天恐怕會很難熬...

又有海外member重大疏失,這次team leader忘記罵我了,
可是,我還是很無言,我的know how讓我知道怎樣去面對device的issue,
但是這種人為issue,我實在無從抓起,也許是因為我就是沒有sense吧,
現在的工作真的讓我很累很無力...

strncpy, strncat要把null termination算進去,strlen卻不算。
我該慶幸我也是學語言的嗎?
比起自然語言常常無可理喻的文法例外,
程式語言這樣根本談不上是例外case的function design,還是小case吧...
熟能生巧...熟能生巧... (催眠)

[2008SEP14 SUN]
const和pointer的恐怖二人三角關係。
經過一整晚的混戰,我才從徹底被它們打敗的劣勢大逆轉。

case 1:

cat是一個pointer to int,而且不可以透過pointer改int的內容,
不過cat這個地址本身不是const,所以要放其他地址是ok的。
而且,因為dog也是可以改的,改dog,*cat當然會跟著變。

case 2:

如果剛剛的想懂了,這個case就會比較簡單。
剛剛是pointer去指東西那個關係是固定的,
現在變成那個address是固定的。
所以現在不能換address,卻可以換指到的內容。

case 3:

之前的case不是可以改地址就是可以透過pointer改內容,
如果兩個都是constant,是不是就安全了呢?
從pointer的方向來看是yes,
但是,因為這個地址和指的內容都不可以改的pointer
所指到的int並非constant,
所以從被指的int下手,用*cat取值還是會變不一樣。

case 4:

經過了以上3種case,這個就全部綁住動不了啦。
不過,const和pointer的兩人三角關係其實還沒講完。
當它們用在typedef,又會出現讓人頭昏的case了...

Sunday, September 14, 2008

[Canada 2006] 楓糖屋。加拿大東部傳統佳餚























Date: 2006 Oct 4th
Location: Trois-Rivières , Canada.
Equipment: EOS Kiss digital + EF 24-70mm
Restaurant: Sugar Shack Chez Dany

Saturday, September 13, 2008

[MSN Icon] otter with rabbit hat


Equipments: EOS Kiss digital + EFs 60mm
Date: 2008 SEP 12th

Cat Photo Art for Free MSN Icon Serioes.

Friday, September 12, 2008

[catAP] catGSM7bitUnpacker (v.c1.0.0)

Application Name: catGSM7bitUnpacker.exe
Release: 1st Release (v.c1.1.0)
Download: Click Here (NOT right click then save)
OS: Windows XP
Size: 11KB
Type: Console
Description: 3GPP TS 23.038 defines GSM 7-bit packing for SMS / CBM / USSD. This is a free AP which can unpack GSM 7-bit packing PDU.

Example: paste 54747A0E4ACF416190384C068DC37417 into the AP, it returns "This is a bad cat."

[Japanese/日本語]
説明:この無料ソフトは「GSM 7-bitパッキング」したPDUをGSM 7-bitに戻します。

[Traditional Chinese/繁體中文]
說明:本免費軟體可還原依據3GPP 23.038「GSM 7-bit封裝」方式封裝的PDU。


please feel free to write me if you have find any issue of this AP.
contact: winnielee0204(at)hotmail.com

Thursday, September 11, 2008

Starbucks City Mug—Stuttgart (Germany)


スターバックス・シティ・マグ―シュトゥットガルト
(星巴克城市杯/星巴克城市馬克杯。德國。斯圖加特。)

★ My Starbucks City Mug Collection Homepage [link]

Sunday, September 07, 2008

Without Title V


Location: Trois-Rivieres, Canada.
Equipment: EOS Kiss digital + EF 24-70mm

[2008SEP13 SAT]
秋眠。

How to cout (printf) a double quote:


[2008SEP12 FRI]
GSM 7-bit unpacker寫完了,雖然只有陽春的console。
不過,需要parse CBM的機會也不多,堪用就好:P

[2008SEP11 THU]
寫CBM PDU unpacking弄了一個晚上,
一開始想用bitset, string, vector寫,
可是發現轉成bitset再轉會變很複雜,
還是用char和int加加減減還有互轉比較簡單。

溫哥華水族館的牽手海獺實在太太太可愛了呀。
狀況外的人,請上YouTube用sea otters查詢。

[2008SEP10 WED]
對,是我的錯,我沒有做到內部sync和communicate。
可是,當我在field的時候,
有人一條條幫我sync已經寫成白紙黑字的issue點嗎?
徹底無力感和bad mood。

(MSN對話)
小貓: 我想掀桌子。
某RD: 哈哈 妳以為妳是神力女超人喔 公司這種辦公桌怎掀?

難得動手仔細check完一條issue的log.
可以看log想問題可以怎解真的是很快樂的事情呀,
我相信,就感覺層面而言,
解issue絕對比每天追著一堆人(又得不到成果)簡單很多。

本日C++新發現,原來印array可以用下面這種奇妙的方法印。
看看娛樂就好,code有可能是要寫給別人接的,除非特殊情況,
不然還是盡量用普羅一點的寫法,以免接的人看得想撞牆。
這個範例,應該是用來展示pointer和array關係的show window吧。


[2008SEP09 TUE]
真心話大告白的後續,顯然是個悲劇。可憐的同事B。
我已經試過了,可是我還是幫不了你...
我自己的工作還是在苦撐,掉淚,苦撐,掉淚的惡性循環下渡過。
我已經徹底受夠了現在的工作內容了,
希望等時機成熟,上天肯賞我一份單純的technical job。

照例還是寫code寫到快天亮。
各種array, pointer和reference的密集大轟炸。
一邊寫一邊想然後cout對答案。
現在的我,好像比學生時代的我更認真唸書。

好安靜。覺得好孤單。
那個會陪我說話的你,躲在這個地球的哪裡?

[2008SEP08 MON]
原來,我那麼想要的機會,卻不是每個人都想要的。
真心話大告白? 結果可以是皆大歡喜嗎?

履歷表真是諷刺的東西,
我只能寫著好看的公司名稱和職稱,
卻不能在上面寫著實質職務內容:總機兼打雜小妹。

雖然C++ Primer這本書號稱經典,
但是我實在想不懂,
為什麼要用下面那個被我稍微改過的謎樣的範例來當範例。(@4.1.2)
我可以理解用size_t來當for loop counter type的用意,
但是,既然刻意用了size_t預防error-prone coding,
為什麼又把size_t塞近一個int array咧?!


[2008SEP07 SUN]
休日午後的咖啡館時光。Girl's Talk.
然後是書店探險,順利找到Vancouver的書,該放個長假了。
逃避不能解決問題,但逃避會是阻止徹底毀滅的方式之一吧。
I need to well prepare myself and wait for the chance.

Saturday, September 06, 2008

RFC 2616 Notes

10.3 Redirection 3xx (轉址)
This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request.
(此類狀態代碼表示user-agent需進行其他處理以完成其對伺服器之要求。)

10.3.2 301 Moved Permanently
The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs.
(user-agent所要求資源已指定新URI,對該資源的任何參照,需使用Location欄位所回應之URI。)

HTTP 1.1 Response Code Table
1XX Informational
100 Continue
101 Switching Protocols
2XX Successful
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content
3XX Redirection
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
4XX Client Error
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
5XX Server Error
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported

Friday, September 05, 2008

Code Lab Notes

Standard C Library Function
strstr (finds the first occurrence of a substring of characters)

#include <cstring>
char *strstr (const char *str1, const char *str2);
☆ Check if the second string is a substring in the first string.
☆ The second string must be completely contained in the first string.
☆ None NULL return is a pointer to the first matched char. So if the second string in above code is "sad", the printed-out will also be "sad cat".
☆ Case sensitive
☆ Do not cout the NULL return directly in above code. (RunTime Error)
☆ If the second string contains no character, it will print out the first string completely.