2008-11-30

能力越大,責任越重

好久沒文章了,最近真的忙到炸掉,哭哭

剛睡前突然想到這句話 "能力越大,責任越重",深有感觸。
之前我家養了阿毛的時候,他相當黏我,所以我舉手投足都要隔外小心,特別是睡覺要翻身時,都要再三確認不會壓到他,才能行動。當 "能力" 不過是 8x kg 的體重時,對應的責任大概就是這個 scale。

當人類在操縱交通工具時,這能力可就大得多,一但發生意外,後果也不像阿毛頂多在地上滾個兩圈而已。然而太多人對手上掌握的能力,並沒有負起足夠的責任。所以馬路上超速、闖燈、開車講手機、過彎不打燈、隨意變換車道、恣意停車、市區/校區內打遠燈/霧燈、這樣的行為比比皆是。

我總喜歡說,三個人以上的問題,就是政府的問題。當民眾違規時,政府未能以有效的教育遏止,亦未能檢討規範本身的適應性,只會想到要嚴加掃蕩增加預算,這樣的政府也算是未能盡責了。但由電視上的作秀、攻訐、結黨、牟利事項來看,或許要求他們能盡本分,也算是種過分的苛求。至於依照充滿了可笑假設與假想推論的經濟學思維來建構市場,放任炒作結果被戳破造成經濟衰退,這樣的問題大概也很難歸咎於任何人吧。

人民沒有智能和道德,就會選出這樣的政治人物;媒體與政府自然會投其所好,也阻絕了人民進步的唯一機會。照這樣說來,既然人民嘗了經濟發展(炒作)時的甜頭,那麼泡沫破滅時嘗到蕭條的苦,也只能說是公平的待遇。世界上的人類要到什麼時候,才能學會地球資源有限,多取只會造成他人匱乏,只有放棄私我謀求眾利才能夠共同發展呢....

還記得以前的課本裡提到過一些 "捨己救人" 的故事,這些故事在近十年內大都被刪除。我認同無謀的救人行為不該被過度美化,但若不以政令教育的方式,為人民樹立良好榜樣的話,他們就只會去學習電視上所見的那些 "明星" 而已。

說實話,比起那些賣臉賣肉賣聲音,飽食終日言不及義的傢伙,或許路邊的清潔工還更值得欽佩些。

順道亂罵,與其叫學生上服務課,做些狗屁倒燥學不到東西的事情,倒不如叫那些學校長官自己去抱垃圾袋等垃圾車。讓一群人去訂定另一群人的規則,不鬧大笑話者幾希。台灣的機車與車道政策如此,經濟政策如此,學校到垃圾與服務課的規定亦是如此。

2008-11-19

ipfilter 隨手亂記

ipfilter 可以從這邊下載,vista 下的放置點:

  • emule: %APPDATA%\emule\config (吧,忘了裝 XD)
  • uTorrent: %APPDATA%\uTorrent

2008-11-13

論語 :: 為政篇第二 210

原文自貼上

為政篇第二 210
子曰:“視其所以,觀其所由,察其所安;人焉廋哉?人焉廋哉?


這篇講的應該是孔先生的識人之術。以前課本總喜歡說,老孔對學生因材施教,如果不能明瞭學生們的個性,是不可能對每個人都搔到癢處的。所以這句解釋了孔先生是怎麼看清人的。

對於 "所以" 、"所由" 與 "所安" 的解釋似乎有不只一種,所以我決定再提一種 XD
我會把 "所以" 當作是動機解釋,而 "所由" 則看成手段。對於 "安" 這個詞,指得可能是他待了舒適的環境,或者是他處世的態度。"瘦" 在這邊念 "搜",指隱瞞,這應該是國文常考的題目 XD

這段的意義在於,若要看清一個人,應該去注意他做事情的動機與手段,以及所處的生活圈 (交友與生活環境)。從反面來解讀的話,則是說人不可能只靠著巧言令色與隱瞞,來偽造出不符合事實的形象。

我對這段的感觸是,如果媒體能在平時以更寫實、有意義的手法報導政治人物的行為與言談,而非在安泰時拍拍小狗狗,出事時又去抓誰上了手銬的鏡頭,那麼有智慧的人民將能看穿虛假的偽裝。至於人民、媒體、政府三方面要如何突破現況開始成長的問題,就以後再談吧。

換換口味

換換口味,來念些不一樣的語言吧 ^^;

還記得中學國文課最喜歡考默寫,寫錯一個字扣一分,扣完就沒了。我那時想說花半小時去記五六百字,然後考一段五十字十分,這樣念書好像不太合本錢,所以國二之後就都不背課文了。反正正常平均若有 85 分,少 15 分也還不致於會被當掉。好在當時的國文老師也算明理,因此能容許我做正確的選擇。雖然我對於引經據典背多分毫無興趣,不過我還是堅持要看懂每一篇文言文的。不只是知道某某人講了什麼 (充其量只是把翻譯也一併背下來) ,而是要弄清楚這樣說的意義在哪,並且在現代生活中能如何應用。

到現在過了十幾年,當時記性很好的同學們口中,似乎沒了這些古文的蹤影;那些應該也背過,想必也考得高分的 "大人物" 們,行為卻又完美的符合了古人對於遜砲的定義。在國文課修習古文,應該是讓學生了解千百年前的生活語倫理教材 (如論語) 、陳情書 (如出師表) 、信件 (超多的)、日記與幹醮 (詩經) 、哲學理論 (道德經) 究竟是怎樣,是否或應如何適用於現代社會,而不只是一堆又一堆的有序文字串列而已。

所以呢 ? 就因為這種 "酒肉穿腸過,佛祖心中留" 的態度,我們有熟知中華民國法律但又貪贓枉法的法官律師,我們有念過希波克拉底誓詞但又忽視病患權利的醫師,我們還有滿街跑通過職業或一般駕駛執照考核但又根本不會開車/騎車的各式駕駛人。我不敢說是 "默寫" 造就了這種表面功夫的文化,但兩者背後是同一種機制,這也是無可否認的。

越離題越遠,總之我對許多行為相當感慨,所以決定來重念一些很老的文章 (回舊文 !?),順便加上我自己的解讀。當然,我的解釋未必要和其它人相同:就我念過的文字總量,在古代應該也算得上是大師了吧 XD 爭論哪一家的解釋比較正確,這種事死無對證,老子是全無興趣的。

以下是古文原文參考來源 (不要想爭文章或解釋正確性的事情。本系列重要性依次為我的解讀、原作者的想法、原文,與其它人的想法):

SQLite + Python ?

前陣子想說,在 PHP 以外,應該學點其它的 Script 來用,所以選擇了 "There's only one way to do one thing" 的 Python ,而非 "There's MORE THAN one way to do one thing" 的 Perl。這是個人喜好問題,所以沒什麼好談的。

至於會想把重心偏離 PHP 的原因,是因為我堅信 "好的語言要基於良好的架構,以及寫得夠好的 manual (進入障礙低)"。十年前,PHP 的 Manual 相當易查易用,主頁面顯示兩層的內容,其中第二層便是函數名稱,且包含函數簡短說明。因此我在一夜之前 K 完其中的大半。幾個月前我又瞄了一下 Online Manual,發現整個架構變得難讀了。主頁面現在只顯示第一層分級,並且沒有說明;各函式的說明又跑到了第四層,而且在 1-3 層都沒有說明。也就是說,我必需要 Click 兩次才看得到函數名稱與說明;或者是,才知道我有沒有走錯分類。除了 Manual 變差以外,在 PHP 涵蓋越來越多功能以後,遲不引入 namespace (或 module) 的概念,會使得多人合作開發系統,或者是程式的引用越來越容易造成麻煩。

至於 SQLite 的故事就更簡單了。我一直有在摸 MySQL (雖然也只在爛使用者的水平),然後之前聽到 Izero 長輩說 KKBox 是用 SQLite 儲存資料,就對這個 Embedded DBMS 有點興趣啦。

然後幾週前,我想說既然平常都是用 PHP + MySQL 來寫東西,何不試試 Python + SQLite 呢 ? 網路上雖然有 Python 2.5 以後內建支援 SQLite3 的說法,不過我試的結果似乎不是如此 XD

  • Windows 版的 Python 2.6 內建 pysqlite2,所以支援 SQLite3。那個 "2" 是 pysqlite 的版本號。另外,我家 AMD AthlonX2 5000+ 跑 vista x64 裝 Python 2.6 AMD64 會當掉,真不知道這是給哪一家的 AMD64 裝用的 XD
  • FreeBSD 用 Ports 裝的 2.5 有包含 sqlite3 這個 lib 的目錄,不過似乎沒有加上 pysqlite2 的 dep。所以要再裝 /usr/ports/databases/py-sqlite3 這個 port
  • Ubuntu 裝太快了,我忘記當時有沒有點 py-sqlite 這個套件,下週應該會再組一台,到時候再看看;Mac 不在手邊沒得試 XD

2008-11-12

從 SQLite 看 SQL (2) :: 隨隨便便的資料庫說明

現在的 RDBMS (關聯性資料庫系統) 多半是長這個樣子:

  • Database 1
  • Database 2
    • Table 1
      • Column 1
      • Column 2
      • Column 3
      • * Index 1
      • * Index 2
    • Table 2
也就是說,資料庫系統底下有好幾個資料庫 (Database),每個資料庫底下有好幾個表格 (Table)。每個表格可以包含有好幾個欄位 (Column),然後每個欄位各自要設定名稱,資料型態,能不能為空值,等等的屬性。資料則是以列為型態在存表格內,稱為資料錄 (Record Set) 或是資料列 (Data Row)。為了加速搜尋,可以將表格的某些欄位設為索引 (Index),那麼在對這些欄位檢索資料時,速度就可能可以加快 (特別是對複雜的查詢)。

有些 DBMS 要求使用者先行登入,並且包含某種型態的權限系統;有些 DBMS (例如 SQLite) 就沒有這樣的設計。另外,有些 DBMS 會設計各種內建函式或語法,使查詢的方式變得更多樣化 (如果能透過下 Query 解決的問題,就不要把資料收到 Script / APP 裡用程式自己算),效能也更高;有些 DBMS 則因某種原因,而不提供某些語法。所以在使用時還是要 K 相關使用手冊。

另外在設計資料庫架構的時候,常有許多考量。這點就自己去 K Google 或翻書吧 XD 比較熱門的大概有正規化,還有寫程式碼時要避免 SQL Injection 等等。

SQLite 具有一些相當有趣的特性,大致上包含:
  • 無需設定
    SQLite 本身是嵌入式資料庫系統,因此無需繁瑣的安裝或維護資料庫系統本身的程序。其它資料庫系統雖然運作得也不錯,但光安裝就可以搞死人了。
  • 非主從式架構
    對大部份資料庫系統來說,你必需要先把它們裝起來,然後透過網路 (即使是連到 localhost) 登入進行作業。使用 SQLite 時,只要能有在硬碟讀寫檔案的權限就夠了。雖然如此,這也使得若程式有蟲,可能會影響到資料庫的正確性 (因為沒有 Server 來管理維護);並且資料庫檔本身的安全性也較差 (少了 Server 的權限控管)。
  • 資料庫只有一個檔案,而且可以跨平台
    SQLite 的資料庫是直接存在檔案裡的,而且檔案可以攜至各種平台使用。這樣備份,搬檔都很方便。
  • 精簡
    SQLite 在編譯後僅佔極小的空間,所以使用它的程式不會變得太過肥大。
  • Manifest Typing
    大多數 DBMS 讓 Column 指定型別,然後只允許符合型別的資料被儲存;SQLite 則讓每個值擁有自己的型別,因此你可以把字串塞進型別為 int 的欄位中。有人覺得這是 bug,不過 SQLite 堅持這是一項 feature。如果能被轉型的話,SQLite 還是會把資料轉成設定的型態的。唯一的例外是當碰上表格的 Primary Key 時,SQLite 會強制將值轉為 int。
    因為有這項特性,我在寫 SQLite 時都不太設欄位型別了 XD
  • 可變長度的欄位
  • 高級原始碼 -- 保證可以由人類看懂
  • 將 SQL 編成虛擬機器碼
    SQLite 會將丟進去的 SQL 指令先編成虛擬機器碼,再真正的去執行搜尋。使用 EXPLAIN 指令將能看到這些碼,有助於除錯等等。
  • 程式碼完全屬於公領域
    SQLite 是完全自由,不受著作權法干預的。(甚至不是 GPL,或是 CC !) 任何人可以將 SQLite 應用在他想要的地方。 (不過著作人格權應該還是受到保障吧,我亂猜的)
  • 對 SQL 的擴充性
    SQLite 提供一些提升效率的工具,例如前面提到的 EXPLAIN 與 Manifest typing。此外 SQLite 還提供了一些標準之外的語法,如 REPLACE, ON CONFLICT, ATTACH, DETACH 等。SQLite 甚至還有 API 讓你可以在 SQL 裡安插自定函數及 Collating Sequences (我不清楚這是啥 @@ 等 K 到這邊再說)

從 SQLite 看 SQL (1) :: 起頭

最近因為某種原因 (不是上次的幫 SPORE 蓋房子了),又回來碰了一下資料庫。隨手翻了一下,發現 SQLite 的官網文件中,關於 SQL 指令的說明相當淺顯易懂,因此打算沒系統的亂翻一下,順便給自己當個備忘。當然,網路上關於 SQLite 的特性與推廣已經夠多了,不需要在這複製貼上 XD

這系列文章的翻譯沒有時間表,更沒有行程表 ! 嚴禁摧稿 (OS: 其實跟本沒人要看吧,哭哭~) 預定之後會分別對 SQL 裡的指令,藉由翻譯 SQLite 文件中的對應項目來做說明。暫定可能照 CREATE, ALTER & DROP, INSERT, DELETE, UPDATE, SELECT, function, TRANSACTION 這樣的順序亂講吧。至於 JOIN, Sub-Query, EXPLAIN, VIEW 就看我能不能在寫到那邊之前,把它們弄熟了 XD

除了 SQLite 的官網之外 (那個指令結構圖還挺好用的),還可以念 MySQL 文件長知識 (2549 頁的知識啊 ~~~),或者看這邊的文章先有點概念。SQL 的歷史及說明可以翻 Wikipedia

另外,由於 SQL 標準允許各資料庫系統在某些地方自由發揮,並且 SQLite 也未必遵守 SQL 的所有標準,不同的 SQL 版本標準也可能有異,因此這系列的文章必然無法涵蓋所有版本的資料庫系統。

WinXP 使用跨距磁碟區的小心得

這幾天因為氣場不順的關係,把手上的幾台電腦都弄到需要重灌 (kukuku~)
其中有台 P4 2.8G 裝的是 WinXP,就順手拿它來玩玩 Windows XP 內建的磁碟管理模式。
(主力桌機 AMD AthlonX2 5000+ 則是在 vista 之外,還裝了 Ubuntu, 目前使用 Kubuntu 8.10 搭配 KDE 4.1 桌面,有空再來聊這個 XD)

