電影流水帳(2009/12/26~2009/12/31)

事實上寫這篇的時候,Gamer (2009)看了1/3,為了方便計算,還是先貼上好了,所以今年已經看完 101 片了,希望明年也可以!!

  • Cars(IMDB, Wikipedia),中譯:汽車總動員。中文譯名實在是很歡樂。我是在迪士尼頻道上分兩次看完的,而且是國語配音。描述一台賽車走 66 號公路經過某小鎮時,因違規被扣留在鎮上,這個小鎮因為66號公路被新開的高速公路所取代而日漸荒無。在被扣留的期間,賽車學到了許多事情,所以在後來回去賽車以後,他想起了這些事情,放棄冠軍,但卻因此取得代言,並且將人潮帶回那個小鎮。66號公路(U.S. Route 66)是一條很有名的道路,他橫跨了美國的東西部,Pixar 應該是為了要向這條公路致敬,才製作了這部卡通。卡通不難看,但比起Pixar其他的作品,感覺上就是少了那麼一點感覺。
  • My Sister’s Keeper(IMDB, Wikipedia),中譯:姊姊的守護者。片子以有點類似紀錄片的方式進行。一家人事實上因為姊姊的病,都放棄了許多的事情,只為了姊姊能早日康復。但是姊姊得的病是絕症,能活著,是因為媽媽的堅持,妹妹就是由於這份堅持而生下來,所以她捐了血、骨髓。可是現在,姊姊開始腎衰竭了,媽媽希望妹妹能捐出一顆腎臟。姊姊不希望再這樣下去,所以瞞著媽媽,請妹妹去找律師來打官司,爭回醫療監護權,避免捐腎,也不希望全家人再為了自己,而失去其他的幸福。最後,在官司結果尚未宣判前,因為哥哥在法庭上的發言,全家人都知道了妹妹的苦衷是由於姊姊的委託才請律師打這場官司,而姊姊沒能撐過去,走了。但根據Wikipedia上的說明,電影跟小說其實是大相逕庭,小說裡,是妹妹遇到了車禍,變成了腦死,律師同意捐出身體,反而是姊姊活著了。 這部電影很值得人省思,我記得這兩年台灣的新聞也有報導過類似的事情,就是救一個人該救到什麼程度呢??需不需要無限上綱??無限上綱的結果是對病人好,還是對病人的家屬好??這個力道的拿捏,真的是需要一份智慧。

電影流水帳(2009/12/23~2009/12/25)

眼看只剩下一星期了,連這次看完的三部,一共 98 部。剩下的一星期,能再看完兩部嗎??精彩精彩、刺激刺激。

  • The Dark Knight(IMDB, Wikipedia),中譯:黑暗騎士。描述Batman、Joker和Double face三者的愛恨情仇,原本Batman跟當時還是副隊長的Gordan想把檢察官 Harvey 拱成英雄,結果Joker來亂,讓Harvey的未婚妻掛了,也使得Harvey墮入罪惡深淵,最後Batman仍然要出來扛,變成 Dark Knight。這集很精彩,Joker有變態到,可以說是經典了,我看以後也很難有人能再突破。女主角Maggie Gyllenhaal讓我似曾相識,但看了一下她的profile,卻發現她只演過兩部電影,都是 Batman系列,這真是怪了。
  • Inglourious Basterds(IMDB, Wikipedia),中譯:惡棍特工。切成好幾個章節的電影,簡單的說,這是個復仇的電影。一開始女主角的家庭被出賣,只有女主角逃掉;鏡頭接著介紹Brad帶領的美國特工,這支部隊專門滲透、將德軍將領砍頭。再來介紹女主角後來的遭遇,她成了電影院老闆,邂逅了一個德國青年軍官,不過由於家仇,她並不賞這個軍官的臉。最後收斂到電影院,許多高官都到電影院看電影,美國的特工滲透進去放炸藥,女主角也在電影的最後一幕進行放火,然後…該死的幾乎都死光光了,只剩下Brad的美國特工。整部電影不知為甚麼有點悶,我在想會不會是字幕的關係,感覺上角色所說的話跟字幕好像不太對得上,可是卻又沒問題,有一種巧妙的違和感。不過整體上電影不難看,時有神來一筆,讓人會心一笑。女主角 Mélanie Laurent 很正,氣質很特別。
  • G-Force(IMDB, Wikipedia),中譯:鼠膽妙算。劇情一直線,很適合小朋友看,基本上劇情很像spy kid。我在不是很專心的狀態下看完這部電影。

C++ ctor 不能呼叫 virtual function

