遺落戰境 Oblivion

oblivion

秉持著電影文不會有雷的慣例,這篇不會提到太多劇情上的細節,雖然我發現這樣真的很難敘述心得… Orz

我一向對這種末日氛圍的背景設定很有興趣,大概是在半年前看了預告片之後就非常想看這部片。老實說看了預告片之後,我第一個聯想到的是《瓦力》 (Wall-E),當所有人類到外太空舒適的渡假的時候,可憐的小機器人留下來收拾人類留下來的垃圾殘局。情節上真的有些相似。

繼續閱讀 “遺落戰境 Oblivion”

遺落戰境 Oblivion

網路本匿名,何處惹爭議?

剛好最近 ask.fm 很流行,觀察了一些問問題與被問問題的人的看法,想來紀錄一下我自己的感想。

我認為網路本來就是匿名的。不討論那種入侵 ISP 資料庫取得客戶真實身份的狀況,每個人在網路上也不過是一個躲在帳號/45度仰角自拍大頭照後面、對著螢幕敲鍵盤的人罷了,對也許從未見過面的另一個人來說,每個人都是匿名的,即使你常常使用某一個暱稱,常常使用某一張大頭貼,充其量也只能表示你應該是同一個人,而你是誰根本不重要。不過在這個連咖啡機都會有推特帳號的年代,還不一定保證帳號後面是人呢。

那麼,為什麼要假定匿名的人都是抱持著惡意、需要謹慎小心面對的態度呢?試問現在的網際網路有對任何非匿名帳號的行為有任何保證措施嗎?難道只因為在現實生活中會碰到面,該有的提防就不應該有了嗎?中國大陸最近要推網路實名化,而南韓才正要取消,而應該不只我認定無罪推定是普世價值吧。

其實滿多網路機構/名人會在 reddit 上面辦 AMA (Ask Me Anything),透過這些回答網友的問題,他們也可以收集到許多人們對活動、人的真正感受、想法。對舉辦活動的人來說,每個網友都是匿名的在提出問題,但這些問題的確都代表了某個人的聲音,這聲音不會因為他住在哪裡、他做什麼工作而產生差別,若是舉辦單位只在乎發問的禮節與網友的身份、身家背景,那這類活動就跟核四的說明會一樣,一點意義都沒有。

所以,我認為在 ask.fm 上面因為匿名所產生的一些令人不快的問題,只是單純的人性表達,只是大家真正想問的問題罷了。這些問題不會因為推行網路實名就消失,所以也沒有必要對這些問題不快,事實上能看到這些問題,也比它們的被默默的埋在某個人的心裡好多了。另外一點是,我認為沒有不對的問題,只有不適合的回答。如果因為認為一個問題高度太低、太沒禮貌而拒絕回答,那本質上也喪失了一個溝通的機會,而在網路上我認為這是很寶貴的。

開放匿名問答本來就要做好價值觀被衝撞的心理準備,若只是想單純回答自己覺得舒適的問題,那其實也沒有必要辦這種匿名問答的活動,因為在各種場合都可以問的才對。

蝙蝠俠曾說過:”Its not who I am underneath but what I do that defines me.”

最後我想補充一點,匿名不一定代表不想負責,如果這個環境讓人不敢說真話、說真話之後要付出沈重的代價,那是環境有問題,不是匿不匿名的問題。每天在各式各樣的新聞網頁下面可以看到 Facebook 留言區塊,而 Facebook 目前我認為是最接近實名制的網站了,我也不覺得那些問題是有善意到哪裡去。

讓我們回顧一下旺旺蔡董說過的:「記者有批評的自由,但是寫之前要好好想一想,避免寫一些會冒犯別人的侮辱。」誰來定義侮辱呢?禮貌到底是要求自己的標準,還是加諸在別人身上的沈重枷鎖呢?

總覺得這篇邏輯好怪,日後有空再來修吧,先紀錄起來怕之後忘記。

網路本匿名,何處惹爭議?

FreeBSD 建置 Apache + mod_fastcgi + php-fpm

近日在實驗 Apache 使用 FastCGI (mod_fastcgi) 搭配 PHP 提供的 PHP-FPM 網頁架構。

Apache 如果什麼都沒有動的話,應該預設是跑 prefork ,也就是預先 fork 一些子程序出來等連線,這樣的架構在大量連線的伺服器來說不是很穩定。更改編譯選項可以換成用 worker mpm 方式,如此一來 Apache 可以用 thread  的方式來執行,資源利用較有效率。

除此之外,PHP 的部份也可以改用 FastCGI 的方式來執行。

預設安裝的 mod_php5 的執行方式是由 Apache 呼叫,等待 PHP 程式執行完畢之後再一起輸出給使用者。若是使用 CGI 的方式來執行,則當 Apache 收到 PHP 執行需求的時候,會去叫起 php-cgi 這隻程式,等待其執行完畢之後再回傳結果。當然這也不是有效率的作法,因為一次只接受一個連線,若有多個連線要叫起一堆的 php-cgi。若採用 FastCGI protocol 的方式執行,php-cgi 這隻程式會成為一隻 daemon 在背景執行,隨時等待連線。