為了避免造成混淆,先將以下的幾個名詞加上定義。下列定義僅適用於本文,與業界或各軟體的說明不保證相同 ! (事實上,MS Windows 對於 "磁碟機" 和 "磁碟" 的用法恰好和我相反,哭哭 T_T)

  • 硬碟機 (HDD):實體的硬碟,或者是硬碟的實體
  • 磁區 (Partition) :是在磁碟機中,由如 fdisk 等軟體劃分出的區塊
  • 磁碟 (Drive):指的是由單一或數個區塊組成的邏輯單位,能夠直接被掛載 (Mount) 到一個磁碟代號 (MS),或者是掛載成為另一個磁碟機的某個目錄 (Un*x, 或使用 NTFS 的 MS)
一般情況下,硬碟機最多能分割出四個磁區,包含主要磁區 (Primary Partition) 或至多僅有一個的延伸磁區 (Extended Partition);每個延伸磁區可以再被割出數個邏輯磁區 (Logical Partition)。其中的主要與邏輯磁區,可以當作 Drive 被掛載。平常的 Drive 都只包含一個 Partition。

但在某些情況下,一個 Drive 會包含多個 Partition,例如 RAID 。簡略的說,RAID 就是把數個硬碟機或磁區,經由軟體或硬體的方式,變成一個 Drive 的技術。透過不同的設定,RAID 能夠提高資料的可靠性 (自動的備份與錯誤較正)、加大硬碟容量且資料讀取速度、將 RAID 整體或其中的部份硬碟機取下或更換 (熱插拔、抽換) 等等--這些特性未必同時存在。

Microsoft Windows 從 2000 之後 (含 Server 2003, 2008, 特定版本的 WinXP, Vista ),內建支援某些軟體 RAID 模式,其中使用的名詞大略意義如下:(註:微軟口中的磁碟,指的其實是我的磁碟機,反之亦然)
  • 簡單磁碟:單純的,古典的硬碟使用方式,能夠被轉換成動態磁碟,以支援其它格式
  • 動態磁碟:轉換過的簡單磁碟,支援下列各種特性。無法被轉回簡單磁碟 !
  • 跨距:Spanned Volume,應該算是 RAID 中 JBOD 的一種實作吧 XD (兩邊都有 RFC 或 IEEE 標準啦,不過我懶得看) 注意:RAID JBOD 裡只要有任何一顆磁碟損壞或被拔除,可能會搞爛整個 RAID 的資料;MS Windows 沒有提供任何從跨距磁碟中取出資料的工具程式。系統碟似乎無法建立成跨距磁區。
  • 鏡像:對磁區的 RAID1 (Mirror),因此若其中任一磁區損壞,資料仍然能夠讀取。
接著是要如何在 WinXP or Vista 上建立跨距或鏡像磁碟的步驟簡述:
  1. 電腦上安裝正確的作業系統。Windows XP Home 已知無法建立動態磁碟,Vista 的各版本我不確定 XD 另外,要確定至少有某顆磁碟有足夠且未分割的空間。若是要對某磁碟機 (而非磁區) 建立鏡像的話,可能會需要有兩顆同樣型號的硬碟機;如果要對某磁區建立鏡像的話,需要有大於或等於該磁區大小的未分割空間。
  2. 進入控制台 -> 系統管理 -> 電腦管理 -> 磁碟管理。
  3. 將牽連的所有磁碟機 (包含有未分割空間的那顆) 都轉換成動態磁碟 (右擊 "磁碟#" 的區塊就會有這個選項)。只有動態磁碟機上的磁區,才能夠成為鏡像或跨距磁區。如果轉換的磁碟機包含系統碟的話,需要重開機。
  4. 在要建立鏡像的磁碟機或磁區,或是要轉換成跨距的磁區上按右鍵,點選想要的選項
  5. Windows 會幫你帶出可能使用的磁碟,點選後便完成。
重點在於要有未分割的空間,並且使用的磁碟 (包含原本與要擴充的部份) 都先轉成動態磁碟。否則選項可是會灰給你看喔 XD

2008-11-06

什麼叫 "賓至如歸"

就是當陳雲林來台灣時,給他看看戒嚴還有台灣版的六四事件

台灣人民已經連續選出三次不適任的總統了,(若無適合的候選人,應該以投廢票或不投票的方式,表達自己的意見),希望這次的經驗能讓這些人們開始使用他們的大腦;或者,負責任的處理掉自己造成的麻煩,盡可能盡快的罷免掉吧。

回想中國國民黨前後兩任總統言行,令人不勝唏噓:

  • 李登輝:中共再大也不會比我老爸大
  • 馬英九:我是喝中國奶水長大的
總而言之,我以做為馬英九統治下的中華民國國民為恥;我更以被外國人誤認成中共人民時,無法提出有力證據反駁為恥。

這篇懶得拉連結了,有興趣的自己翻 Google or Wikipedia。

2008-10-31

Matlab 的編碼與中文顯示

雖然 Matlab 官方宣稱字串在變數 (Workspace) 與二進位儲存檔 (.mat) 是使用 Unicode 編碼,據稱為 UTF16be,不過使用 Editor 編輯儲存時,似乎沒這麼回事 T_T

在 Vista 底下,預設使用 C950 (Big5) 編中文就算了,在 Mac OSX 上 (明確設定 LANG, LC = zh_TW.UTF-8) 還是給我存成 Big5 就有點過份了。更糟的是,餵 Unicode 給它 (UTF8, UTF16, UTF16be) 通通看不懂 !!!!!

也就是說,預設 Matlab 的主程式基於 Unicode 運作,自帶的 Editor 只看得懂 Big5 編碼。有空再試試這樣的限制是來自於 Editor 還是 JRE

另外,在網路上也看到了一些關於 Matlab 使用中文發生問題的解決方式,簡單整理如下。Matlab 7.x (2006 以後的版本) 確定支援中文 (只是編碼很笨而已 XD),若無法正確顯示,多半是字型設定的問題 (Windows / Un*x 都是)。只要更換為包含中文的顯示字型便可以正常輸入顯示。順便推薦網路上爬到的 雅黑 + Consolas Hybrid 字型,畢竟寫程式用的字型,一定要能清楚區別 "I,l,1", "0,o,O", "i,j" 這幾個不同的字元。該字型中文部份使用微軟雅黑,為了避免授權的問題,請需要的人自行 Google 吧 XD (認識的當然可以直接要啦 :p)

2008-10-30

拈花惹草 vs. 招蜂引蝶

這其實是一體的兩面,不是嗎 ?

拈花惹草者,蜂與蝶也;
招蜂引蝶者,花與草也。

如果有人桃花亂開,或吸引一些奇奇怪怪的人,最該檢討的還是自己吧。

2008-10-29

安裝網路印表機簡易說明

底下是寫給實驗室的同學與學弟妹看的東西,可說是相當基礎,但好像也很多人不會 @@

要在 Windows 平台下,透過網路上的芳鄰安裝印表機,可以遵循以下步驟:

  1. 確定 Client (MS Windows) 有裝通訊協定 (File & Printer Sharing for Microsoft Network),並且 Server 端的防火牆允許 LAN 對網芳進行連線 (在 Linux / FBSD 上就是 Sambad)
  2. 從 Client 端執行 "\\電腦名稱" 或 "\\電腦IP",連線到 Server。有些情況下在 Server 會需要以特定帳號登入以取得權限。
  3. 在想要安裝的印表機上 DblClick
  4. 有些時候,Server 所提供的列表機驅動程式無法為 Client 所用 (例如 Windows -> Linux,或是 WinXP -> Vista),就需要手動選擇印表機的型號。舉例來說,我們實驗室的 HP LaserJet 3380 在我家 WinXP 上找不到,但使用 HP LaserJet 的驅動程式便能正常運作。

如果要除錯的話,也是從這個流程往下跑,先看網路協定有沒裝好,之後是連線有無被擋掉,驅動程式是否安裝正確,最後看 Server 端使用者權限是否足夠。

2008-10-27

羅技滑鼠送修記實~


早先就聽過羅技產品送修換新絕不馬虎,一般是良品或新品替換,已停產的產品則會更換成同定位的新產品。不過用他們的產品 (滑鼠和 WebCam) 到現在,還是第一次享受到這樣的快感 XD

放在實驗室的 MX518 滑鼠從兩週前開始,觸鍵偶而會變得很怪異,像是除了 0 與 1 之外,多了一個 0.5 的 state。按下按鍵時會有 "喀喀" 兩聲,第二聲時才會真正觸發按鍵。從按鍵的基部按下,會比較容易誘發這種狀況。

之前寫了客服信去跟他們碎碎念,回信說滑鼠仍在保固期內,可以寄回去或帶到維修中心去處理。原本想說送到維修中心,應該還是需要幾天拆解除錯,想不到他直接就進去變了盒 MX518 出來 XD 雖然今天帶滑鼠過去時,並沒有發生有問題的狀況,但客服人員直接換新的處置,讓我相當的佩服呀。

即使產品的價格是其它公司的 1.5 倍,但考慮到保固期,客服人員的訓練,以及產品的保障 (直接換良品/新品,能避免客戶待料或備料的不便;從產線出來的產品,感覺上也比維修回來的東西 MTBF 更長 XD),我是覺得花錢買羅技的東西相當值得啦 XD

所以現在桌上就有新的 MX 518 可用啦 XD (背包裡還有準備頂著用的兩隻滑鼠 @@ 超囧)

順道一提,之前買某除溼罐碰到瑕疵品,到他們公司客服信箱去碎碎念一週多了,到現在什麼回應都沒有 -_-# 雖然說傳統產業很難像羅技一樣,將流程高度電子網路化;可是既然在公司網頁上留了客服信箱,又不理不採,感覺就很爛。

2008-10-26

嗚嗚 荒廢掉了啦

最近忙一堆事情,而且可預見的,還會再忙上一陣子
看來最近這邊整個要荒廢掉了啦 XD

然後最近真多棒球季後賽可以看,短期賽事的調度和長期會有一些差別,
畢竟季賽以維持戰力完整為目標,但錦標賽(淘汰賽)就要一直晉級才有搞頭

人類的經濟行為,有很大的層面我覺得是建構在朝三暮四的假設之上的:

有人說,先拿四顆的猴子比較聰明,因為牠可以透過放款或租借獲得利益
結果就是,整個系統越變越複雜,風險波動越來越大,牽連越來越廣,然後數字造假或者誤用的情況也越來越多。所以現在這樣也只能說是自作自受啊!

雖然我對宗教不感興趣,不過實驗室老闆說過的一句話,倒是讓我相當認同。雖然置家產是件好事,能夠讓生活穩定,一但超出自己“需要”層面,變成是在滿足欲望“想要”這層級,就該要好好考慮了。

要講的話太多了,有空再打吧

2008-10-18

KKBox (Win) 4.0 Bug 小補充

前面這篇提到的 Bug 主要是關於在 KKBox (Win) 4.0 裡,匯入歌單 (無論是 .kbl 檔或是從網路取回備份 <-- 我想機制其實應該是同一個) 時,歌單中的歌曲可能會消失,變成只能由 "全部歌曲" 找到。但匯入完畢後,重新開啟 KKBox 時,歌單的內容不會有任何改變。

然後前天其實還有碰到另一隻 Bug ,上篇忘了寫 XD

新增歌單,搜尋 "陶喆" 的所有歌曲,然後 [用滑鼠把歌拖到歌單裡 | 在任何一首曲子上按右鍵,選全部新增到 [前面新增的歌單 | 新歌單 ]],之後重新啟動 KKBox。
Boom ! 恭喜所有歌單錯亂,情況與前面那篇類似 XD

我不確定這樣的情況是否只會發生在新增陶喆的歌曲,亦或所有歌手皆如此。所以在新增或編輯歌單前,建議還是要先備份喔 XD (拷貝整個目錄喔,匯出的檔案會在匯入時再度踩中 Bug)

2008-10-17

KKBox 4.0 有 Bug

真的,我真的應該去做軟體 QA 的 XD

發現 KKBox (Win) 4.0 在歌單匯入匯出方面的 Bug。
當以 "匯入歌單" (從另一台電腦匯出的 .kbl 檔) 或是 "取回線上備份" 取得歌單時,會把 KKBox 的歌單整個抖亂。匯入的歌曲都會出現在 "全部歌曲" 歌單中,但其它所有歌曲或歌單都可能會亂掉,包含下列各種情型:

  1. 歌曲所屬歌單被吃掉,因此只能從 "全部歌曲" 抓到那首歌
  2. 歌曲所屬歌單被改掉,出現在不正確的歌單裡
  3. 歌單內裝的歌曲亂七八糟,包含有原本屬於與不屬於此歌單的曲子
  4. 歌單消失不見
KKBox 沒付錢給我,所以我也懶得去抓是怎麼回事 XD
不過我會建議所有人 "不要升級至 KKBox Win 4.0 版",並且避免使用匯入匯出等方式在主機間傳送歌單。如果真要同步的話,將使用者家目錄下的 Music\KKBox\systemu.dat 複製到新主機去就 ok 了 (至少整個目錄 cp 過去對我有效)。

KKBox Mac 版本匯入及取回線上備份均正常....

必也正名乎 ?

雖然有個死很久的傢伙說過,"名不正則言不順,言不順則事不成",不過這不代表改名改來改去,做的事情就 [會|可以] 不一樣....
豬頭就是豬頭,所以有人會想靠改名來改運,所以有人會花錢把公司名字改過來又改過去,所以有人升級會想把縣改成市....
把 "Taipei County" 全部改成 "New Taipei City" (暫定亂取的,反正不可能不改),所需要的連帶成本,包含門牌、行政區、各公司行號更改國內外登記及聯絡方式等,決對不是 "中華" 郵政的幾千萬而已。相比之下,只要比對 "市->直轄市" 的概念,推廣出 "縣 -> 直轄市" 就可以省下這筆毫無智能可言的支出。
順道一提,那個 "立法院" 每年消耗的支出超過千萬這個數量級,不過它們存在的作用,似乎僅止於證明 "人類是由猿猴演化來的" 而已。

看過維基以後,深感規劃台灣的行政區的傢伙腦子八成有問題,架構比我不靠註解、不先規劃,直接硬幹出來的某程式還亂....

2008-10-12

光輝的十月 ~~ 巨大的碎碎念

昨天被人碎碎念最近都沒文章,把腦子裡的東西亂寫過來吧 XD


人生裡有很多很多不能選擇的事情,例如爸媽是誰或什麼的,
有些事情未必能讓人滿意,不過發生就是發生了,不可能去做些什麼來改變