原本以為可以用上 template pattern 的,可是卻碰上釘子,怎麼編譯就是不能通過,實驗了好一會,才發現 constructor 裡是不能呼叫 virtual function 的,如果不是 constructor 的話,就可以。真的是學到教訓了,果然自己寫的程式太少。

電影流水帳(2009/12/18~2009/12/22)

聖誕節快到啦~祝福大家聖誕快樂~

  • 瘋狂的賽車(IMDB, Wikipedia)。挺有趣,看來不無聊的片子。拿銀牌但被終身禁賽的自行車選手、賣假藥但快破產的藥商、藥商的老婆、販毒的泰國選手、老是改行的姊夫妹夫、台灣來的黑社會和總想破大案的警察交織出有趣的故事。聽我同事說,戎祥跟九孔因為這部片子在對岸而打出知名度,恭喜他們了。對了,這部片的導演其實也尬了一角,他演的是計程車司機,回想一下計程車司機的樣貌,還真是想不到他是導演。不過很多導演其實都很深藏不露啊~
  • Law Abiding Citizen(IMDB, Wikipedia),中譯:重案對決。這是同事推薦我,所以才先看的片。男主角的妻女被壞人殺了,但壞人卻因為跟檢察官妥協的關係,並沒有遭到重刑。男主角懷恨在心,於是苦心耕耘十年,展開復仇。原本以為是復仇的,但看到後面卻發現不是,他只是想告訴檢察官,不要跟壞人妥協。這樣的邏輯真是很奇妙,畢竟最後還是死了很多人,那是為什麼殺這些人呢?就只是為了這樣?整體來說,還算是可看的片子。結局有點誇張,男主角用十年的時間買了許多地產,而這些地產則是用來挖地道,所以費城許多地方的地下都有地道,這也是男主角能神出鬼沒的原因,真是太誇張了。

python 的 site-packages 與 dist-packages

好鳥,如果你打算把你的 python script 包成 debian package,在 debian/rules 裡呼叫 setup.py 時,記得加上 –install-layout=deb。
如果不加,預設會把 package 裝到 site-packages 目錄下,但這個目錄是不在預設搜索packages路徑裡的。加上 –install-layout=deb 以後,才會裝到 dist-packages 下,這個路徑才會在預設搜索packages路徑裡。
想知道預設搜索packages路徑,可以先 import sys,再 print sys.path,就可以看到。
參考自:Python modules, distutils.core setup and install paths – Ubuntu Forums

svndiff 0.2

託 A 同事的福,找到了前一版 svndiff 潛在的問題-不加參數時,zenity 顯示出來的檔案比預定的要少。原因是餵給 zenity 的資料錯誤,應該要在實際的資料前多加一行空白,所以我在 awk 裡改用 printf 來輸出。
[bash]
#!/bin/sh
if [ -z $1 ]; then
FILES=`svn status | awk ‘/^[MCA]/{printf “\n%s\n”,$2;}’ | zenity –list –width=600 –height=400 –separator=\ –checklist –title “The files which modified/conflict” –text ‘Please select files’ –column ” –column ‘Files’`
else
FILES=$@
fi
for FILE in $FILES; do
svn diff –diff-cmd /usr/bin/meld $FILE
done
exit 0
[/bash]

電影流水帳(2009/12/13~2009/12/17)

寫劇情的話,就等於是爆地雷了。這真是兩難,如果不寫,就不太記得故事是什麼。寫了,又怕讀者說我爆地雷。算了,管它的。

  • District 9(IMDB, Wikipedia),中譯:第九禁區。與其說是外星人的故事,不如說是移民的故事。故事的一開始,以類似紀錄片的方式進行。外星人由於缺乏燃料被迫停留在地球,並且,就此住了下來,一住就是十年,這十年來由於種族的問題,使得他們所居住的區域,也就是 District 9,變成了貧民區,非常的混亂。南非政府想解決這個問題,於是委請 MNU 出面,請外星人簽下同意書,同意搬家。但事實上 MNU 的背後是個賣軍火的公司,他們希望能得到並且使用外星人的武器,但是外星人的武器必須要是外星人才能使用,是故,即使外星人把武器賣給了地球人也沒用。主角是 MNU 的一員,他負責這整個請外星人簽名的行動,在行動的過程裡,他被不知名的液體污染了,DNA 開始轉化為外星人,MNU 高層發現了此一事實,於是抓他去做研究,甚至要活體解剖。他逃了出來跟液體的主人碰上面,液體是燃料(我原本以為是生化武器之類的),外星人收集了十年才收集到足夠回家的燃料,外星人告訴他 DNA 可以轉化回來,於是他們合作回去拿液體。等拿到了燃料,外星人卻告訴他要3年,3年後才能回來救他,這下男主角火了,吵翻了,把外星人打暈。MNU 也展開追補行動,總之最後男主角良心發現,送外星人回去母船。坦白說,這部片真的是出乎意料的好看,而且反映出移民的問題,很合我的口味。
  • Law Abiding Citizen(IMDB, Wikipedia),中譯:重案對決。男主角妻女被殺,但兇手卻因為檢察官跟兇手做了交易,使得兇手並沒有得到與罪相符的刑罰。男主角很生氣,策劃了十年,展開一連串的行動,但這些行動只是為了要告訴檢察官-不要跟兇手交易!!這個理由,我覺得有點無厘頭。不過看男主角報仇的過程,還蠻爽的,很誇張的是他挖了一堆地道,十年真的可以挖這麼多嗎??我很懷疑。很有趣的是,我發現了演驚聲尖笑的女配角-Regina Hall,她難得演正經角色啊~