FastCGI protocol 在 Apache 裡面的實做方式有兩種,mod_fastcgi 與 mod_fcgid。前者發展較早,由 fastcgi.com 維護,fastcgi process 開起來之後會一直在後台跑,隨時接受連線;後者為 Apache 基金會自己的項目,目標是可以隨時動態增減 fastcgi process 的數量,一旦用完就殺掉,有效利用資源又不致於在 晚上 流量大的時候被打掛。關於這兩個的優劣並沒有絕對,各位可以上網搜尋相關資料。

繼續閱讀 “FreeBSD 建置 Apache + mod_fastcgi + php-fpm”

FreeBSD 建置 Apache + mod_fastcgi + php-fpm

Les Misérables 悲慘世界

完美,無法挑剔。(其實是可以挑剔啦,但是不想挑剔)

劇本中描述的年代,認真想想,與今日也相去不遠呢。雖然現在我們了許多體制、方法與管道,但法律與人心的衝突還是時時刻刻的在上演。

主角尚萬強因親戚的小孩飢寒受凍所以偷了條麵包而入獄,現代社會也許不太可能發生這種事,但若是今日你也遇到相同的狀況而所有你已知體制內且能力範圍內可行的方法皆告失敗,該怎麼辦?更何況類似的事情也不是沒發生過,參見《不能沒有你》。

社會體制既然為人所制定,則必然有其不完美之處,而我們應當尊重其不合理之處,要求其他人服從,或者是要求改進不合理之處呢?值得大眾討論。

Do you hear the people sing?

繼續閱讀 “Les Misérables 悲慘世界”

Les Misérables 悲慘世界

dokuwiki 整合 minecraft 驗證系統

dokuwiki 是一套我很喜歡的迷你 wiki 系統,他的特色包括輕巧又有足夠的功能、檔案以純文字撰寫等。

因為目前所架設的 Minecraft 伺服器有採用 AuthMe 驗證系統,因為要在遊戲裡面註冊帳號實在是很麻煩,因此很早以前就寫了個網站方便更改資料、註冊帳號。但是 wiki 也需要帳號,考量到使用者編輯的需要,每次都要使用者一直註冊帳號實在是很不方便,因此就嘗試結合 dokuwiki 的認證機制,讓使用者可以使用同一組帳號密碼登入遊戲與網站。

dokuwiki 支援各種登入驗證方式,預設是採用 plaintext,也就是密碼 hash 之後存在純文字檔案中。由於 AuthMe 是採用 MySQL 作為後台,因此我們就以 mysql_class.php 這個 MySQL 範例檔案來修改。

新建一個 local.protected.php 於 conf 資料夾中,這樣設定檔才不會被自動設定蓋掉。同時從 /conf/mysql.conf.php.example 可以看到各種應該寫的 MySQL query,我建議直接改名成 mysql.conf.php 然後直接 require 到  local.protected.php 中,這樣升級時就不會被覆蓋。同時,這邊也要搭配 AuthMe 的架構,如果你有更改過資料庫欄位的命名,也要配合調整 query。

由於要自己撰寫 authentication backend,所以將 /inc/auth/mysql.class.php 複製一份,更名為  minecraft.class.php。可以將 minecraft 更改為自己喜歡的名稱,但注意於之後都要使用同樣的 class 名稱。

class auth_minecraft extends auth_basic {
//auth_mysql 改成 auth_minecraft
...
    function checkPass($user,$pass){
    //主要驗證的程式
    ...
    return $rc;
    }
}

剩下要改寫的部份其實不多,照著官網提供的資料結構與 AuthMe 給的密碼加密方式 (sha256) 就可以了。這樣就完成最基本的驗證登入,剩下的部份也都照著改寫,應該就沒有問題了。

Reference:
https://www.dokuwiki.org/auth:mysql 
https://www.dokuwiki.org/devel:authentication_backends

UPDATED 20130329:

沒想到才過沒多久,Dokuwiki 就改變驗證後台的撰寫方式了 Orz

現在是採用 Authentication Plugin 的方式撰寫,其實跟之前的方法差不多,主要就是要寫一個外掛放在後台這樣子。

詳細資源請參考 https://www.dokuwiki.org/devel:auth_plugins 

dokuwiki 整合 minecraft 驗證系統

Wreck-It Ralph 無敵破壞王

放心,本篇沒有雷!XD

Wreck-it Ralph

這是一個壞人不想當壞人的故事。

類似的動畫之前也是有,像是 Megamind 《麥克邁:超能壞蛋》、Despicable Me 《神偷奶爸》。這兩作都是反英雄電影其道而行,選了壞人作為主角。
其實我個人很喜歡 Megamind,他裡面用了非常多經典的流行樂作為配樂,像是 AC/DC、Guns N’ Roses 之類的… 扯遠了。這兩部片都是敘述一個平日為小惡卻有大愛的「壞人」主角改邪歸正的故事,雖然角色的代換讓人耳目一新,但最後還是回歸到傳統的合家歡大家樂結局。可能最近流行把人的立場中性化吧,壞蛋其實沒那麼壞,好人也沒有那麼高尚 (黑暗騎士是經典)。

無敵破壞王的故事很簡單,一個反派角色厭倦了每天被討厭、被排擠的電玩遊戲生活,想要做些什麼來改變大家對自己的看法,不過,對電腦程式來說,這顯然是一個 runtime error: the birth of artifical intelligence! (誤)

繼續閱讀 “Wreck-It Ralph 無敵破壞王”

Wreck-It Ralph 無敵破壞王