有些事情是不該做的,例如去傳遞錯誤的訊息 (例如散佈謠言等等),這個問題該從兩個面向去討論。
  1. 知道或不知道。我一直覺得 "相信" 和 "知道" 是要分開討論的事。當不存在決定性證據的時候,任何人都可以抱持著合於邏輯的推理,去相信任何一套理論。對任何議題 X,你不能用一種理論 X1 的假設 A(X1)k 或其衍生 (包含假設或推論) ,來評論另一個試圖解讀同樣議題的理論 X2,這就像 "拿明朝的劍斬清朝的官" 一樣。對任何 m, n ,Xm 與 Xn 本來就沒有義務要相容。所以當 X1 與 X2 互斥時,你只能說 X1 與 X2 不同時為真 (社會或科學理論本來就常常會要受到修正的) ;當 X1 與 X2 不互斥時,也不代表 X1 或 X2 本身的真偽。要推翻一項理論的作法,只有是證明該理論 Xk (包含假設或推論) 與事實相悖 (或舉出另一項 Xf,Xf 為事實故為真,且 Xf 與 Xk 互斥),或是證明 Xk 所引用的所有假設存在內部矛盾,或有任何一項假設與事實相悖。
    聽起來很基本是吧 ? 不過這樣的邏輯在生活中卻常被違反,例如常常有某個宗教的人,試圖拿教裡的規範去約束其它宗教的人,嘿。然後電視上應用 "X1 與 X2 互斥,X1 為甲,所以 X2 為真" 或是 "X1 很好,你看阿呆阿瓜阿貓阿狗都這樣說" 的例子更是每天都在上演。
    要破除這類的迷思,人必需要有求知與質疑的能力 (嚴密的邏輯),並有足夠的知識 (查資料) 來驗證。由於一般大眾很難得到足夠的知識,如果真的要犯下邏輯謬誤的話,相信正確的權威是我唯一能忍受的 trade-off。喔,在社會上,這種行為叫作 "相信專業"。
    雖然這會加速騙徒的生成 (詐欺是種相當容易獲利的手段,所以我預期有部份專業人事會墮落到那邊去) ,但只要能維持足夠的思考能力 (與有良心的專家),人類還是有機會往對的方面走。可惜各種社會教育媒體的品質,很明顯的不足以支撐這樣的社會;一無所知的記者所撰寫出來的文章,可能讓民眾智能提升到什麼程度 ?
  2. 該說或不該說。知不知道是一回事,會不會拿這樣的消息去散布又是另一回事。我的想法很簡單,"不應該去推廣自己不懂的東西"。如果有個議題我只是一知半解,那麼多聽,多想,多查資料,會比把這些未必正確的言論四處散布來得有意義得多 (對自己或社群都是)。
    可惜生活中的權威來源多半是送這樣的言論,並且社會上已經有太多的謠言在傳布,結果整個社會就變成了詐欺實習所。這個年代的詐欺已經不是以前那種金光黨的 hit-and-run 玩法了;現在流行的是,先去散播一種概念,然後從這些概念及其衍生商品中獲暴利。公司做的事絕對合法,因為賣的是普通器材、是健康食品、是生活習慣;對療效的不當宣傳等髒事,通通變成是會員在做。結果呢 ? 一個抱著口號的詐欺集團便成形。
這樣的生活習慣與思考方式是會傳染的,所以我寧願在生活圈裡把這些人 (或是自己,反正只是定義哪邊是外面,哪邊是裡面的問題) 通通隔離。也只有在這種環境下,我才會預設去接受其它人提出的理論。

2008-10-03

Google 暗捅 ASP 一刀 ? / MSDN 錯字

最近真的有點忙 T_T 兩篇當一篇發啦 :p

首先是在 ptt 的 Google 版看到有人把 ASP 跟其它東西當關鍵字丟進Google,切換到後面的頁數就會被當成 BOT,然後我試出比較簡單的方式是:

  1. 從 Google 首頁 (個人首頁也行啦,反正會跑到一樣的地方) 搜尋 ASP 
  2. 直接點視窗最下面的 "第 10 頁"
  3. 再捲到最下面,點 "第 12 頁" 或更後面的頁面
  4. Boom ! 403 get !
會出這種錯誤的原因不明,不過我想號稱 "Do no evil" 的 Google 應該不會明目張膽的做壞事才對 XD

另外則是 MSDN 的錯字 XD 
那個 ^ 是多的。

2008-09-16

SQLite + Visual Studio 2005

SQLite 是一套 Embedded RDBMS,很適合加進 App 裡頭跟著跑,並且資料庫檔能輕鬆跨平台。關於其它 SQLite 的優點,可以 Google 大神或 Wikipedia 取得。或許效能與支援度未能與其它 DBMS 相比,但你總不會想為了暫存 Spore 裡的建築方式,去安裝這些巨獸吧 XD


參考這篇討論串的作法,我下載了 SQLite for ADO.Net 2.0,目前使用正常 XD

底下簡述安裝及使用方式,作個記錄備查:
  1. 下載並解壓縮前面的 SQLite for ADO.Net 2.0 檔案
  2. 安裝 bin\Designer\install.exe,以提供設計階段的 VS.Net IDE支援
  3. 在方案中,加入對 bin\System.Data.SQLite.DLL 的參考
  4. 可以用了 !
下面是簡單的使用範例,語言為 Visual Basic.Net


Imports System.Data.SQLite

' ADO.Net 標準 Reader 三物件
Dim slconn As SQLiteConnection
Dim slcmd As SQLiteCommand
Dim slrdr As SQLiteDataReader

'建立 connection,給定檔名即可。注意讀寫權限 !
slconn = New SQLiteConnection("Data Source=c:\backup\Test.db3")
slconn.Open()
slcmd = slconn.CreateCommand() '建立 command 物件

'取得目前該檔案已有之 Table 名稱
Dim found as Boolean = False
slcmd.CommandText = "SELECT name FROM sqlite_master WHERE type='table';"
slrdr = slcmd.ExecuteReader() '建立 reader 物件
If slrdr.HasRows Then
While slrdr.Read()
MsgBox(If slrdr.GetString(0))
If slrdr.GetString(0).Equals("test") then found = True

End While
slrdr.Close() 'Reader 要關閉才能再利用

End If

If Not found Then
'建立 Table
slcmd.CommandText = "CREATE TABLE test (name);"
slcmd.ExecuteNonQuery()

End If

'INSERT, UPDATE, DELETE 用法均類似
slcmd.CommandText = "INSERT INTO test(name) VALUES ('clifflu');"
slcmd.ExecuteNonQuery()

'SELECT 需要用 cmd.ExecuteReader 抓結果
slcmd.CommandText = "SELECT name FROM test ;"
slrdr = slcmd.ExecuteReader()
If slrdr.HasRows() Then
While slrdr.Read()
Msgbox(slrdr.GetString(0))
End While
slrdr.Close()

End If

slconn.Close() 'Connection 用完要關

吃雞塊,長痘痘

Facts:

  • 炸雞塊挺好吃,有空想到就會弄一點 XD 只是油要用不少,清理也有小麻煩
  • 不過痘子出現的速度也快到嚇人 T_T
  • 烤雞塊一定要退冰 + 預熱,不然會很失敗
Plans:
  • 吃太多炸雞塊不太好,還是限制每天最多 10 塊吧
Anticipated Result:
  • 如果真的執行下去,應該會變成 "每天都吃 10 塊",然後痘子更多了 :p
ps. 下次炸了再回來補圖吧 XD

2008-09-07

Stop Sending "+1" 's -_-凸

還記得那個 Google Chrome 的滑鼠 / Touchpad 臭蟲嗎 ?我在三天內已經收到超過 150 封的 "+1" "Confirmed" 郵件,然後目前總計已經超過 210 項訊息了 T_T