c++ 的 *&

當函數的 argument 宣告成 *& 時,該怎麼傳呢?
答案是要轉型一下,以下面例子來說,就是要用 (char*&) 轉型過,這樣編譯器就不會吐錯誤訊息給你啦~
[cpp]#include <iostream>
int f( char*& s )
{
printf(“>> %s\n”, s );
}
int main( int argc, char* argv[] )
{
char* s=”Hello world!!”;
f( (char*&)s ); // 要這麼轉!
}[/cpp]

Reactions in state

IBM Rational Rhapsody 裡的 Reactions in state 其實就是 UML User Guide – State machine 一章裡講的 Internal transitions。我覺得 Internal transitions 一詞比較清楚,一看就明白是什麼意思。
意即進入 State 以後,可以收到 event,但不會轉移到其他的 state,執行完以後,仍然還在原來的 state,這邊要注意的是,原 state entry/exit 裡的程序不會再被觸發。
舉例來說,假設有個 display state,entry 會執行 display(); reactions in state 裡定義了 evRepaint 時,會執行 repaint()。那麼,在進入 display state 時,display() 會被執行,如果此時收到 evRepaint,repaint() 會被執行,但 display() 不會再執行一次。

電影流水帳(2009/12/3~2009/12/12)

回頭看看自己寫的流水帳,還真的是不太想的起來片子內容是什麼,以後要記得,先寫故事大綱,再來寫感想跟感覺。

  • Ichi(IMDB, Wikipedia),中譯:盲劍。出人意料地,是凌瀨遙演的。描述盲女因為受到欺負,被收容的地方趕出來,她心裡很苦,想找到之前一直很照顧她的男人,問問他看是不是她的父親。在找的過程裡,遇到一個男人,跟佔據地方的惡黨,於是發生了一連串的故事(殺戮?!)。片子的最後,知道了她要找的人掛了,也因為她所遇到的男人,心裡比較沒那麼苦了。這部片子前面都還不錯,蠻好看的,只是後面的決戰讓我實在是猜不透,男主角為什麼能鼓起勇氣跟壞人拼?又是在什麼時候被捅了一刀(這運鏡一定有問題)?
  • 2012(IMDB, Wikipedia)。災難片、災難片,跟The Day the Earth Stood Still這部片相似,都是講2012年地球會因為太陽的關係而導致滅亡。片子的前半段,就是男主角因緣際會地發現各國政府隱瞞的事情,開始逃命,所以就是一直逃、一直逃。最後終於逃到西藏、各國秘密建造方舟的地方,順利登上方舟,經過差不多一個月以後,地球終於重趨穩定。最後的地方令人發噱,門是男主角弄到卡住的,解開以後,卻又讓大家為他歡呼,這真是…算了。純看特效的話,這部片子其實不錯。在科學的設定上,也還算合理。
    • 首先是船,原本我以為是太空船,後來知道是船的時候,才想到,當地磁混亂時,是不可能發射太空船的,所以以船的方式避過大洪水,看來是合情合理。
    • 選擇在西藏建船,除了地方隱密,中國政府有非常手段之外,我想地質結構比較穩定,地勢也較高可以說是主要的原因吧。地質結構穩定,就不會太快被翻起來,地勢高,可以確保船不會受到太大的衝擊。
  • Smart People(IMDB, Wikipedia),中譯:愛情智囊團。中文片名真的是亂翻,原本我以為是愛情喜劇的說。這是男主角家庭的故事。男主角是個教授,不喜歡學生、臭屁、自以為是的教授,因為
    1. 車禍認識了女醫生。
    2. 被收養的弟弟來到家中。

    而展開了故事。就故事本身而言,真的是很一般,甚至,有沉悶的感覺,不過幸好演員的演技把片子稍稍地撐了起來。