頭 20 篇就看得出這個問題會發生在 WinXP 與 vista 上,然後我在第 24 篇表示與控制台中的滑鼠設定有關,之後在 1xx 篇有人說 TouchPad 的左右捲動也受影響,再扣掉第一篇的 bug report initiator,真不知道剩下的 211-4-k 篇是在回什麼的.... (k = 跳出來喊 "No More '+1' 的篇數)

這就是鄉民啊.......

2008-09-06

KKBox on Mac 秘密流出版亂用感想

三個多月前,因為某些不很複雜的原因,我刷卡買了半年期的 KKBox,現今仍感到相當值得 XD 7xx 元拿去買專輯的話,了不起就是兩三張吧 :p

KKBox 好用歸好用,可是我平常出門帶的都是 MBA,醬就算有網路也聽不了音樂啦 T_T 若要帶 Dell 出門的話,主機變壓器滑鼠背包隨便算都是 5-10kg 起跳,對快要步入中年的大叔來說負擔也不算輕。這次恰好在 pttMac 版上看見 Izero 大大發佈測試版 KKBox on Mac 的消息,當然是寫信過去毛遂自薦一下了 XD 這邊是發表在 blog 上的版本。基本上目前 bug 還算有一些,選單的中文化也尚未完成,再加上我也沒有取得 Izero 大大的同意,所以想要檔案的人還是去找他要吧 XD  KKBox 可以在這邊註冊試用,喜歡的話再花錢購買^^; 


雖然台灣的 Mac 使用者數量一直是穩定、緩慢、微量的增加,不過 Izero 大大在 KKBox 裡推動對不同平台的支援,其心可鑑!反觀有些服務業的網站把自己綁死某些系統底下,連帶限制使用者只能用那些系統連入;這樣的服務品質真的應該要抓起來打屁股~~

然後這份軟體是測試版,有 Bug 在所難免,請不要寫信去跟 KKBox 說要延長 60 天的服務喔 XD

註:所有的選單和名詞都是我亂掰的,看不懂的人請升級幽默套件到 4.7 版。

主操作介面:

左邊是  Mac 的介面,然後右邊是 Win 版本的 XD 兩邊看起來其實差不太多,對轉換平台的使用者應該不會造成混淆。不過仔細看還是會發現一些差別 @@ Win 版本右下角可供切換的選項比較多,對我影響最大的功能,應該是歌詞動態顯示吧。Win 版本的 KKBox 可以在下面的播放區塊顯示歌詞,而 Mac 版本的不行。Mac 版本只能在主要播放視窗點選 "歌詞" 顯示,其它模式通通叫不出來 T_T 人家說風雨生信心,台北這兩天大風大雨的,我想應該下一版就會有了吧 XD


歌曲選單介面:

↑ Win 標準介面 ↑

↑ Mac 標準介面 ↑

↑ Mac 專輯檢視介面 ↑

↑ Mac CoverFlow 介面 ↑

Mac 無敵全螢幕 CoverFlow !!! 

Windows 版的 KKBox 只有一種檢視介面,Mac 有四種 XD 聽說只有 Leopard 以上才能用 CoverFlow 喔。休息的時候開全螢幕 CoverFlow 還挺有音樂播放機的樣子 :p


偏好選項:
現在的多媒體播放軟體好像都會去設定 IM 的即時狀態了 (抖),大家在看片子的時候千萬要小心喔 XD 我覺得 Win 版的偏好設定有些東西寫得太雜了,適當的播放品質和傳輸埠應該是軟體自己就可以測試出來的啊 :p


控制選單:
兩邊的選項差不多 (OS: 廢話嘛,難不成要寫什麼 "失去控制" 或 "左翼的彈幕太薄了 !!!" 這種東西嗎),不過我覺得 Mac 版用 CheckBox 做 Shuffle 選項比較直觀。在快速鍵方面,由於我平常離線聽音樂還是以用 Winamp 為主,所以還是比較習慣用 zxcvb 去控制 XD 


播放器介面大變身:


點下去以後變這樣:

上面是精省化過的 KKBox,底下則是被擠成蘋果汁的 iTunes。我只能說還是小蘋果的介面比較好看 XD 把播放器縮小的主要目的應該是想看到播放資訊,同時又能從事工作;如何壓縮所使用的桌面空間,並把需要的資訊呈現出來,其實是相當困難的課題。我沒寫過 Cocoa,不過如果能把上面標題列的空間縮減,按扭縮小擠到左邊,字型縮減,把播放時間放到視窗底下當作 progress bar,然後在主要區塊顯示歌名、歌手及歌詞的話,應該會相當實用 XD



這兩種 Windows 版本的迷你播放器介面都有歌詞可以看啊 T_T 



然後比較麻煩的是,mac 版的 KKBox 無論是 cpu 的使用量 (Win: 0-2% on T7500 2.2GHz / Mac: 10-12% on Pxxxx 1.6GHz),或是記憶體使用量,都比 Win 版本吃得更兇 T_T

目前我玩到的 Bug 有:
  1. Mac 版 KKBox 狂暴 seek progress bar 可以把播放器搞當 XD
  2. 把所有歌單 (除了刪不掉的 "全部歌曲" 以及 "我的最愛") 都刪掉,會把歌單資料庫弄爆炸
上述 KKBox 的版本是 Mac: 0.8.34 / Win: 3.2.0076 (0136),新版推出以後全都說不得準啦 XD

[ 延伸閱讀 ] :這邊老地方冰果室對 KKBox on Mac 的看法

2008-09-05

Google Chrome 感想超速報

  1. 啟動執行都很快;
  2. 吃記憶體兇;
  3. 據說安全且穩定;
  4. 介面簡單,但設定自由度偏低;
  5. 畫面可用區塊大,甚至還能以 "應用程式" 的方式開啟網頁,完全省略瀏覽器的 UI;
  6. 操作滑鼠滾輪、TouchPad、觸控版時會有蟲子,對我影響頗大 (躺在床上與泡澡時,我習慣以 TouchPad 作為主要操作介面);
  7. 目前沒有 extension 可用 (對,沒有 Adblock !),聽說一週內會有新消息;
  8. 我希望它能整合 Google Browser Sync 的功能,在不同電腦間同步書籤;我同樣希望它能整合我在同一台電腦上,不同瀏覽器的書籤;
  9. 有沒有可能比照目前執行 plug-in (如 Flash) 的方式,讓 ActiveX 也能在 Chrome 內運作呢 ? 架構上看來是有可能的;
  10. 書籤編輯與管理功能薄弱,該不會之後又出個 Google Bookmark 網站,讓 Chrome 透過它同步,並且可由其它瀏覽器連入,甚至是公開自己的書籤集吧 (書籤網站該小心囉);
  11. 希望網址列能像 Firefox3 的 Ubiquity 一樣,能以特定或自定語法開啟網站;
  12. 在 Vista 的 Aero 介面下,標題列有點太高;

2008-09-03

哭哭 Chrome 踩到蟲

剛玩 Crome 時發現滑鼠和 TouchPad 在捲動頁面時會怪怪的,跑去 bug report system 發現兩個小時前就有人踩過這隻蟲了 XD


我發現如果在控制台把滑鼠捲動設定為 n 行的話,滾輪上下捲不會有問題,但是用 TouchPad 的虛擬捲動無法上捲,而且虛擬下捲會變成差不多兩倍快;如果是設定成捲動一頁的話,滾輪上下捲會相反而且變慢,然後 TouchPad 還是不能上捲,虛擬下捲則是會被反相 (向上捲)。

我在 Dell 1520 跑 vista business x64 SP1 搭配內建觸控版 (Synaptics V6.3) ,以及兩隻外接滑鼠 -- Microsoft Bluetooth Mouse 5000 和另一隻 Logitech 的小滑鼠 -- 能夠完整的重製這個問題。大部份回報這個問題的人使用 vista,不過其中也有看到用 windows XP SP3 的。

總之 Web 2.0 時代的精神就是 always Beta ,G 社會這樣也不令人意外啦 XD

Google Chrome 出來囉!!

從 Google Chrome 昨天發佈風聲之後,我就把他們的首頁加到 FireFox 3 SpeedDial 裡頭監視。剛玩 DMC4 想說休息一下回來看個網頁,就發現 Chrome Beta 正式野放囉。


關於 Chrome 的特性 (官方說詞),其實 Google 有先放出一份漫畫稿。大致整理一下,就是說 Google 看其它 Browser 不爽,所以拿 Safari 的引擎 WebKit,兜上自己寫的 Javascript 核心 V8,決定自己做瀏覽器。這隻瀏覽器的特點有:
  • 開發程式碼時,在 Google 總部內有許多猴子能幫忙比對現有網頁的呈現效果是否正確。
  • 多行程 (Multi-process),所以 tab 裡的每個頁面當掉,對其它頁面不會有影響。除了穩定性以外,對安全性也有幫助。
  • V8 加強對 javascript 中型別的控制,以將 js 編譯成 machine code 執行,也加強了記憶體回收 (Garbage Collection) 的效能。V8 對龐大的 js 架構做最佳化,因此在執行 Web Application 時效能更佳。
  • 內建 Phishing / Mal-ware 防堵清單 (這個幾乎所有 browser 都有)。
  • 更佳的權限控制,將瀏覽器與網頁本體分離 -- 包括內嵌的 Plugin (猜想如 Flash 一類) 
  • 上述為我以很糟的記憶力、貧乏的專業知識、以及唯恐天下不亂的個性亂整理的重點。

實際使用 45 分鐘後的感想如下:

優點:
  1. 執行速度真的不錯,然後頁面真的很有 Safari 的感覺 XD (之前做怪怪的電子報,測試測到看內容就分得出是 IE 7, FF 3, 還是 Safari T_T)。跑 Google 的 js 怪獸軟體更是有感覺,例如 Gmail Google Docs
  2. 可以亂拖的 tab 相當方便,特別是在查詢一些需要交互參照的資料時。
  3. 介面簡潔直觀,雖然我還是不太習慣看沒有 status bar 的視窗。
  4. 對既有網頁 (Flash,Java,Silverlight) 的支援度還算 ok,然後很明顯的不可能支援 ActiveX XD
缺點:
  1. 我一直覺得 Google Browser Sync 會在 Chrome 上重現 T_T
  2. 雖然能自其它瀏覽器 Import 設定應該算目前趨勢,但對 Google 的期許較高也是很正常的事。除了能與 Server 同步以外,整合本地端的其它瀏覽器也是很實用的啊!!!! 
  3. Config 可以改的設定真是少到可以 XD 或許以後會有人寫/發現某些 tweak 
  4. 沒有 Extension !!!! 我指的是 "連要從哪邊裝都找不到" 的沒有,而不是 "主機上沒幾套可以用的 Extension" 的沒有 囧rz~
  5. 書籤管理有點弱,當 FF3 可以輸入名稱、網址、描述與標籤的時候,Chrome 只給打名稱和網址,似乎是回到 IE4.0 之前的邏輯去了 (免責 !! 我的記憶力不好 !!!)
  6. 啟始畫面很明顯是向 Opera 與 FF3 :: SpeedDial 的模式致敬,不過供選擇的視窗只能由 Google 決定有點虛。當電腦會由多人共用時,這樣的推薦跟本就沒啥效用。
  7. 當有些網站使用 ActiveX,然後這些網站其實又挺重要時 (例如 Windows Update 或多數銀行線上 ATM 網頁),我還以為 Google 會內建類似 IE Tab 的功能,只是由 Server 來維護這份 IE-only 網頁清單呢。或是更邪惡的,把 ActiveX 也套上其它 plugin 的架構,然後讓 Chrome 成為第一個能讓 ActiveX 正確顯示的 non-MS browser :p
** 補充 1 **
在視窗中按 shift-Esc 可以叫出工作管理員,能看到各頁面及 plugin 佔用的 cpu 資源與記憶體,感覺不錯。

官方有提到所謂的無痕模式,將不會記錄該 Process 的所有行為,除了新增 Bookmark 與下載檔案以外。大概只有準備送禮物給人,還有偷逛不好的網站有用吧 XD 相比之下,Sandbox 自動轉為 Jail(而非禁止執行)的這項功能還比較讓我有興趣,至少逛一些壞壞的網站時能放心點。

網址列聽說可以用各種引擎搜尋,不過我還試不出按法。FF3 Ubiquity 一整個比較好用。

Chrome 內建檢視原始碼 (Ctrl-U) 與 "檢查元素" 功能雖然比不上 Firefox 的 Web Developer,不過也算是各瀏覽器內建中最好用的。

2008-09-02

當 Google Browser Sync 碰上 Google Chrome

Google Browser Sync 是一個我之前還滿喜歡的 Firefox 2 Addon,由 Google 出品,功能是將 Firefox 2 的書籤、History、Cookies、Stored Password、Tabs 透過網路加以同步。雖然也有聽說它把書籤搞爛的故事 (Foxmarks 比較穩),不過整體功能還是相當強大。雖然如此,當 Firefox 3 推出之後,Google Browser Sync 卻沒有跟上 -- 當時在某 blog 上看到的原因是 "程式員被抓去做其它 Project 了"。當然,Mozilla Labs 做了一個帶類似功能的 Weave ,不過當時它同步時,整台電腦都會變的相當 Lag (Weave 1.00.1),然後我就把它砍啦。

總之 Google 即將推出 Chrome,聽說是個 Mozilla-based天哪,我一定是白天被動吵醒超級火大亂打,明明就是 Safari 的 WebKit 引擎 T_T。看來把 Google Browser Sync 搞死的 Project 是啥,大家應該心裡有數了吧 XD (不過話說回來,Google Browser Sync 能 Access 到的資訊主要還是 History 與 Bookmark,偏偏這兩者靠 Google Toolbar 就能取得。從這樣的角度出發,Google Browser Sync 對 G 社產出的邊際效不高,會停止發展也是意料中事)

2008-09-01

PostgreSQL + Visual Studio 2005

以前在某處寫網頁的時,是用 FreeBSD + Apache + MySQL + PHP (FAMP);隨著時間進展,這樣的頭字語縮寫就越來越多了 XD 照這個邏輯來看,微軟要正式推 VISA (Vista + IIS + SQL Server + ASP.Net) 也是很合理的事 :p

最近又開始回來摸 Visual Studio (For fun),想說裡面附的 SQL Server 功能有點少,而且 MySQL 玩得有點膩 (雖然也沒說弄到多熟啦,就只是玩玩而已 XD),所以就改裝 PostgreSQL 啦 XD 在 wikipedia 上可以看到他們家的發展歷史,感覺挺有趣 :p 然後雖然他們沒有在 Manual 裡貼笑話,可是看到他們有些事情一整個不照 SQL 來 (例如 name 的大小寫,還有把 BLOB 叫作 bytea) 都滿好玩的 XD

總之如果要在 Visual Studio 裡搭配 PostgreSQL ,簡單的流程如下:

  1. 裝 Visual Studio 和 PostgreSQL (可以不在同一台電腦上)
  2. 設定 PostgreSQL,至少要有一個可以登入的帳號,並建立要使用的 DB
  3. 裝 Npgsql (.Net Data Provider for PostgreSQL)
  4. 開啟 Visual Studio 及欲編輯的專案,並加入參考 (Reference) 至 Npgsql.dll 與 Mono.Security.dll
至於如何使用 Npgsql ,可以參考 docs/UserManual.html 內的範例。

2008-08-30

高爾不願面對的真相

好吧,我寫這篇有一半的原因是想把 Tom's Hardware 那張笨圖擠到底下去,另一半則是因為看到了 MMDays 這篇文章

那幾隻 Youtube 影片的重點可以大致整理如下:

  • 溫室效應 (Greenhouse Effect) 與全球暖化兩項假說有其歷史淵源,起源於 1970 年代。當時全球氣溫持續下降,為了避免地球進入冰河期,有人提出 "增加二氧化碳排放量,可藉由溫室效應提升地表溫度" 這項假說,並輾轉遏止英國發展核能,因為核發電不會產生二氧化碳。
  • 雖然大氣中的二氧化碳濃度與全球溫度在數萬年的 time scale 下,數值波動關係接近,但溫度變化在二氧化碳之前,時間差約為 600 年。比 "溫室效應" 更合理的解釋為 "二氧化碳對水的溶解度,隨溫度上升而下降"。因此全球溫度上升為因,二氧化碳濃度上升為果。
  • 因人類行為產生之二氧化碳,不到地球二氧化碳產量的 10%;主要原因為火山爆發、動植物呼吸、動植物腐爛、以及海洋溫度改變排出。
  • 太陽黑子活動對地球溫度之影響,遠大於二氧化碳濃度。
  • 關於溫室效應之早期文件,乃由聯合國 IPCC 發布。雖然底下有許多科學家,但最終發表之報告書受到大幅刪改,使得結論帶有嚴重偏見。
  • "溫室效應" 受到環保激進份子 (我的定義:不在乎事實,只是隨便喊個口號來支持自己想做的事情的人) 、科學經濟 (我的定義:熱門科學領域比較容易拿到贊助) 與恐怖政治 (我的定義:人民喜歡恐怖片,所以政府和媒體就會去創造恐懼) 炒作的程度,遠大於實證 -- 它不過是個不太好的假說而已。
  • 環保 ? What can be wrong about it ? 限制資源的使用與開發,結果只會造成第三世界國家永無翻身之地。

事實上,我認為目前科學界對於 "是什麼造成地球溫度改變" 以及 "地球溫度改變會有什麼後果" 仍然沒有個共識,更別說是確定的結果。然而政客、媒體、社會大眾、以及環保狂熱者當然不會放棄這個機會 -- 他們總是能展現 "無知" 的力量。

科學家發掘證據,用以建立或驗證假說;狂熱者則不在乎證據,他們只是聚在一起念咒語,然後等外星人跳出來解救世界;政客則是先有立場,然後去贊助結果會支持這些立場的研究。可悲的是,政客選擇和狂熱者結合,然後掛上科學家的名,並吸收更多的教徒。這已經不是科學或政治了;這是信仰。

Fact 和 Believe 的差別在哪 ? Fact 應該是放諸四海皆準的東西,可以也應該被驗證。當所謂的 Fact 發生錯誤的時候,科學家會跳出來 Debug,然後加上某些修正項,或者改變這項 Fact 的適用條件。相對的,有句話可以完美的描述 Believe -- "Thou shalt not test xxx"。對於科學上的事實 (Scientific Fact),我認為所有有智能的人類都應該盡全力去推廣,例如演化論。相對的,科學界也有許多的 Believe (未經驗證的假說),但這些 Believe 需要的是驗證而非推廣。

所以當媒體與政客對 Believe 過份推銷時,這些人要不就是不了解科學,要不就是在利用科學來獲取個人利益,又或者兩者皆是。

以我的立場而言 (某個非氣象專精,但受嚴格科學訓練的研究生),想法大致如下:
  • 溫室效應是存在的,但目前全球溫度上升的主因,較可能為太陽黑子活動。
  • 全球溫度上升的結果,被某些媒體或環保激進份子過於誇大。
  • 節約能源及資源是有必要的,但不是為了溫室效應或氣候因素。
  • 為了不確定的原因,禁止或限制發展中的國家使用或開發資源是不道德的。
  • 我彷彿能見到這些資源在未來受資本家鉗制炒作的樣子了... 搞不懂為什麼社會主義份子在這種話題上,居然會跑去支持 "反發展" 的那一邊。

喔,然後 "不願面對真相" 的那個高爾被踢爆自己住豪宅應該大家都知道了吧 ?
很明顯的,對所有國家最有利的決定們,在協調與妥協後,決對不是對全人類最有利的決定;對政客及政黨最有利的決定們,在協調與妥協後,決對不是對所有人民最有利的決定。不知道要多久之後,人類才能體會到這件事情。

2008-08-28

下一個中標的是 : Tom's Hardware Taiwan !!


台灣湯姆大叔都中標了 T_T
應該是 CSS 的問題吧 XD

MSDN 貼錯圖

果然,運勢不強的人容易中龍眼,
閒著念 MSDN 的時候就看到理解不能的中文啦 T_T
什麼叫作 "應該不要翻" 囧rz~

2008-08-21

Stunned "@~

幾件小雜事:

  1. 我本來就有點喜歡 ABBA 的歌,雖然腦子完全不記得有哪些或是哪些。最近聽到 Mamma Mia! 這電影才跑去用 KKBox 聽了電影原聲帶與 ABBA 的原唱。電影預告在電視上聽來還不錯,只是原聲帶聽起來覺得聲音有點野蠻.... 相比之下 ABBA 的許多曲子則是讓我驚訝,想不到 30 年前的曲子現在還是如此動聽。
    這讓我想到吳克群在 "我的自傳" 裡的一句歌詞 "老歌變得越來越好聽"。然後我特別喜歡的 ABBA 大概有 "Gimme! * 3", "Mamma Mia", "Money * 3", "The Winner Takes it All" 這幾首。
  2. 棒球奧運沒進四強,只能說一分差的比賽是教練的責任。這句話不單指 "教練應使用戰術來多得一分";相反的,有些時候不做戰術反而可以多得幾分。至於選人與比賽調度還能維持比賽相當接近,可見球員的素質確實不錯。除了教練團的責任以外,我對某幾位選手的拼勁表示贊同,但對另外某些球員比賽時散漫的態度 (特別是跑壘) 感到不屑。用棒子把球打出去只是棒球進攻的第一步而已,在大部份的情況下還是要靠跑壘才能夠推進得分。
  3. 想不到 Blogger 上的使用者,除了我以外還有人對電話簿說明書有興趣.... 所以我只好開始培養閱讀統一發票的興趣囉 XD

2008-08-13

恭賀 ICOS 連續兩年發 SPAM


去年乃特大大幹文言猶在耳,想不到今年某 混帳協會 SLAT 又發信 spam 了.... 如果說是因為我在Sourceforge 有帳號被發信就算了,畢竟他們搭平台還算辛苦,而且不會拿無聊的東西來騷擾我。 ICOS 2008 又是什麼東西 ? 憑什麼丟垃圾信過來 ?

辦活動辛苦歸辛苦,本大爺可沒有義務要在信箱裡接廣告。ajan121@pchome.com.tw 我不管你是誰,即使你原本是我的朋友,從現在開始不再是了。當然,也不再會有任何朋友向我推薦或提起與ICOS 或 SLAT 有關的事。

改變 ? 進步 ? 重大變化 ? 對照著 spam 這種道德淪喪的案例來看,我不會相信裡面 promote 的任何事情,對,任何事。

2008-08-07

Blogspot 維修後語言就亂掉了啦 -_-# 吼~


這是怎麼一回事啊 -_-# 在停電維修以後,連 Blogspot 都自己暴走了嗎 T_T 現在後台語言整個變成英文,雖然不至於看不懂,可是感覺就是不對咩 @@ 快點乖乖給我變回去吧~

明明設定就是繁中啊,跑什麼米利堅式英吉利語出來嘛 -_-#

某間公司的網頁可真是爛到可以了....


這是哪家公司的爛網頁啊....
連首頁底下的連結都搞成這種樣子,上線前都不用先 test 的嗎.....

2008-08-05

MLB 郵包翻譯 :: NYY 08/04/2008 12:46 PM ET

mlb 在今年的 7/31 之前,完成了一些有趣的交易。我對美職的球隊其實不太熟 (雖然比台灣 1/3的球評好。順道一提,我的棒球知識應該優於 3/4 的台灣球評 XD),不過當一隻球隊透過三方交易,送出一隻看版級的 LF,換回另一隻 LF 的時候,這個交易想必是有趣的,各種陰謀論與八卦當然也是滿天飛了。

托王建民的福,台灣常常會轉播洋基隊的比賽...雖然比例高到有點另人噁心的程度,不過這使該隊在台灣的知名度大增,得到相關資訊的障礙自然低很多。總之洋基隊去年簽下了兩張養老級的合約,分別是 Mariano Rivera 的 45M/3y 與 Jorge Posada 的 52.4M/4y。簽老人最怕退化與受傷,結果 Posada 在新合約的第一年就肩爆彈。洋基今年戰積在美東排第三,這樣的戰積是無法晉級季後賽的。因此他們趕在 7/31 前進行補強,共補入了 Richie Sexson (被水兵放上 unconditional release waiver 名單),然後向海盜換來 Xavier Nady 與 Damaso Marte (四換二,交易球員為 Jeff Karstens, Daniel McCutchen, Ross Ohlendorf, 與問題球員 Jose Tabata),最後是跟老虎做 Kyle Farnsworth 對 Ivan "Pudge" Rodriguez 的交易。在交易到 I-Rod 之後,NYY 放心的將 Posada 送去開刀,並且預期他在明年春訓會回到球隊上。

對一隻有錢,常進季後賽,但今年戰積又落後的球隊來說,透過交易補強 Jose Molina 在進攻方面的漏洞是件很合邏輯的事;然而同時有兩位高齡,而且有很高機率進入名人堂的補手屬於同一隻球隊,這就比較少見了。因此,洋基隊在未來會怎麼安排這兩位補手,會是個很有趣的課題。今天在亂逛 mlb 網站的時候,發現這篇郵包有稍微提到這個問題,就順手亂翻囉。

原文網址為 http://mlb.mlb.com/news/article.jsp?ymd=20080804&content_id=3251497&vkey=news_nyy&fext=.jsp&c_id=nyy

標題: Mailbag : I-Rod 會繼續待在洋基隊嗎 ?
by Bryan Hoch / mlb.com
translated to Traditional Chinese by clifflu

Pudge 本季對洋基帶來幫助,但這對 Posada 的未來有何影響?洋基隊是否會試圖保留兩位補手,或是者 2008 球季結束後不與 Pudge 續約?有沒有可能洋基隊會重視 Pudge 超過 Posada ? -- Jennifer H., New York, NY

Brian Cashman 確保了這個交易能對本季帶來補強,並且不會對球隊的未來帶來太多影響。I-Rod 與 Kyle Farnsworth 本季後都會成為 FA,因此這樣的想法也相當合理。
Posada 在右肩手術傷癒歸隊後,仍有三年合約。若洋基原本沒有打算讓他繼續擔任補手的話,就不會簽下這種合約。然而對於 Posada 到了 2011 年是否能夠繼續蹲補,或是會轉換守備位置的爭論也未曾平息。

在 I-Rod 這方面,倒不如把他當成能用兩個月的傭兵,而這也是目前唯一確定的事情。當然,他也可能會繼續留在洋基隊,不過 Jose Molina 明年也還有約在身,而且他也是聯盟中相當優秀的替補補手。

因此這項交易的重點還是著重在八九月的陣容補強;Chad Moeller 是不錯,但在還有 50+ 場比賽的時候,可不常有機會能補進名人堂等級,並參加過 14 次明星賽的球員的。

有趣的是,Cashman 今年稍早也曾注意到 I-Rod 有被交易的意願;但當時洋基寧願賭 Posada 的肩膀能撐完本季。現在 Posada 術後至少需要六個月的揮復期,而 I-Rod 也能在洋基打兩個月球,滿足他當時的 "夢想"。

小聯盟的 Ian Kennedy 與 Kei Igawa 都表現不錯,為什麼洋基隊還要看 Darrell Rasner 繼續放火勒? -- John R., Wakefield, R.I.

球隊當然有注意這件事。洋基隊希望 Ian Kennedy 能在小聯盟大殺四方以後再回 mlb,而他在 AAA Scranton/Wilkes-Barre 近四次先發的成績是 3 勝 1 敗,1.33 ERA,共投了 27 局,送出 20K 與 5BB。

Rasner 本季表現頗窩囔,不過洋基打線沒打給他多少分數也是事實。然而時機對他本季想留在先發輪值相當不利 (已經宣布由 Dan Giese 頂先發的位置),因為他預定下次先發會在週五再次面對 LAA,而他們似乎很會欺負 Darrel Rasner。

即使週日對 LAA 的比賽洋基仍以 14-9 勝出,但 Joe Girardi 並沒有對 Rasner 是否還有下次先發機會給出肯定答覆。"我們總是會討論一些事情。Ras 在我們的先發輪值表內。我們還是會繼續討論某些事,但如果我們決定要改變先發輪值,它就會被改變。"

洋基能夠追擊的時日已經無多,每場比賽都很關鍵。如果他們認為 Ian Kennedy 比 Rasner 先發更有勝算,那麼他們會做出改變的。在某種程度上,Ian Kennedy 被當作是洋基未來的基石,因此他遲早會回來接受考驗。

為什麼球團不叫 Giambi 把鬍子刮掉?我比較喜歡形像清新的洋基隊,看起來比較專業 -- Jeni. H., Reno, Okla.

(這個問題太白痴了,跳過。)

為何 Bernie Williams 沒有參加 Old-Timer's Day? -- Jose M., Bronx, N.Y.

(肚子餓了,以下隨便翻翻。)
他們家去渡假,不然如果 Bernie Williams 願意在只剩 19 場主場比賽的洋基球場露臉的話應該不錯。這個問題很多人問,也許可以放置底。

目前看來打線中最弱的是 Melky Cabrera。在 Nady 加入以後,為什麼不由他與 Johnny Damon、Bobby Abreu 守外野,還是讓 Melky Cabrera 每日先發?等 Matsui 歸隊以後,可以把 Melky 擠回版凳嗎? -- Ralph C., Honolulu, Hawaii

這些球員之間的評比難以量化,不過 Joe Girardi 說 Cabrera 還是能製造重要的出局數,還有氣場。這也許是 Girardi 為球員辯護的方式,不過 Cabrera 即使本季打擊力退步,還是能靠著守備幫助球隊贏球。Matsui 歸隊並不會影響到 Cabrera 先發,因為 Matsui 就算回來了也只能當 DH。目前對於他什麼時候回來還沒個底,只知道他沒有立即接受手術的需求,然後待在 Tampa 基地 (養傷復健)。

Phil Hughes 出 DL 時,有報告說他可以在七月底回來。不過最近都沒他的消息,他究竟什麼時候會出現勒? -- Parker J., Moultrie, Ga.

Hughes 8/2 在 A Charleston 投了第二場比賽,3.2 IP 無失分,1H 5K。Girardi 說數字看起來不錯,不過 Hughes 還需要把投球數慢慢練回來。他那場比賽丟了 54 球,預定下次先發會投 65-70 顆。Carl Pavano 也在練投了,希望還有人記得他。他在 A Charleston 已經投了兩場比賽,也許他能在 4 年合約結束前,至少回到洋基露個臉。

有錯誤請留言,我夠無聊的時候就會來更正 XD

2008-08-04

以 VB.Net (Visual Studio 2005) 模擬滑鼠動作

玩一些網路 Flash Game 的時候,常常需要狂暴的點擊滑鼠,而所謂的 "滑鼠連點程式" 就成了第一選擇。網路上可以搜尋到不同作者篆寫的版本,像是 windsheep 寫的 windclick,或是..... 忘了,不重要 XD 不過之前有次想抓的時候,發現載點好像掛了,就只好自己寫一個囉。

要送出滑鼠事件,例如點擊 (Click)、壓下按鍵 (Mouse Down)、放開按鍵 (Mouse Up)、或是移動滑鼠 (Mouse Move),必需透過視窗訊息 (Windows Message) 運作,然而 .Net Framework 並沒有提供這樣的功能,因此只能透過 API。網路上可以找到一些關於所需 API 的說明,而這邊有人寫出基本的模組供使用,而這邊則有包好的 Class 源碼。

但考量到平台 (32 or 64 bit system) 和版本的關係,那個模組需要做一點修改。VS 2005 + vista x64 底下的 Long 是 8 byte,而 Integer 是 4 byte,但並非所有作業系統及 Compiler 下均是如此;相對的,user32.dll 所提供的 API 如 SetCursorPos 與 GetCursorPos 則明顯不使用 8 byte 的變數型態,因此將相關的變數型態指定為 int32 會是比較安全的做法。然後 TYPE 在 VS 2005 中已經被拿掉了,只要改成 Structure 就好。

修改過的模組檔如下:
Option Explicit On

Module MManip
'API 定義
Public Declare Sub Mouse_Event Lib "user32" _
(ByVal dwFlags As int32, ByVal dx As int32, ByVal dy As int32, _
ByVal cButtons As int32, ByVal dwExtraInfo As int32)

Public Declare Function SetCursorPos Lib "user32" _
(ByVal X As int32, ByVal Y As int32) As int32
Public Declare Function GetCursorPos Lib "user32"
(ByRef lpPoint As POINTAPI) As int32

Public Const MOUSEEVENTF_LEFTDOWN = &H2
Public Const MOUSEEVENTF_LEFTUP = &H4
Public Const MOUSEEVENTF_MIDDLEDOWN = &H20
Public Const MOUSEEVENTF_MIDDLEUP = &H40
Public Const MOUSEEVENTF_RIGHTDOWN = &H8
Public Const MOUSEEVENTF_RIGHTUP = &H10
Public Const MOUSEEVENTF_MOVE = &H1

Public Structure POINTAPI
Dim X As Int32
Dim Y As Int32

End Structure

'取得目前滑鼠座標
Public Function GetCurrentPos As POINTAPI
Dim Position As POINTAPI
GetCursorPos(Position)
GetCurrentPos = Position

End Function

'取得目前滑鼠座標 x 值
Public Function GetCurrentX() As int32
Dim Position As POINTAPI
GetCursorPos(Position)
GetCurrentX = Position.X

End Function

'取得目前滑鼠座標 y 值
Public Function GetCurrentY() As int32
Dim Position As POINTAPI
GetCursorPos(Position)
GetCurrentY = Position.Y

End Function

'滑鼠左擊
Public Sub LeftClick()
LeftDown()
LeftUp()

End Sub

'按下滑鼠左鍵
Public Sub LeftDown()
Mouse_Event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
End Sub

'放開滑鼠左鍵
Public Sub LeftUp()
Mouse_Event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
End Sub

'滑鼠中擊
Public Sub MiddleClick()
MiddleDown()
MiddleUp()

End Sub

'按下滑鼠中鍵
Public Sub MiddleDown()
Mouse_Event(MOUSEEVENTF_MIDDLEDOWN, 0, 0, 0, 0)
End Sub

'放開滑鼠中鍵
Public Sub MiddleUp()
Mouse_Event(MOUSEEVENTF_MIDDLEUP, 0, 0, 0, 0)
End Sub

'移動滑鼠
Public Sub MoveMouse(ByVal xMove As int32, ByVal yMove As int32)
Mouse_Event(MOUSEEVENTF_MOVE, xMove, yMove, 0, 0)
End Sub

'滑鼠右擊
Public Sub RightClick()
RightDown()
RightUp()

End Sub

'按下滑鼠右鍵
Public Sub RightDown()
Mouse_Event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)
End Sub

'放開滑鼠右鍵
Public Sub RightUp()
Mouse_Event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)
End Sub

End Module

2008-08-03

黑暗騎士 - The Dark Knight


原本聽到這部片上檔時,我還以為不過會是另一部漫畫英雄片,就是講說主角怎樣怎樣把壞人都打成肉餅的故事,了不起加上一些主角在社會上受苦的片段而已。這種型式的電影已經太多,但除了滿足一時的感官刺激之外,並沒有辦法在心中留下什麼明確的印象。雖然這部片有些邪門,演 Joker 的 Heath Ledger 安眠藥過量掛點,然後演 Bruce Wayne (The Batman) 的 Christian Bale 據說因為打老婆和小孩被抓,不過這些花邊新聞並不會增加我看電影的意願。總之我輾轉聽見一些關於這部片劇情的評論,才會想在颱風天當神精病跑去戲院看蝙幅俠。

這部片與傳統英雄片最大的差異,在於它真正的去討論了人性,而非只是讓超強的主角獨自幹架,然後鄉民只負責尖叫、逃跑、或是被殺;這部片探討從 Batman、Joker、Harvey Dent、以及一般市民的角度,會如何看待這個世界。Christopher Nolan 執導下的高譚市其實相當寫實:人們之間有著不信任及猜忌,是警務人員難逃腐敗,主角只不過是能力強一點的凡人,而小人物隨時也能發揮出過人的勇氣。與某些講天堂與地獄的故事一般,這次的戰場不在於 Batman 與 Joker 之間,而是在於每個人的心中,因此也格外發人醒思。

片中有一段 Bruce Wayne 向 Alfred 抱怨說最近壞人越來越兇狠,而 Alfred 的回答相當有趣。他認為這些現象應該要歸疚於蝙蝠俠帶來的恐懼效應,使得壞人反撲。有趣的是,Batman 的這個形像正是 Bruce Wayne 將自己所懼怕的東西,為了伸張正義而建立出來的。

相對於守護高譚市的蝙蝠俠,Joker 的個性便截然不同。對 Joker 而言,他相信人性的黑暗面,並竭力將之發揚。秉持著這樣的最高原則,他不在乎手段;甚至對於自己臉上的疤,每次的說法都可以不一樣。重要的其實不在於事實本身,而在於如何利用事實,去達成他想要的效果。邪惡嗎?也許,不過現實社會又何嘗沒有扭曲事實,去迎合自己立場的人呢?況且 Batman 在劇尾其實也做了同樣的事....

甚至其實 Batman 自己做事也是相當的不擇手段:他為了趕路可以開火轟爆路邊停放的車子,或許其中的某台車就坐著無辜民眾;他甚至在民眾的手機植入監視設備,如果不是為了追尋 Joker 而使設備曝光,天曉得會被應用在什麼方面。從這看來,其實 Batman 與 Joker 的個性非常相像,只不過 Batman 相信人性善面,並且盡一己之力維持治安:而 Joker 相信破壞與渾沌的力量,希望由這樣的恐怖去達成平衡 -- 而 Batman 的所為算是恐怖的不平衡。這也難怪當 Batman 嗆聲說要把 Joker 送進精神病院時,會被 Joker 反將一軍說可以找他當室友。

之後 Joker 為了與 Batman 的信念對戰,選定了三項戰場:Batman 是否會殺 Joker,渡輪上的人是否會玩大暴破,以及 Harvey Dent 是否會墮落。結果渡輪上的人們與 Batman 能堅持原本的想法,但 Harvey Dent 則拋棄了他原本堅持的原則:幸運硬幣原本象徵他不依賴運氣,只憑自己的努力創造,但之後他卻以機率決定他人生死。Harvey Dent 是個生活在聚光燈下的人物,他有勇氣對抗邪惡,但他無法戰勝自己心中復仇的怒火,而成為與 Joker 相庭抗禮的人 (對比漫畫中的 Two-face 的話)。

但話說回來,Joker 心中所設想的世界,其實是比較合我胃口的。當社會以友善的心態作為基礎時,作惡的人會得利,進而結黨共事謀取私利,而成為強大無法阻止的勢力。有人說 "千金之子不死於盜賊 ",結果就是連警察都成了千金之子,盜賊則變為不死之身。看看 Gotham 在第一集的樣子,或者整個台灣的社會,都是如此。就像 Joker 能玩弄 Batman 於手上,正因他知道 Batman 頂多就是把他抓起來關 -- 而 Joker 永遠有能力從凡人手上脫逃。這個社會已經有太多能從看守所,監獄,交通罰單中脫逃,甚至是修法保障自身權利的人了。

當社會把維持秩序的責任放在警察、監察單位,又把監督的責任托負到民意機關時,這些機關很快就會被收買,然後腐敗。這也是為什麼 Bruce Wayne 會用一個抽離的象徵來戰鬥。當這個意念能像 The Matrix 裡的 Smith 能無限複製到所有人的身上時,犯罪者要對抗的不再只是特定的機關,而是全人類。

總結一下我覺得三條主線對 Gotham 未來的期許及我的預期好了,其中我最喜歡的當然是 Joker 的想法。

  • Batman : 他要把壞人抓光光,又不想讓人幫忙。結果 Batman 這個意象一脈單傳,最後還是被幹掉 / 腐化,THE END。
  • Joker : 將人性中的不穩定性提升,並拔除所有人的保險栓。在短暫的不穩定之後,人們體會到自己的重要性及能力,如同惡勢力在本片中對 Batman 的反擊,人民反撲並殺死了 Joker ,之後即使連惡勢力亦不敢冒然作亂。
  • Harvey Dent : 完全的渾沌,他會在殺完想殺的人後自殺,或是在殺完以前就被殺,所以他非死不可,對世界的影響也最小。
  • 註 : 片中炸渡輪的那段,我認為囚犯們是做出了 "不殺" 的選擇,而市民則是做不出選擇。做出這種選擇的人傾向符合我在 Joker 路線的推測;而優柔寡斷不成大器的市民才需要 Batman 這種英雄出來為他們做事 -- 然後變成奴役他們的人。
(打得好累,又寫了兩三天,跟本忘記前面在寫什麼了 XD)

八三三砲戰 !

趕著在 3 點內完成前面兩篇 XD
如果有一天我當上聯合國國王的話,一定要訂定 833 砲戰日,記念我在 8 月 3 日 3 點發表的偉大意見,並規定所有人類不得在 8/3 3am 吃午餐 !

既得利益者啊,請問你們是缺德、腦殘、或以上皆是


在文明社會裡,當不同族群在權利上發生衝突時,會以對公眾的危險、仰賴社會資源或科技的程度、以及改變造成的花費,來決定優先次序。正所謂操縱的器械動力越強 (powerful),需要管理自己行為的責任也就越大;對社會造成越多的風險或使用較多資源,則本身的優先權就越低。在討論路權時,依照這樣的標準可以推論出先進國家裡的優先次序如下:

  1. 列車 : 停止困難,因此設計平交道,限定車流與列車交會時間,避免發生危險
  2. 行人 : 行人未經證照考核,並且是對社會威脅性最低的交通方式,因此具有城區內最高優先權
  3. 自行車 : 同樣不需證照,威脅性低,並且結省能源
  4. 機車 : 需受訓練並考照,對他人的威脅性中等,油耗低,佔用停車位小
  5. 汽車 : 需受訓練並考照,對他人的威脅性高,油耗高,佔用停車位大
  6. 大型車 (含工程車輛) : 需受訓練並考照,對他人的威脅性高,油耗高,佔用停車位大
其中大型車在許多國家均需安裝額外的警示裝置 (如車速指示燈等),並限定可行駛的時間及區域,並且常有嚴格的連續駕駛時間規定。

結果呢 ? 台灣的 3, 4, 5 三種車輛,順序是反過來放的。市區有一半的車道禁行機車 (粗估),所有腳踏車限行駛於路面最外側 1m,行駛人行道還要罰款 ? 笑話。我看不出一個個沒騎機車或腳踏車在市區通勤,甚至是出門還有警察控制紅綠燈的狗官,有什麼樣的腦袋能夠憑空想見城市裡的交通狀況。

也許陳扁扁和馬九九兩位前台北市長腦中的 "交通黑暗期",指的不過是信義路少兩個車道,忠孝東路少兩個車道而已。他們跟本沒體會過從台科大門口到基隆路園環,可以騎 10 分鐘的那種生活;他們也永遠不會發現,台北市還有不少可以當作 "跳台" 的路面。這些市長,交通部長,交通局長,又有多少人是真的會用各種不同的交通方式,走遍負責區域的每個角落 -- 市民每天接觸的真實面貌呢 ?

很明顯,沒有 !

當一群冷凍牛肉每天坐在冷藏車裡,在市區裡快速運輸的時候,你要怎麼期待他們有一天會自己變成美味的羅宋湯 ? 跟本不可能 ! 當民眾委派權利,由肉屑管理自己生活周遭的每一件事,結果這些肉屑只是打嘴砲說自己是羅宋湯,人民連不買單的權力都沒有。這樣的餐館能繼續營業,這樣的人民不會長出選購食材的智能,可真難以理解啊。

然後交通部說,因為重型機車違規情型嚴重,所以考慮收回路權 ? 這是哪們子的鬼話 ! 路權是在人民手上,而不是交通部長褲襠裡的。交通部該做的事是從新規劃車道及限制,落實車速分流政策,並且要求嚴格取締各種違法項目 (違規變換車道,未依車道行駛,方向燈,超速,闖紅燈等等)。那我也要因為巷道內汽車違規停車情型嚴重,要求禁止汽車進入市區 -_-#

無法管理重機,無法管理車流有效利用車道,這叫無能;無能訂定並執行政策,反而以違反公平原則的禁止手段掩勢問題,這叫無恥;無法悍衛人民應有的權利,反而將這些權利視為本身可以操控的手段,這是無德。

國情不同 ? 交通亂象還不是政府長年養出來的.... 一句國情不同就避掉所有改革,閒來無事又能出國考查兼旅遊,肥缺啊肥缺,癡肥啊癡肥。

Garbage in, garbage out, 看看政府有什麼樣的官員,就知道他們能搞出什麼樣的政策。

喔,今天我又看到警察躲在路邊準備抓機車騎班馬線。如果人民在那邊有騎車過馬路的需求,那麼有智商的政府應該是將它建成十字路口才是。如果中華民國政府的選擇是安排警察埋伏,那這個政府的智能與格調可想而知。

順道一提,台大男二舍的機車停車場門口被設計在人行道上,也常在那邊看到警察埋伏。不過話說回來,中央百世大樓可是很屌的直接在人行道上畫汽車停車格,然後每天汽車就在人行道上開上開下,也沒看過警察靠近關切過。看來對台北市警察來說,在班馬線上騎機車,比在人行道上開車還危險呢 !

兵役法 ? 叫那些委員、官員和長官每個人吃一本吧


到了現在這個年代,還在相信台灣養軍人是為了維護國防實力的人,腦子都應該接受豆腐防蚊液移殖手術。經實驗證明,移殖後的受試者,平均智力商數為 100,標準差為 15,均與社會智能正常族群相妨,因此這項手術能有效幫助腦力不足患者。(註: 受試者的智力商數是以成年受試者為母群體測試得來) (FYI, 使用豆腐是因為它好吃而且健康,加上防蚊液則是因為我桌上剛好有一瓶)

所以呢 ? 當真正維持台灣命脈的是國際輿論、經濟力、與工業技術力時,要求所有 "男性" 服兵役,有效遺忘所學、浪費時間、並與尖端科技技術脫節,實在是個了不起的決定。據說有位大法官 (其實還有些腦子裡不知道裝什麼的學者啦,不過在他們查明 Law of Gravity 是哪一國的法律之前,我不屑聽他們說話),用他 (們) 犬儒的思維,做出了兵役的差別待遇是基於性別不公正下的合理處置。我操 !

精實 ? 那種欺上瞞下,只做表面功夫的組織,還能有什麼作為。在全世界都在講求實力或學歷的時代,偉大的中華民國國軍還在比經歷 ? 熬得久 ? 官階高 ? 花拳繡腿的單位就算待了再久,就算身上戴滿星星,那種智能妄想稱作 Homo sapiens 都不慚愧啊。

如果這個社會需要勞工,那麼他們會提出合理的價碼,讓社會上有需要的人應徵;大多勞動工作對體力的要求門檻較高,因此有能力從事的人則以男性為主,這是社會通則。既然如此,中華民國憑什麼因為軍人需要身體勞動,而強制所有男性服兵役 ?

況且中華民國國軍和曬乾的狗屎也沒兩樣 -- 外頭硬邦邦,裡面又爛又臭。

喔,既然國防部有錢辦個迷彩夏令營讓女性同胞去玩樂一夏,學員又能結訓,那是不是代表有部份女性的體能足以通過兵役訓練 ? 那應該修改兵役法,挑選這些體能水平好的女性同胞去服兵役,保衛國家,盡國民的良好義務嘛。

更別說現在還有什麼體育替代役、研發替代役等等的鬼東西了。如果這些替代役的性質皆包含身體勞動,使得男性體能均應能負荷,而女性體能均不應能負荷的話,我自願降級和這些蠢豬共用 Homo sapiens 的種名。

男女先天生理有異,因此政府該做的事情是避免任何一種性別,因為這些差異使其失去工作能力或工作機會。現在這樣的兵役制度正是 "性別不平等" 的完美寫照。我一直認為我有能力去理解犬類 (Canidae) 以上生物的思維,或許分類學家有空應該好好研究那些學法的傢伙,然後為他們找出一個更適當的分類學位置,也許是在 Mamalia 底下建一個新的目也說不定。當然,如果分子生物分類學家不同意這樣的看法的話,我也能接受把他們分到另一個亞種去,例如 Homo sapiens retardae

雖然軍隊和政府裡充斥著該死的既得利益者,不過還是留到下一篇再罵吧....

2008-07-23

關於機車的幾件小事

  1. 跟實驗室學弟跑去某地考了重車照回來,考照本身真的是容易到一種極至。不過還是聽得出有些學員的加速及離合器控制有點恐怖。一本橋我再怎麼騎了不起就是 14-15 秒,結果實驗室學弟騎破表 (破20秒會歸零) 好幾次,實在是太強了 T_T
  2. 剛才某位有名的 Somiya 傳訊過來,發現某間台南的情境汽車旅館裡竟然有放台勁 !!! 有圖有真相,還有其它 blogger
    的實照,真是太威了 XD 不知道帶油和傢私過去有沒有辦法把它弄到可以騎走的狀態 lol~

2008-07-15

Samsung 913B 畫面出現問題,準備送修

三年前買的 Samsung 913B 從大約三個月前就有點不太順暢,切換成最高解析度 (1280x1024) 運作時,會突然跳成全黑畫面。有些時候畫面則會充滿了一些不規則的圖樣,看起來像是一個四維函數 (x,y,t,b) 隨時間逐漸成為穩定態,其中 t 表時間,xy 表各 pixel 在螢幕上的水平座標,而 b 指的是亮度。每個 pixel 顯示的都是灰階色。

在這種狀態下,更換顯示卡、更換連接的電腦、或是將解析度變更至 1024x768 以下,都會使螢幕恢復正常運作。暫時關閉螢幕砥礪道德也有幫助,正所謂以德服人嘛。

然而這幾天症頭變成無論切換成何種解析度,螢幕都不會顯示畫面 -- 唯一的做法是拔電源線重插,同時將解析度降至 1024x768 以下。即便如此,若螢幕遇切換顯示模式,如執行某些全螢幕的遊戲,又或是再更換解析度,或進入螢幕保護模式時,又會變成如上圖的黑屏。圖中字樣為 Not Optimum Mode, Recommended Mode: 1280x1024 60Hz.

透過 Google 稍微爬文,發現不少遇過這樣的故障,處理方式為更換機版。我家這台既然還在保固期內,當然是送回原廠處理囉 XD 暫定明天到府收件,欲知後事如何請待下期分曉。

另外,一般購買電子產品時,我習慣會在一段期間後將外盒丟棄。(有些店家即使非郵購買賣,也接受七日內換貨)然而買液晶螢幕時,我會盡可能的保留外盒及保麗龍等內裝。否則等到要送修搬運就知道麻煩囉 XD

2008-07-04

怪怪的 Google Adsense 廣告



完全搞不懂我家為什麼會被放這種廣告 @@ 難不成國外的棒球規則都是靠訴訟和律師再維持的嗎 ? XD

棒球規則:好球之判定

依照棒球規則 2.72,好球之定義如下:

2.72 好球 (Strike):投手依照下列情況之一的正規投球得被宣告「好球」
(A) 擊球員擊球落空 (包含觸擊) 時。
(B) 擊球員未揮棒擊球,但該投球之任何部分在飛翔狀態中通過了好球帶之任何部分者。
(C) 無好球或一好球時,擊球員擊成界外球者。
(D) 觸擊成界外球者。
(E) 擊球員擊球落空 (包括觸擊),球觸及擊球員之身體或衣服者。
(F) 未曾落地的投球,於好球帶內觸及擊球員身體及衣服者。
(G) 擊成擦棒被捕球者。
整理上述狀況擊及其他規則條文如下:
  1. 當打者未對擊出球揮棒或觸擊,且該投球通過好球帶時,判為好球。
  2. 當打者對擊出球揮棒或觸擊,但未擊中該投球時,判為好球。即使打者被該投出球擊中身體或球衣。
  3. 當打者或盜本壘之三壘跑者在好球帶內觸及投出球,或裁判認定該投出球若未接觸攻方球員將通過好球帶時,判為好球。
  4. 擦棒被捕球應判定為好球。依規則 2.34,只有當擦棒球最初接觸於捕手之手或手套,之後在落地前確實接補,才判為擦棒被捕球;否則應視為界外球。
  5. 當打者觸擊球成界外球時,判定為好球。
  6. 無好球或一好球時,打者揮棒擊成界外球則判定為好球。
  7. 擊出球觸及剛揮完棒但仍在打擊區內的打者或所執球棒時,判定為界外球。
  8. 規則 6.02 (B) (C) (D) 打者在投手觸投手板後,且未經裁判宣告暫停時,離開打擊區或拒絕進入打擊區,得判定投手之任何投球為好球,或在投手未投球的情況下直接宣告好球。
關於界內球與界外球的判定,則有以下原則:
  1. 若球最初落點在一二壘或一三壘連線之後方,以球之落點為準。若球落於界內區包含邊線,則為界內球,否則為界外球。若球在飛翔狀態下飛出全壘打牆 (球場),則已通過時所在之位置決定。當球場有設置標竿時,標竿視為邊線 (界內區) 之延伸,因此擊中標竿之擊球均判為全壘打 (界內球)。即使球最初落於外野界內區,之後因球之旋轉而反彈回內野區,並滾至界外區,仍判定為界內球 (中職判例)。
  2. 若球最初落點在一二壘或一三壘連線之前方,則以球通過該連線、停止、或受到干擾之位置為準。當球觸碰場內建物 (壘包,本壘板或投手板除外) 、雙方球員、裁判、或地面物體 (鳥、狗、觀眾、球童等) 時,視為受到干擾。須注意當球受到其中某些干擾時,可能成立各種妨礙或死球狀態。
  3. 若球擊中投手板後,反彈自內野之界外線進入界外區,則為界外球;若球擊中任何壘包,而反彈自內野之界外線進入界外區,依規則 2.25 (C) 仍為界內球。

棒球規則:壞球之判定

棒球規則中,對於壞球的判定相當簡單。依照規則 2.04,壞球之定義為 "投手正規投球未直接通過好球帶且擊球員並未揮棒者"。規則中的相關狀況如下:

  1. 投手正規投球未通過好球帶,且打者未揮棒
    參考 2.04 原註,若球先落地才反彈通過好球帶,且打者未揮棒,則為壞球。若打者在兩好球的情況下對該投球揮棒落空,即使補手接住該球,仍不得視為確實接補,因此成立不死三振 (前題為出局數與壘上跑者合於規則)。

  2. 投手在壘上無跑者時,故意拖延比賽或違規投球。
    依照規則 8.04,在壘上無跑者時,投手應在接到球後 12 秒向打者投球,否則判定壞球。依照規則 8.02 (D),當壘上無跑壘員,但投手違規投球時,計為壞球。規則 2.38 則定義 "違規投球" 包含 "投手未踏投手板投球" 與 "突襲投球 (Quick-return pitch)" 兩種情況;這兩種狀況依照規則 8.05,在壘上有跑者時均為投手犯規 (Balk),罰則為跑壘員各進一壘,打者不計球數。

    規則 8.048.05 (H) 都與投手拖延比賽有關,但 8.04 專指壘上無跑者之情況,罰則為壞球一顆;8.05 (H) 則是當壘上有跑者時,投手無故拖延比賽,罰則比照投手犯規。投手未踏投手板投球定義於 8.o5 (G),而突襲投球定義於 8.05 (E)。從另一方面解讀,可視為某些 "投手犯規" 因有欺騙打者之虞,因此在壘上無跑壘員時仍裁定為壞球加以處罰。這些情況包含 8.05(G) "投手未踏投手板投球" 、8.05(E) "突襲投球"、與 8.04 或 8.05 (H) "投手拖延比賽"。應特別注意的是 8.04 與 8.05 (H) 認定條件不同,有跑壘員時不存在 12 秒之限制。

    當壘上有跑者時,投手犯規為死球,因此跑者不得進壘;但上述情況為比賽進行中,若打者擊出該投球,則攻方可在該行為 (Play) 終了後選擇其結果,與妨礙行為類似。

  3. 投手投出之球在好球帶外觸及打者,但打者故意不閃避,則依規則 6.08 (B) 判定為壞球,而非觸身球。

  4. 投手在壘上無跑者時,在投球動作中球從手中滑落,且球滾出界外線時。
    若投手在壘上有跑者時,觸投手板後故意或無意落球,應判定為投手犯規。
    若投手在壘上無跑者時,觸投手板後故意或無意落球,但該球未滾出界外線,則不視為投球,亦不計球數 (No-Pitch)。
    由於投手動作均由 "投手以軸足觸投手板" 開始,且在投球動作中軸足均不離開投手板,因此 "投球動作中" 與 "觸投手板後" 其實是等效的。"投球動作" 自投手踏投手板開始,至球離開投球之手為止。
當打者之球數為四壞球時,打者有權進至一壘,稱為四壞球保送 (Base on Balls)。

2008-07-03

熱昏頭了 @@

今天上午和隊友及隊友的朋友打了場友誼賽。
考量到之前已經快一個月沒碰棒球,體力應該會有點虛。
雖然如此,我還是當投手 + 裁判 (有 DH 所以進攻時閒著)

隨便丟丟發現對方打者大多碰不到我的速球,所以我一開始偶而就降速丟幾顆,後來就乾脆隨便丟,讓比賽節奏快點 XD 然後就付出代價被打右全了 :p 若在正常大小的球場應該還是接得到的吧。

有兩次牽制差一點點抓到跑者,不過其中一次一壘手接球二壘手轉傳球失誤,就多送一分囉。整體投球內容普普,那邊的投手丘很怪異,直球普遍偏高。對方出的主審很不喜歡撿變化球的樣子,高的低的都不太給。不過他們那邊的裁判也是局局換,投起來相當麻煩....不過這都不是什麼特別奇怪的事。

我方進攻時,有一顆打者打到球棒裡面的球,結果變成內安。他們的球員就跑來 argue 說球在接觸球棒後,又碰到打者的大腿才彈出來。結果我心裡想著 "沒碰到" 結果嘴上居然說出 "那是比賽進行中" 的瘋話 XD 能說出這麼離譜的東西,我唯一想得到的理由只有被熱昏頭而已。話說回來,如果是在比賽中有對手去爭一些很沒意義的東西的話,也許我的控球會突然變差也說不定 XD 雖然棒球規則嚴禁 "故意觸身球" 這種事情,不過降控球求球速是被許可的。

有一顆符合內野高飛球的球,不過我一看就覺得是在界外,所以就沒舉手了。後來想想,其實球也可能好死不死落地後又彈進來,以後還是先宣告的好。另外雙方都有對不死三振認知錯誤的情況,有兩三個打者是因為離開打擊區,明顯放棄進壘,才被宣判出局的。但有一球滿壘二出局,第三好球落地後,補手直接撿球踩本壘,這個 Play 就相當不錯。

投手犯規其實也是狀況不斷,不過大部份都是小問題。基本上假如沒有欺瞞跑者的嫌疑,我是覺得小東西可抓可不抓啦,例如踏投手版的位置,雙手合於胸前的時間點 (動作介於揮臂與固定式之間) 等等等。然後有不少球場其實投手丘都很爛,左右腳各一個坑。像這種情況下,我不會要求投手必需接觸投手板,只不過軸足一定要給我乖乖踩在坑裡頭 XD

2008-06-28

棒球規則:不死三振,內野守備員故意漏球,與內野高飛必死球

雖然棒球是種以比較雙方得分多寡決定勝負的遊戲,不過比賽進行的 "橫軸" 其實是出局數。在一場九局的比賽中,一隻球隊最多就是拿到 27 個出局數;而裁定球員出局,也就成了棒球規則中相當嚴厲的處份,僅次於褫奪比賽而已 (驅逐出場視情況,也可能對球隊不造成傷害)。

然而在棒球規則中,有數種 Play 會在 "攻擊方沒有犯錯" 時,裁定攻方球員出局。這些情況是為了避免守方在這些特定場合,藉由選擇某些行動,使攻方 "必然的" 發生雙殺。這樣的場合包含 "內野高飛必死球"、"內野守備故意落球",以及 "不死三振之成立條件" 三項。先從簡單的講起好了。

  • 不死三振之成立條件
    在某些狀況下,當補手無法接補 (定義見規則 2.15,並參考 2.34) 第三好球時,裁判應宣判好球,但不得判擊球員出局,亦不得提醒擊球員未出局。此時擊球員依規則 6.09(B) 成為跑壘員,並具有進壘義務;此時若一壘有跑者,則該跑者亦連帶具進壘義務。若使攻方由原本應三振的情況,藉由補手選擇 "不確實接補該球" 而造成雙殺,是不公平的。因此在可能發生這種雙殺的狀況時,不死三振不成立,擊球員在 "裁定第三好球" 的瞬間出局。

    為了方便記憶,原則如下 "未滿兩人出局且攻擊方一壘有跑者時,則無不死三振"。規則並沒有明確的敘述上句,而是以 6.05(B)(C) 兩條描述打者會出局的情況來定義。

    無論是否發生不死三振,場上仍為比賽進行中。另外若投手投出之球離開球場成立死球狀態時,以球出手之瞬間作為各跑壘員所佔有之壘。

  • 內野守備員故意落球
    依照規則 6.05(L) 的敘述 "無出局或一出局,跑壘員佔一壘,一、二壘,一、三壘或滿壘時,內野手故意掉落「界內飛球」(包括平飛球)時,形成比賽停止,各跑壘員應返回原壘"。本判定成立的時機與不死三振完全相同,就是為了避免守備方故意漏接該球後,使一壘跑壘員具有進壘義務,再加以雙殺。一壘跑者這時會顧慮 "若該球被接補,則有再觸壘義務" 而離壘包不遠,因此容易造成雙殺。

    這條比較需要注意的是「故意掉落」的認定,僅成立於對「易於接補」的界內飛球,先以「手套或手」觸球,之後再使球掉落於地的狀況。因此若守備球員飛身撲球,但球彈或滾出手套時,將難以符合此項認定。若守備方能以手或手套之外的部位觸球,使球落地再行撿起傳球的話,也不會被認定為故意落球。若守備員掉落的是界外飛球,則因擊跑員與各跑者實無進壘義務,故無守備方造成雙殺之疑慮,自然不必判打者出局。

    這個 play 應立刻判定死球,打者出局,並使各跑者回投手投球時已佔有之壘。

  • 內野高飛必死球
    依照規則 2.406.05(E),在滿足某些條件時,當打者擊出內野高飛球後,裁判應立刻做出手勢。雖此時不必要 (我覺得也不應該,原因後述) 立刻宣判擊跑員出局,但因當該球確定為界內球之瞬間,擊跑員隨即出局,而若該球為界外球則跑壘員無進壘義務,因此可視同已免除了各跑者之進壘義務。當跑者沒有進壘義務時,就可以停留在已佔有之壘包上,免於受雙殺的恐懼。

    然而內野高飛必死球性質與前種情況有異:擊跑員實有充足時間移動至一壘壘包,因此即使守備方球員故意不接球 (故意落球則應依前項判定),也殺不到擊跑員。因此內野高飛球之認定條件需要至少有兩個具進壘義務之跑者,可簡記為 "未滿兩人出局且攻擊方一二壘有跑者時,有內野高飛必死球之判定"

    內野高飛必死球為比賽進行中,並且非促請裁決狀況,因此裁判應主動提示。又因內野高飛球之先決要件必滿足野手故意落球之要件,因此若野手觸及界內擊球的內野高飛必死球而故意落球時,應依 6.05(L) 判定為死球狀態。

    內野高飛球之成立與否,與球實際落點無關,只需裁判認定該擊球可由就正常守備位置之內野手輕易接補即可。因此無論該球實際落於外野草地區,或由外野手向前接補,均不影響該判定。

    另外,內野高飛必死球之判定只對界內飛球有效,因此擊跑員應在該擊出球確定成為界內球時,才可宣判出局。當飛球在邊線附近時,裁判常宣告 "Infield flyball if fair",提示若該球成為界外球,則內野高飛必死球之判定不成立。以下是幾種可能的狀況:
    • 宣判為內野高飛球,由野手在界內接殺:打者出局,野手記接殺
    • 宣判為內野高飛球,落於界內,滾出至界外前接觸野手:確定為界內球,故打者出局
    • 宣判為內野高飛球,在界內觸及野手但落球:打者因高飛必死球出局,又因故意落球成為死球
    • 宣判為內野高飛球,落於界內,滾出至界外停止:界外球,打者繼續打擊
    • 宣判為內野高飛球,落於界外,於界外接觸裁判,觀眾,守方球員或球場建物:確定為界外球,打者繼續打擊
    • 宣判為內野高飛球,落於界外,但因球的旋轉滾入界內停止、觸及建物或守備員:打者出局

標籤還是當標籤用吧

開始覺得搞笑型的標題就是要要一直換才會有笑點,放久就爛掉了 @@
可是一直換新也很累,還是直接照實寫吧

碎碎念/認真照舊,其它則視文章內容標記。
現在這種玩法其實比較像是分類 (Categorization) 而非標籤 (Tag)
後者對搜尋引擎其實是比較友善的啊 XD

2008-06-25

棒球規則:當兩投碰上兩打,從規則看起



(以上兩段影片原出處不明,但我是從這個網頁看到的)

網路上早就有篇歷史故事,提到很久以前有位 Switch-pitcher 碰到 Switch-hitter 的事。不過這樣的場面再度在現實中發生了。6/20 洋基的小聯盟球隊 Staten Island 碰上大都會的 Brookylin 時,恰好 Staten Island 的投手 Pat Vanditte 與 Brooklyn 的打者 Ralph Henriquez 兩個人分別能從兩邊投球/打擊。一場換邊的鬧劇就這麼搞了 8 分鐘。

在這樣的情況下,我認為投手有權要打者先決定站在哪一邊的擊球區打擊,即使規則並未如此明示。理由如下:

  1. 規則 6.06(B) 指出當投手在踏版接受補手之暗號時,打者不得由一邊擊球區移至另外一邊,否則判出局。當投手採用揮臂式投球動作時,雙腳同時踩在投手版上是被允許的,而在雙手合抱前,將手套由一隻手移至另一隻手也是被允許的。因此投手有權在採揮臂式投球動作時,在接受補手暗號之後,再決定要用哪一隻手丟球,並將自由足向後跨一步以開始投球動作。
  2. 擊球員在踏入打擊區,待投手開始固定式或揮臂式投球動作後,除非要求暫停獲準,否則不得退出打擊區。若投手採固定式投球動作,可視需要退版解開投球動作;若投手採揮臂式投球動作,在雙手合抱之前仍可退版。
  3. 投手無必要拖延比賽時,壘上若有跑壘員得判為投手犯規 (8.05(H)),若無跑壘員則在接到回傳球後 12 秒未投球,則可判定壞球。打者若不進入打擊區擊球,則可在投手未投球的情況下,直接宣判好球。因此在拖延比賽上,雙方的規範差不多,因此在相同行為的情況下,這點要打成平手。
由於棒球規則對於打者在同一打席內換邊打擊的規範比投手換手投球多,因此我認為在這種情況下,打者應先決定要進入哪一邊的擊球區擊球。這當然符合規則 9.01 (C) 的但書。

棒球規則:第三出局的得分究竟算不算 ?

依照棒球規則 4.09 (A) 附註,當第三出局為下列情況者,雖然跑壘員在該出局成立之行為中進入本壘仍不得記錄得分。

  1. 擊跑員觸一壘前出局時。(參考 6.056.06)
  2. 跑壘員成為封殺出局時。(參考 7.08 (E))
  3. 前位跑壘員未觸壘而被判出局時。(參考 7.10(A)(B)7.12)

因此在正常狀況下 (無促請裁決或妨礙行為),只要第三出局是封殺狀況 (Force-play),無論實際是被觸殺 (以持球之手或手套觸於身體) 或封殺(持球之野手以身體接觸跑者被迫進佔之壘包) ,該 play 之所有得分不算。
當因促請裁決或妨礙行為造成第三出局時,若第三出局符合上述規則之第 1,3 點,則此 play 亦不記錄得分。

例: 兩出局三壘有跑者,打者擊出安打進至二壘,但漏踩一壘。經守備方促請裁決後,擊跑員成為第三出局者。又因屬擊跑員觸一壘前出局,因此得分不算。
兩出局滿壘,打者擊出飛出全壘打牆之全壘打,但二壘跑者漏踩三壘壘包,經守方促請裁決後成為第三出局。即使所有跑者及擊跑員均踩本壘,僅有原三壘跑者得分被記錄。


但若第三出局是對有進壘義務的球員促請裁決出局,得分究竟算或不算我就不清楚啦。

例: 二出局一三壘有人,打者擊出右外野深遠安打,跑者均奔回本壘,但一壘跑者漏踩二壘壘包,這樣的 play 我不確定是否能夠比照封殺,三壘跑者得分不算。我的猜測是如此,有空再找 A 級裁判前輩確認吧 XD

2008-06-23

棒球規則:當擊出球擊中裁判 ....

單純是把參加 C 級裁判講習所討論到的 case,稍微整理查證後發表於此。如果以後有時間的話,這個系列可能會每一兩週就出一篇。

擊出球擊中裁判依棒球規則 2.44(C) ,可能構成裁判之妨礙,為比賽停止球。因此要先確認擊出球的狀態 (界內 or 界外),以及裁判被球擊中的位置是否在守備方野手之前。若裁判妨礙成立 (界內球,在球通過野手前擊中界內區的裁判),則比賽停止,並依照規則 5.09(F) 擊跑員上一壘,其它跑壘員不動。但若發生擠壘,則被擠的跑壘員得向前一個壘包。

其它類似狀況的處理方式為:

  • 界外球擊中裁判:無論是在界內區或界外區擊中,都算是比賽進行中。
  • 界內球擊中界外區的裁判:比賽進行中。
  • 擊出球先接觸 (或通過) 野手後,再擊中裁判:比賽進行中。
  • 投球或傳球擊中裁判:比賽進行中
  • 傳球擊中壘指導員:非故意則為比賽進行中,故意則判跑壘員出局。
最容易被擊中的裁判是二壘審,在一般狀況下,也只有他會站在界內區。

5.09(F) 不應被解讀為 "所有跑壘員均向前一個壘包"。擊跑員能保送上一個壘,這項亦書於規則 6.08(D);但在關於 "全部跑壘員向前進壘" 的規則 7.05 中,並不包含裁判或跑壘員妨礙守備的項目,由此可知跑壘員無權進壘。

2008-06-20

9 局 15K,這是在打校內比賽嗎 ?

昨天睡前喵了一下 Joba Chamberlain 的比賽 (SD @ NYY),然後就看到睡著了 XD (念資格考太用力的關係,絕對不是比賽太無聊,或者是把體力都拿去寫奇怪的程式了)。今天早上起床翻了翻 BoxScore 才知道 Chamberlain (5.2IP, 9K), Veras (1.1IP, 1K, WP), Farnsworth (1.0IP, 2K, H), Rivera (1.0IP, 3K, SV) 四個人聯手送出誇張的 15K.... 這是在打校內棒球嗎 XD
然後 Rivera 在今年四、五、六月的總三振數,分別是 11 (11IP), 13(14IP), 與 15(9IP),相當具有壓制力。
至於 Chamberlain 在轉先發前後的成積對照如下:

定位 / ERA / G / IP / H / R / ER / HR / BB / SO / NP-S
後援 / 2.28 / 20 / 23.2 / 16 / 6 / 6 / 1 / 11 / 30 / 403-252 (0.625)
先發 / 2.45 / 4 / 18.1 / 16 / 7 / 5 / 1 / 12 / 19 / 329-197 (0.599)

在轉先發之後,雖然 BB,SO,S/NP 都往不好的方向移動,不過考量先發/後援投球體力的控制,仍屬合理 (不要叫我去統計 SP/RP Conversion XD)。前幾場比賽對他所設定的投球數量,在比賽中是個問題;而照這個進度來看,等到季末時的總投球局數,會對他及洋基造成另一個問題。不過這樣的好表現,也算是回應了 Johnny Damon 之前的質疑。

2008-06-19

除了吃掉 KKBox 的 DRM 以外....


前陣子為了想找某首歌,刷卡買了半年的 KKBox。我原本都是以購買實體 CD 為主,但前陣子要找首有點歷史的歌,才開始去查線上音樂服務。當時我沒查 iTunes Store,然後 Amazon 說他們家的音樂不賣國外,所以就沒買成。後來發現 KKBox 其實也有不少外文歌,所以就刷卡買了。雖然網路上也有換 email address 連續試用的技倆,不過既然他們價格合理 (7xx NTD / 半年),該賺的還是要給人賺 XD
KKBox 與 ezPeer 兩套線上音樂服務都提供音樂下載離線播放,但因檔案有 DRM 保護,所以無法複製至其它電腦或媒體播放器 (如 mp3 player),或以 WMPlayer 之外的軟體播放。為了能讓我家 T.sonic 840 能播這些音樂,我在 google 上爬到一些能夠破解 DRM 的軟體。我不太想自己 host 這些東西 (我沒種),不過聽說其中有套軟體用 "convert.exe" 當作關鍵字就能查到。
這套軟體的功能相當精簡,能在一秒內解除 wma 檔案的 DRM 限制,不過它是 console 程式,對檔名的判斷會有些小問題 (許功蓋),並且一次只能接受一個 input。寫 shell script / bat 檔案一次轉完整個目錄的檔案,是種合理的解決方式,不過用起來總讓人感到相當 geek。所以我花了一個下午用 VS.Net 2005 寫了一隻 wrapper 出來 (太久沒碰了,不然應該 1-2hr 就能搞定),能將檔案表列處理,並處理檔名問題。目前只能由 OpenFileDialog 讀檔,無法接受拖放輸入,不過其它功能都寫得差不多了 XD
由於本人做事一向低調,這軟體我也沒打算公開 (應實驗室學弟要求寫的)。不過要是有和我夠熟的人,恰好有買 ezPeer 或 KKBox 帳號又想用 mp3 player 播放音樂的話,我也不會介意有人使用這隻小程式。不夠熟的人 (例如從 google 搜尋 "KKBox DRM 破解" 爬到這篇的路人) 就不用試啦,前面的資訊絕對足夠你們找到破解程式的。

2008-06-18

Google Browser Sync 確定不支援 Firefox3

下載了 Firefox3 以後,不可免的要開始更新各種 plug-in / extension。當下發現的第一件事就是 Google Browser Sync 不支援 Firefox3。基於 Google Toolbar 有發 Firefox3 的版本,猜想 Google Browser Sync 會發新版,應該不是件偏離邏輯的事吧 XD

不過用力爬文以後,只發現這邊有消息指出,Google 因為把原本做 Google Browser Sync 的人拿去做其它事了,所以將停止它的開發 T_T 原有 Firefox2 的版本則會在 2008 年繼續提供服務 (之後就不知道會怎樣囉)。

Google Browser Sync 可以在不同機器的 Firefox 間同步下列資料:

  • 書籤及歷史 (Bookmark & History):這兩項都不難找到替代品,使用 Foxmarks 同步書籤相當方便。Mozilla Labs 做了一個叫作 Weave 的服務,能夠同步書籤及歷史。這東西似乎有限制註冊人數,前兩天一直無法登入,不過剛剛 (6/19 7:30) 好像又開放註冊囉 ^^;
  • 儲存的帳號及密碼 (Password):目前可以使用 Password Exporter 把密碼弄出來,或是以 PasswordMaker 這樣的套件管理/產生密碼,不過終究沒有線上自動同步來得方便啊 T_T
  • Cookies:這樣不管用哪台電腦爬論壇,都不需要一直重新登入囉 XD 有些網路小遊戲的記錄甚至還可以共用。
除了同步書籤及歷史以外的功能似乎都不太容易被取代,看來要等一陣子才能讓 FF3 變得和以前一樣方便囉 T_T

Firefox 3 上了

Firefox 3 火熱上映
Firefox 是一個開放原碼的瀏覽器,在許多平台上都有包好的檔案,安裝執行相當方便。它可以加入多種擴充功能,包含 extension, plug-in 與 themes,自由度相當高。我的電腦上雖然安裝有 IE 7.0, Opera, Safari 與 Firefox 2 四種瀏覽器,不過平常我都是使用 Firefox。

透過 Google Browser Sync 可以同步所有電腦的書籤。雖然它有時候會秀抖,把整個書籤弄亂 XD 不過拿本地備份再蓋回去就好。另一個方法是改用 Foxmark
PCMan 寫的 IE Tab 能夠將Firefox 裡的某個 tab 改以 IE 核心顯示,這在碰到某些不怎麼合標準,或者是使用邪惡的 ActiveX 技術時很好用。Mac 就拿它沒輒囉。
LittleFox 是一套將按鈕縮小的 theme,把螢幕空間盡可能的留給網頁呈現。
AdBlock Plus 是套強大的廣告清除套件,不過有些時候我還是會把它關閉,廣告可是大多網站生存的命脈啊 XD
其它我常用的 plug-in 還有 Download Statusbar, DOM Inspector, Web Developer, Google Toolbar, Tab Mix Plus 等等等 XD 如果想玩酷炫特效的話,Cooliris PreviewPicLens 更是非裝不可!

雖然說 FF 2.0 功能及擴充性都相當強大,不過它在執行 javascript 的時候,速度並不是太讓人喜愛,特別是在執行一些 Google 應用的時候。FF 3.0 則改用了 Gecko 1.9 核心,據說 js 執行速度更上一層 (不過我沒抓 Beta 下來玩 :p)。網路上有人說 FF 3.0 (Gecko 1.9) 執行 js 速度略慢於 Opera 9.5,而 CSS 載入速度略快,不過相關評測還是等 FF 3.0 正式發布/使用者多了以後再看吧。

Firefox 3.0 企圖突破 "發佈日最多下載" 的世界記錄,因此在 6/17 日正式發布起 24 小時內 (台灣時間為 6/18 1:00am - 6/19 1:00am) 請有興趣的玩家盡量衝量囉 XD 目前已經可以從官網下載了,不過可能是因為網路流量或磁碟 I/O 的關係,需要 Refresh 幾次 :p

** 附註: 目前有些附加元件未能使用於 FF 3.0 上,至少包含 Tab Mix Plus 與 Google Browser Sync。官網的流量似乎也被 FF 3.0 下載塞爆,無法連入下載附加元件的網頁。看來要等下載日結束後才有空慢慢整理囉 ^^;;;

2008-06-16

授權


上次去找 Atticus 的時候,其實順道聊了些關於圖文授權的東西。

我之前一直認為,在傳統媒體的框架底下,所謂的 "群眾" 與 "文字生產者" 其實是站在兩個對立的立場。文字生產者從某些方面得到收入,因此他們有義務管好自己生出來的字,拍自己要用的圖,拆自己想寫的機器,並使用自己評測的產品。

不過在這個好像是 Web 2.0 的時代中,每個使用者都可能會變成資訊提供者,並且也可能透過他所提供的資訊獲利,無論是透過單純的 page view、廣告收入、或是透過所建立的名聲而獲利。在這樣的前提下,限制內容只能做非商業性的引用,似乎變成有些太仇視商業界了。

當然,我還是覺得所有媒體都有義務要維持自己的品質,特別是有在收錢的那些 (使用者付費,或包含廣告都算)。所以中國時報的吳清和事件,會永遠存在我的記憶中。但若是這邊的某些資訊,能夠使任何媒體的內容往好的方向邁進,那麼被引用也不算是什麼大不了的事 (特別是跟本沒人會想引用吧XD)。

總之即日起,本 blog 的所有內容,包含文字、圖像、聲音等,除非特別聲明,否則均改以 CC BY-SA 方式分享。詳細內容請見右邊 "授權方式"。授權條款變更亦適用於過去發表於 Blogger、Roodo、Spaces、Pixnet、Xuite、BBS 等媒體的文章。

關於 Toshiba 的東西

快一個月沒刻字了,果然最近有點忙。雖然昨天下定決心要拼命念書準備資格考,不過還是閒晃到某篇文章,決定跑來記錄一下 XD

經由某些四次元的聯結,發現 Mobile01 (敗家聖地) 的 Toshiba 看版裡,有兩篇與該公司出產的 LCD 電視的相關文章,連結在這邊這邊。這兩個討論串都疊得頗高,並且其中許多圖片聯結都已年久失修而不可考。然而透過其中的文字內容,還是可以拼湊個大概來。

簡單的說,台灣新禾代理日本 Toshiba 公司的電視機 (型號為 37GC3000G) 在台灣銷售,並以 NEW Meta Brain Pro 作為宣傳。在台灣的廣告 (DM 等) 則包含 "日本原裝進口" 或 "影像處理晶片" (NEW Meta Brain Pro - CPU) 等字樣。然而在某人拆機後,發現其中只是採用 GENESIS 公司的集成晶片,與廣告內容不符。之後無論是向新禾或日本 Toshiba 反應,所得到的回應只是 "NEW Meta Brain Pro" 為技術之代稱。關於台規與日規機之間,PCB 基版上晶片數量的差異,則僅以 "所需功能不同" 帶過,但對實際功能/規格差異未有解釋。除此之外,台規機似乎也無法滿足 Spec 所列之規格,GENESIS FLI8548H 僅支援 8bit 影像處理,與網頁對 NEW Meta Brain Pro 所述之 14bit 有差異;並且該晶片不支援 HDMI 1.3。

之後台灣新禾弄了一份切結書出來,要求購買人聲明自己已經拆過機,並且在新禾檢查機器未經修改或毀損後方同意退款,並具有保密責任。

現在這個年代商譽建立不易,搞 Cost-down 修規格,結果拿三級品打二級廣告,賣一級價位,被踢爆後還擺高資態擬這種可笑的聲明,看來 Toshiba / 新禾應該會難過好一陣子。或許跟發生點也有關係吧,這種要是在日本發生,搞不好要有好幾位主管請辭下台的事件,結果在台灣居然會這樣玩搓湯圓,連 Toshiba 本社也一起跳下來搞,看來日後購買他們家的所有產品都需要格外小心。

那種聲明書只有在賣出第一台的時候有用而已。退貨退款 ? 沒付封口費,誰有義務為你保密啊,特別是保密條款還附加 1M NTD 違約金勒,笑話!就算有 100 台電視這麼被被退貨好了,網路上還有至少 2500 人知道 (並傳佈) 這些訊息。傳遞事實當然也不算是妨礙商譽,並且這 2500 人也不可能腦殘到沒事亂簽保密條款,真不曉得是哪個國家的主管會想出這種笨處理方式。

碰到這種狗屁倒灶人贓俱獲的事件,企業主還是乖乖認錯,然後把廣告通通改掉,並將已售出的所有 37GC3000G 通通換成日規機,並讓購買人能選擇原價退貨 (無論有無毀損) 吧。那種搞笑的保密條款也不用簽了,列出來只是顯得自己腦殘而已。虧個一兩千萬又怎樣 ? 像那種五子哭墓的廣告,就算連打十年也建立不出這樣免費換機的企業形象啊。