2010/12/30

經典名句

雖然是 2009 年的名句,不過還是要筆記一下 .... XD

by CIH:
有些軟體過30天就不會動了

我覺得這是一個 BUG

所以我就幫他 Debug

2010/12/29

手動啟動 or 停止 VMware Service

VMware Service start/stop scripts.

Start:
net start "VMware Authorization Service"
net start "VMware DHCP Service"
net start "VMware NAT Service"
net start "VMware USB Arbitration Service"

@echo off
pause
@echo on



Stop:
net stop "VMware Authorization Service"
net stop "VMware DHCP Service"
net stop "VMware NAT Service"
net stop "VMware USB Arbitration Service"

@echo off
pause
@echo on

2010/12/07

機器人也懂道德倫理!?

在科學人雜誌 2010 年 11 月號看到一篇文章:「機器人也懂倫理」,感覺很有趣。

「道德倫理」到目前為止都還沒看到能夠用文字敘述來定義,生活上也常常會遇到道德上二難的問題,例如:
女:我今天打扮的漂亮嗎?

(1):很漂亮,我喜歡 (說謊,但是讓對方開心)
(2):顏色搭配有點不搭,建議換一下 (說實話,但是可能讓對方傷心)

上面的問題,何者才能算是有道德?我想大家都會有各自不同的答案。


前幾年的電影「機械公敵 (I, Robot)」中,為了讓機器人能夠保障對人類的安全,而訂定了「三大法則」:
  1. 機器人不得傷害人類,或袖手旁觀坐視人類受到傷害
  2. 除非違背第一法則,機器人必須服從人類的命令
  3. 在不違背第一及第二法則下,機器人必須保護自己
但在電影中可以知道即使三大法則看似安全,但是卻導致不可預期的後果:將人類都做保育動物飼養。

道德倫理至今還沒辦法量化,但是台灣教育卻老是使用統計數字來看待成果,最後會有什麼影響?我想大概再過個三、五年很快就可以看見了。

2010/10/24

Pro Git

Git 除了 Pro Git 以外,網路上似乎沒有比較完整得教學。

最近無意間發現有個翻譯專案,將 Pro Git 的內容翻譯成各國語言,其中包涵繁體中文!

http://lab.mzr.jp/progit/

雖然只翻譯到一半,但是品質還算相當不錯,可惜沒有把關鍵字 (staged 等) 原文保留下來,所以翻了一半以後又跑回去看原文。

2010/09/28

書塔



上週為了整理二手書拍賣,把所有的書又拿出來整理一次,這次疊起來大概跟我一樣高。

後來書塔被電風扇吹倒,所幸沒被壓扁,希望樓下的鄰居沒被嚇到 .... XD

前幾週接到歐萊禮出版社台灣代理更換,有點擔心,所以把天瓏書局代購清單裡的書一次買回來,14 本書連自己都搬不太動。大概在多幾本就可以頂到天花板了吧。

ps. 小熊餅乾好吃 > W <

2010/09/24

設定 gnome-terminal 開啟時的預設路徑

使用「--working-directory」參數,可以讓 gnome-terminal 在開啟時自動切換至指定的目錄下。

如預設為家目錄:
gnome-terminal --working-directory=$HOME

ps. $HOME 為 bash 參數

2010/09/08

Mediawiki 頁面字首小寫

Mediawiki 的頁面名稱,第一個英文字母都會自動換成大寫,不過有時候以設定檔名稱為主的頁面就很頭大。

剛剛找到解決方法,可以讓 Mediawiki 將大小寫區隔開,作法是在 LocalSettings.php 檔中加入一個參數:
$wgCapitalLinks = false;

將 $wgCapitalLinks 參數設定成 false 以後 Mediawiki 就不會強制將頁面的英文自首改成大寫,但是之前所有使用 [[name]] 的頁面連結會區隔大小寫,有些連結名稱需手動修改。


參考資料:Manual:$wgCapitalLinks - MediaWiki
http://www.mediawiki.org/wiki/Manual:$wgCapitalLinks

2010/09/06

大學感想

大學 .... 總算畢業了,有苦有樂只有肝是黑白的 ... XD

2010/09/04

COSCUP 2010



今年 COSCUP 在中研院舉辦,場地超大、造訪人次也高達 977 人!

這次加入記錄組幫忙拍照,不過鏡頭光圈 F/3.5-6.3 實在太小,在演講廳裡面拍照不靠運氣就只能拉高 ISO,照片實在少的可憐。可以見人的照片已經上傳到 Flickr 和 Picasa,Flickr 因為免費帳號的關係已到達上傳限制,所以要看完整的照片麻煩請到 Picasa。

Flickr:
http://www.flickr.com/photos/johnroyer/tags/coscup2010/

Picasa:
http://picasaweb.google.com/100452712110768480052

Install Nginx + PHP-FPM on FreeBSD

因為老舊機器跑 Apache 實在太費力了,不少朋友都推薦 Nginx 來取代 Apache。網路上不少效能測試也顯示 Nginx 使用的系統資源比較少。

Install Nginx from ports:
cd /usr/ports/www/nginx
make config   # select modules you want
make install clean

Install php52 from ports:
 cd /usr/ports/lang/php52
make config   # Enable FPM
make install clean

安裝 PHP-FPM (Fastcgi Process Manager) 後,在 /etc/rc.conf 加入啟動設定並啟動 php-fpm:
echo php_fpm_enable=\"YES\" >> /etc/rc.conf
/usr/local/etc/rc.d/php-fpm start

依照預設值 FPM 會 listen port 9000,可以用 sockstat 看一下是否啟動成功:
$ sockstat
USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS
www      php-cgi    2736  0  tcp4   127.0.0.1:9000        *:*
www      php-cgi    2735  0  tcp4   127.0.0.1:9000        *:*
www      php-cgi    2734  0  tcp4   127.0.0.1:9000        *:*
www      php-cgi    2733  0  tcp4   127.0.0.1:9000        *:*
www      php-cgi    2732  0  tcp4   127.0.0.1:9000        *:*
root     php-cgi    2731  4  stream -> ??
root     php-cgi    2731  5  stream -> ??
root     php-cgi    2731  6  tcp4   127.0.0.1:9000        *:*

若要修改 listen port 可以開啟 /usr/local/etc/php-fpm.conf,搜尋「listen_address」,設定檔是以 XML 的方式撰寫,把 127.0.0.1:9000 改成自己要得即可。

修改 Nginx 設定檔 /usr/local/etc/nginx/nginx.conf,大約在 60 行左右可以看到「pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000」,將該段落的設定檔取消註解。

另外 Nginx 設定檔有個很怪的地方,就是 fastcgi_param 的預設值不是在網頁目錄底下,要將後方的「/scripts」改成「/usr/local/www/nginx-dist」,這樣 Nginx 才會將網頁目錄底下的 PHP 程式交給 FPM 執行。

設定完畢存檔,/usr/local/etc/rc.d/nginx start 啟動 nginx 就可以弄個 phpinfo 來測試了。

2010/08/24

中元普渡

昨天去家樂福遇到學長在採購,原來今天是中元普渡要拜拜。

學長說只要看推車的顏色就可以知道行業:
  • 紅色:業務部
  • 綠色:IT 部

2010/08/03

PHP 加速 on FreeBSD (pecl-APC)

這次為了 Wordpress 3.0 花了不少時間搞 tuning,後來 cookys 大大跟我說 eaccelerator 效果不大,可以改用 APC 加速。

Install APC on FreeBSD:
cd /usr/ports/www/pecl-APC/
make install clean

安裝好以後修改 php.ini,參數在 /usr/local/share/doc/APC/INSTALL 有詳細說明。
apc.enabled=1  ; 1 as enable, 0 as disable
apc.shm_segments=1  
apc.shm_size=128  ; Shared memory size in MB
apc.ttl=7200  ; TTL for cache
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX  ; 6 個 X 請勿修改
apc.enable_cli=1

設定完畢後重新啟動 Apache。

使用 phpinfo() 後若看到 APC 相關資訊表示 APC 已經可以使用。接著複製 apc.php 到 www 目錄下並設定帳號密碼,便可以查看 APC 的統計資訊:
cp /usr/local/share/doc/APC/apc.php /usr/local/www/apache22/data/

設定帳號密碼:
defaults('ADMIN_USERNAME','user_id');
defaults('ADMIN_PASSWORD','user_password');




左方圓餅圖代表記憶體情況,右方 Hits 代表使用到快取,Miss 表示要求的程式不在快取內。

安裝好 APC 後自己拿 JMeter 做測試,Wordpress 3.0 的首頁在安裝 APC 後大概快了 200 ~ 500ms 左右,感覺算快了不少,不過一部分原因是 JMeter 設定全部都跑去抓首頁,建議加上亂數元件讓 JMeter 隨機讀取網頁會更準。

參考資料:安裝 PHP APC 加速網頁速度 | 小惡魔
http://blog.wu-boy.com/2008/06/05/275/

2010/07/20

HIT 2010

上一次參加資安類型的研討會是在 SA @ Tainan 由 CIH 主講,不過駭客年會得規模實在大非常多。

很慶幸這次參加 HIT 2010,雖然議程幾乎都聽不懂,不過認識了很多人,還遇到了五年沒碰面的高中同學,其中一個還在今天 Wargame 冠軍的交大 DSNS 實驗室。

今年的梗不少,筆記一下:
  • 主持人:「大家都知道網路很髒 ....」
  • 360 講師:「裝了防毒,吃了一大堆資源,雙核都變成單核」
  • 「這應該是 360 殺生軟件,有人聽到掛 ....」
  • 提問:「剛剛提到 Google ....,如果現在不方便說的話 .... 畢竟您還要回大陸嘛」
    IRC:「I don't care」
  • 講師:「大家都知道要靠旁邊走,走中間會被當靶子」(Movement Trajectory in game bot detect)
  • 主持人:「我們來看一下今天 Wargame 的戰況 .... 阿,我被 sproofing 了」
  • Orange 上台,IRC:「Hey apple !!!」
  • 「7+11」、「萊富爾」
  • 講師:「我非常希望能在 ibon 拿到 HIT 免費入場卷」
  • 改一張二萬元的「iCrash」當作 Wargame 獎品

最後感謝會場工作人員和與會者讓我有這麼「駭人」的經驗,也要感謝澔哥、小佳、洪爺 (此洪爺非彼洪爺)、CYJ 和 SA @ Taipei 願意與我共進晚餐。

2010/07/12

幾個 CSS3 排版用語法

維基百科:互助客棧/技術/存檔/2010年5月 上面挖到寶,找到幾個 CSS 語法可以讓過長的列表自動分欄。

-moz-column-count: 3;
-webkit-column-count: 3;
column-count: 3;
-moz-column-width: auto;
-webkit-column-width: auto;
column-width: auto;
-moz-column-gap: 0;
-webkit-column-gap: 0;
column-gap: 0;
-moz-column-rule: ;
-webkit-column-rule: ;
column-rule: ;

效果如下:
  • A
  • B
  • C
  • D
  • E
  • F
  • G
  • H
  • I

看不到效果可能是因為使用 IE 的關係,目前 Firefox 和 Chromium 都有支援這個語法,Opera 和 Safari 我就不太確定了。

如果還在使用 IE,請容我說一句話:使用 IE 的死亡率比新流感更高!請改用免費又安全的 Firefox 或是其他瀏覽器!

2010/06/26

Redmine 更新

主機一陣子沒更新,看到 SA 通告心裡毛毛的跑了一下 portmaster -a,然後我後悔了 .... Orz

將 Rails 從 2.3.5 更新到 2.3.8,config/environment.rb 裡面的設定也要跟著改:
RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION

另外最慘的是 RMagick 更新速度似乎趕不上 ImageMagick,將 ImageMagick 更新到 6.6.1.10 後 RMagick 卻噴錯誤訊息說版本不合,gem update 好幾天都沒看到更新。

後來手殘弄錯東西只好 pkg_delete -af。從頭來過後 passenger 噴錯誤訊息,發現 Ruby 有新增不少功能,要在設定檔裡面另外多設定幾個參數
config.action_controller.session =  { :session_path => '/path/to/webApp' }
config.action_controller.session =  { :session_key => 'key_prefix' }
config.action_controller.session =  { :key => "_myapp_session", :secret => "some phrases" }

2010/06/15

「你有源嗎」

「你有源嗎」被警釣 緩刑3年
http://udn.com/NEWS/SOCIETY/SOC3/5662479.shtml

轉貼自 CrBoy @ Plurk
警察:「八月中好像有個『開源人年會』,要好好來衝業績了....」

我笑了 XDDDDDD

2010/06/14

IE 6 Must Die

IE 6 是一個歷史悠久的瀏覽器,不是說他不好而是因為 parser 實在沒有按照標準撰寫,導致網頁設計的時候一堆語法還要為 IE6 客製化,實在浪費生命。

在網頁底下加入一段語法,讓使用 IE6 瀏覽網頁的使用者會收到建議更換瀏覽器的訊息:
<!--[if IE 6]>
   <script type="text/javascript" src="http://letskillie6.googlecode.com/svn/trunk/letskillie6.zh_TW.pack.js"></script>
<![endif]-->


參考資料:Let's Kill IE6
http://www.neoease.com/lets-kill-ie6/

Jazz

今天到逢甲 Jaseagain 爵士樂團的演奏會,聽到一首還不錯聽的歌曲叫做「變色龍 Chameleon」 by Herbie Hancock。




ps. Bass 彈奏方法叫做「悶音」嗎? 好多地方都出現過 @_@a

2010/06/04

國王與井水

遺民世界轉錄一篇小故事:
http://mypaper.pchome.com.tw/bour/post/1268603983
有一天,一座城堡裏,每一個人突然都瘋了,只有國王是清醒的,他發現了這個事實,卻沒辦法改變,好玩的是,所有的人反而都認為發瘋的是國王,於是他們決定把國王關起來,以免他到處亂咬人。

痛苦的國王在經過長期觀察後,終於,發現問題出在一口古井,古井的水被魔法師下了咒語,喝了古井的水,就會失去理智。

國王想了很久,他知道自己如果不喝下井水,將永遠被關在地牢裏,為了逃離這個陰暗的世界,他向所有的人要求希望能喝到井水。

他一喝下井水,馬上變得和其他人一樣.全城的人民開始高興跳舞,慶祝國王的康復,因為這個國家再也沒有瘋子了。

笑話

今天賴董很怒的說:
哪有 winrar 安裝程式用 rar 壓縮的啦

這讓我想到以前在 VM 測試木馬時,跳出個訊息視窗:
執行本程式需要安裝 .NET Framework 2.0 .....」

乾脆以後病毒都用 Java 寫,寫完以後還都跨平台 ..... (大誤)

PHP 5.3 函式被標記為「Deprecated 」

前陣子 portmaster -aDG 以後一堆服務噴「function deprecated」,後來才知道 /usr/ports/lang/php5 目前是 PHP 5.3,更新後有不少函式被標記為 deprecated

PHP 5.2 在 FreeBSD Ports 有另外被分出來放在 /usr/ports/lang/php52,先將原有的 make deinstall 再到 php52 make install clean 即可。

ps. 小弟無知,以後不敢隨便更新了 Orz

2010/05/19

調整 Netbeans 語系

在 Ubuntu 下跑 Netbeans 會因為 Java 的關係使得中文變成亂碼,加上很不習慣關鍵字翻譯成中文,所幸就把語系調回英文。

調整語系只需要在啟動時多加一個「--locale」參數,參數後面接上地區、語系,如:
--locale zh:TW

調回英文就改成「--locale en:US」。


參考資料:Night Walker: Change NetBeans IDE interface language
http://nw360.blogspot.com/2008/11/change-netbeans-ide-interface-language.html

2010/05/11

雜談:駭客

在台灣因媒體報導的關係,似乎大多倏地人都認為「駭客」是指那些不法入侵電腦的怪咖,而對駭客存在著負面的印象。但駭客本意其實不是這樣,在「How To Become A Hacker」一文中,駭客是指喜歡解決問題、分享智慧並崇尚自由 (挑戰規則) 的一群人。

原文:How To Become A Hacker
http://catb.org/~esr/faqs/hacker-howto.html

譯文:如何成為駭客
http://www.angelfire.com/ok/leekawo/hacker.htm

而我認為駭客不只那些在玩電腦的 geek,喜好解決問題、分享、嘗試跳出規則的人都可以稱作駭客。包括土炮製作雷射槍的人、喜歡用 C4 解決問題的流言終結者,也包括那些看不慣事理跳出來打抱不平的人。

Then .... what?

2010/04/22

Install Redmine in FreeBSD

以下全文轉錄、修改自:FreeBSD上でRedmineを試してみる - FileMakerとPHPのメモ
http://d.hatena.ne.jp/unam-h/20080501/1209642442

Redmine 是用 Ruby 撰寫成的專案管理系統,支援項目追蹤、工時追蹤、Wiki、版本控管、討論區等功能。不過因為沒有用過 trac 系統,沒辦法為大家做比較,若有朋友用過歡迎提供意見。

FreeBSD 較新的 ports 中有納入 Redmine:/usr/ports/www/redmine,但是自己從 make install 後到看官方說明書安裝仍然中途出錯失敗,所以參考其他方式安裝。

先到欲安裝的位置用 SVN 將 source code 取出:
svn co http://redmine.rubyforge.org/svn/tags/0.9.3/ redmine

然後建立資料庫設定檔:
cp config/database.yml.example database.yml
vim database.yml

修改資料庫帳號密碼:
production:
  adapter: mysql
  database: db_name
  host: db_host
  username: user
  password: password
  encoding: utf8

執行 rake 設定:
rake db:migrate RAILS_ENV="production"
rake redmine:load_default_data RAILS_ENV="production"

以上設定若沒有出現錯誤訊息,執行下面的指令可啟動伺服器:
ruby script/server -e production

伺服器預設是在 localhost:3000 上,用瀏覽器連到 3000 port 若有看到系統畫面便表示安裝成功。


接下來安裝 rails 和 passenger 讓伺服器可以掛在 Apache 上:
gem install rails --version 2.0.2
gem install passenger

接著建立 Apache mod:
passenger-install-apache2-module

在 httpd..conf 上加入 passenger module:
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.11
PassengerRuby /usr/local/bin/ruby18

重新啟動 Apache。


建立 Virtual Host 時,只要將網址的位置設定在 Redmine 的 public 位置即可:
<VirtualHost *:80>
        ServerAdmin my@mail
        DocumentRoot /home/user/redmine/public
        ServerName redmine.my.url

        <Directory /home/user/redmine/public>
        Options FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
        </Directory>
</VirtualHost>

2010/04/13

Ubuntu SM (Screen Message) 螢幕大字報

之前參加 COSCUP 和 Study Area 聚會時常常看到有人把筆電拿來當大字報用,用全螢幕打字給講師看。





原本以為是用 Impress 或是投影片軟體打字再放全螢幕,後來才知道他們用一套軟體叫做「SM」,也就是「Screen Message」的縮寫。(都是 CrBoy 亂講害我查到亂七八糟的東西 XD)

在 Ubuntu 底下安裝很簡單:
sudo aptitude install sm

安裝完以後直接在終端機輸入 sm 即可執行,除了主要工具列以外,其他區塊皆會變成畫面:




若要編輯文字就先按 Backspace 把原有的文字清除,再輸入需要顯示的文字,就直接當作一個文字超大的記事本用就可以了。

不過 sm 套件缺點就是即使跟記事本一樣可以編輯文字、移動游標、選取文字,但是游標是看不見的,所以輸入錯誤要重新編輯會有點麻煩。

後來在 CrBoy 部落格看到套件的 python 程式碼,用 python 執行後顯示範圍變成全螢幕,而且左下角有一列一般的編輯區域,可以看到游標位置和正常大小的文字。

Source Code:http://blog.crboy.net/2009/11/sm-screen-message.html

將原始碼複製到文字編輯器貼上,儲存之後使用 python 執行即可:


測試瀏覽器是否支援 HTML 5


Score of Google Chrome



網址:The HTML5 test
http://html5test.com/

2010/04/05

網頁設計最常犯的 34 項錯誤

翻譯自:
Top 34 Web Design Mistakes
http://www.bootstrike.com/Articles/DesignMistakes/

  1. 不當的使用 Javascript:請見說明
  2. 拼字或文法錯誤。
  3. Flash、Shockwave、Java:無法被搜尋引擎建立所以,下載時間較長。
  4. 建立縮圖:使用 HTML 語法縮小圖片寬度、高度並不能減少流量,必須手動或是使用程式將圖片縮小。
  5. 使用 GIF、Flash 動畫:動畫容易使人分心,也容易惹惱使用者。
  6. 背景音樂、自動播放:想想看當你正在聽卡農時網頁卻播放重金屬音樂,尤其是每次點選子網頁都從頭自動播放。
  7. 分頁、幻燈片模式:把內容放在同一個網頁,不要讓使用者點選「下一頁」以節省時間。
  8. 將 F&Q 的解答分開放在不同網頁上:不要將每個問題獨立放在不同的網頁上,這樣使用者必須一直切換頁面。放在相同的網頁上就好。
  9. 使用高對比文字顏色:請勿使用「黑底黑字」或是「白底白字」。
  10. 螢幕寬度:應考慮 800x600 為最小螢幕寬度,盡可能不要讓瀏覽器出現水平捲軸。
  11. 字型:不要使用其他人沒有的字型,設定方式請見說明
  12. 讓字體能任意放大、縮小:在 CSS 中使用 em 或 %,請見說明
  13. 使用標準、一致的版面設計。
  14. 圖片最佳化:最好能將圖片縮小到四百萬象素以下,螢幕看得清楚也能節省下載時間,原作強力推薦 GIMP 製作縮圖。
  15. 別忘記 title、meta、keyword 標籤:讓使用者方便做紀錄,也讓搜尋引擎建立索引。
  16. 在表單中加入 label 標籤:讓使用者填選更輕鬆,請看說明
  17. 使用 Fieldset 組織表單:讓表單看的更清楚。
  18. 為圖片、超連結加上說明:在圖片加上 alt 屬性、超連結加上 title 屬性,可在滑鼠游標旁顯示註解。
  19. 進站畫面:好能在 Flash 動畫旁加上「進入本站」或是「略過」的超連結,不要強迫使用者看完影片,搜尋引擎也能建立索引。
  20. 回饋連結及頁面:在網頁上放置 email 聯絡方式,並在伺服器上處理郵件,避免使用者畫面跳出 Outlook 等視窗。
  21. 檔案命名方式:盡量以英文小寫命名,特殊字元會造成使用者存檔時的不便,如空白會變成「%20」
  22. 文字區塊:文章段落中間最好留幾行空白,文字與邊框應保留間隔距離。
  23. 禁止右鍵選單:不要在網頁上使用 Javascript 禁止使用者按滑鼠右鍵,要讓網頁、圖片不被其他人取用:請不要放到網路上!
  24. 使用頁框:頁框中的內容並不會儲存到書籤,造成使用者的困擾。
  25. 文字底線:不要在沒有超連結的文字上加底線,改用其他方式強調,請看說明
  26. 不同檔案類型的特性:壓縮率、串流等特性。
  27. 彈跳視窗:不要讓超連結跳出新視窗,也不要在新視窗放廣告,這樣只會讓使用者厭惡。
  28. AJAX:在 IE6 上面執行 AJAX 仍需要使用到 ActiveX,直到 IE7 才將 XMLHTTP object 獨立出來
  29. 背景顏色:不要假設所有使用者預設的背景都是白色,請自行加上背景顏色設定
  30. 網頁測試:針對各種瀏覽器以及各種情況做測試,請見說明
  31. 友善的介面但無法調整:讓所有的設定值都可以被調整,以免發生字體變大但是行距不變的情況。
  32. 偵測到不支援 Javascript 時強制重新導向:使用 noscript 標籤來告知使用者,不要重新導向到其他頁面或是跳到瀏覽器更新頁面。
  33. 不支援列印格式或列印預覽:可在 CSS 設定列印專用樣式,隱藏目錄及導覽列可以在列印時節省紙張。
  34. 不支援基本搜尋功能:在網站上放置搜尋欄位,讓使用者可以搜尋整個網站。

如有翻譯不當的地方,請大家多多指教。謝謝!

2010/04/04

Armadillo Run : Extra 3 - Spiral




第一次做螢幕錄影,弄的有點糟糕說。

玩這種遊戲就是要搞特殊解,照著老規矩做實在太無趣了 XD

2010/03/28

從小到大最嚇唬人的四句話

轉錄自 joke @ PTT
國中的時候,媽媽總說:「認真讀書,考到國立高中,愛怎麼玩怎怎麼玩啦。」

考到國立高中後,媽媽總說:「認真讀書,考到國立大學,要怎麼玩沒人管你啦。」

考到國立大學後,媽媽總說:「認真讀書,考到國立碩士,就不用擔心沒得玩了啦。」

考到碩士後,媽媽總說:「認真讀書,畢業進竹科,就不用擔心以後沒錢玩了啦。」

進了竹科還可能有時間可以玩嗎 = v =

2010/03/26

2010/03/20

Change sendmail to Postfix in FreeBSD

/etc/rc.conf :
sendmail_enable="NONE"
sendmail_flags="-bd"
sendmail_pidfile="/var/spool/postfix/pid/master.pid"
sendmail_procname="/usr/local/libexec/postfix/master"
sendmail_outbound_enable="NO"
sendmail_submit_enable="NO"
sendmail_msp_queue_enable="NO"


/etc/periodic.conf :
daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"

Create packages by pkg_create in FreeBSD

因為手上有超過二台的主機是安裝 FreeBSD,因為 FreeBSD ports collection 一向都是要自己 make install,安裝大型套件會花不少時間編譯。

之前餅乾提到可以用 pkg_create 建立套件備份,然後直接拿去另一台做 pkg_add,這次重灌寫了個批次檔來測試,不過因為 shell script 不熟可以說繞了一大段遠路:
#!/usr/local/bin/bash
echo "Listing packages .... "
pkg_info | tee pkg_info.log | wc -l
mkdir pkg
awk '/.*/ {print "pkg_create -v -b " $1 " pkg/" $1  }' pkg_info.log > pack.sh
rm pkg_info.log

# Start to create package
echo "Creating packages .... "
chmod +x pack.sh
./pack.sh
rm pack.sh

# Start to tar
echo "tar .... "
tar -cf pkg_back.tar pkg/
echo "Creating MD5 checksum .... "
md5 pkg_back.tar > md5sum.log

# Clean
echo "Cleaning temp files .... "
rm -fr pkg/

將打包好的套件檔複製到另一台電腦,解壓縮後就可以使用 pkg_add 安裝套件:
> pkg_add `find ./pkg/ -name "*.tbz"`

pkg_add 時應該會看到一堆相依性的錯誤訊息,這是因為套件沒有按照順序安裝引起的,至於要如何檢查安裝完畢後相依性套件是否有正確安裝,等以後想到方法再補齊吧。

2010/03/17

蟑螂、閃電

昨天看到有人爆料某個學長因為打雷被嚇哭,不過覺得每個人怕的東西都不一樣,這種事情也沒什麼好被拿出來說的。

這裡也偷偷出賣我朋友。

2010/03/15

Go to 有害論大戰

Go to 有害論大戰
http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/

不知道這個有什麼好吵的,即使吵出了什麼結果、訂了規定,也沒擠個人在遵守吧。之前作專題想用 SVN 作版本管理,明明都說好了卻有人把程式碼壓成 RAR 在 commit,整個版本庫直接爛掉。現在推廣軟體工程不知道會不會遇到這樣的問題?

為機房作 ISO 認證?還是在機器上面放乖乖比較有效?....可惜這兩個是互斥的不能兼得 XD

2010/03/11

Linux 讀書會投影片分享

高二第一次接觸 Linux 到現在也有六年多,感覺 Linux 越來越好用,也希望有更多人 Linux 這個好東西。這學期修的課比較少,就花點時間在系學會帶讀書會 (沒有技術的技術分享會?),希望能把 Linux 推起來。

由於系上已經有「Unix 應用實務」的課,課程內容涵蓋軟體應用、系統管理等不少技術,不過聽學弟口述的情況大概就是死的莫名其妙,在不知道 Linux 是什麼的情況下被抓去製作 Live USB 和編譯系統核心,所以這學期讀書會的目標比較頃向讓大家邊玩邊學,熟悉桌面環境和應用程式以後,再開始學 Linux 系統架構和管理。

三個投影片分別是「讀書會介紹」、「虛擬機器介紹」和「Linux 簡介」。投影片文字內容很少,請發揮想像力 ... XD

2010/03/07

Colorful Git

Display with colors:
git config --global color.diff auto
git config --global color.log auto
git config --global color.status auto
git config --global color.branch auto

Or change .gitconfig settings yourself:
[color]
   diff = auto
   log = auto
   status = auto
   branch = auto

2010/03/06

apt-get 無法更新 (無法連線 or 0% 等待標頭) 解決方法

前幾天接到安全性更新通知,但是 sudo aptitude update && sudo aptitude upgrade 卻一直出錯,常常下載到一半就突然停住不動,中斷重來也沒辦法下載更新檔。

最神奇的是明明顯示「連線失敗」,我在瀏覽器輸入 IP 以後卻可以看到列表,套件也可以正常下載。

下載:1 http://debian.luna.com.tw ./ libvte-common 1:0.22.2-0ubuntu2.im [101kB]
下載:2 http://ppa.launchpad.net karmic/main ubuntu-tweak 0.5.2-1~karmic2 [689kB] 
下載:3 http://debian.luna.com.tw ./ libvte9 1:0.22.2-0ubuntu2.im [554kB] 
下載:4 http://debian.luna.com.tw ./ gnome-terminal-data 2.28.1-0ubuntu1.im [2,104kB] 
下載:5 http://debian.luna.com.tw ./ gnome-terminal 2.28.1-0ubuntu1.im [113kB] 
下載:6 http://debian.luna.com.tw ./ python-vte 1:0.22.2-0ubuntu2.im [30.7kB] 
錯誤 http://security.ubuntu.com karmic-security/main ure 1.5.1+OOo3.1.1-5ubuntu1.1 
連線失敗 [IP: 91.189.88.37 80]
6% [等待標頭] 

後來在噗浪詢問後,聽從 褻玩小道 的建議在 /etc/resolv.conf 加上 nameserver 設定後恢復正常。

覺得比較奇怪的地方是 NetwordManager 在 /etc/NetworkManager/system-connections 設定檔中明明已經有 dns 設定,而且連線確實有將 domain 轉成 IP:91.189.88.37 80,但是沒有在 resolv.comf 設定 name server 確定讓更新失敗 ....。

2010/03/05

廣昱改路由

原本廣昱逢甲實驗寬頻是連到學校再轉到校外,當初就是因為這樣再宿舍遠端作業很方便。

但是現在卻先連到 Hinet 再連回學校,再加上宿舍是虛擬 IP,在學校根本沒辦法遠端,而且對校外速度也整個慢到翻掉,開始想解約了。

2010/03/02

天生帶賽

今天第一次參加實驗室 meeting,在等學長買晚餐時老師找了一台空的電腦給我用。

手上沒有 XP 安裝光碟,索性用 Ubuntu Live USB 先開起來檢查硬體配備,沒想到 BIOS 直接從硬碟開機,只好進 BIOS 調整開機順序。

設定 USB-HDD 沒有用,重開再改成 USB-FD ..... 沒畫面?再重新開機一次 .... 還是沒畫面!而且連 USB 鍵盤和滑鼠都沒有電源!把螢幕接頭換到主機內建的輸出端一樣沒有訊號,然後把硬碟、記憶體、USB 鍵盤全部拆下來,還是沒有訊號。

我大概是第一個第一次進實驗室不到十分鐘就搞爛一台電腦的學生吧 ...... 囧

最驚訝的還是老師的反應:「壞了喔 .... 那就換一台吧」

老師,你是好人! m( _ _ )m

2010/02/25

mount ufs in Ubuntu

sudo mount -r -t ufs -o ufstype=ufs2 /dev/ufs /media/data

轉自:Ubuntu 學習筆記:掛載 Freebsd UFS 分割區
http://irvin.sto.tw/2009/04/ubuntu-freebsd-ufs.html

考試的目的

現在幾乎所有的家長都要學生讀書拼考試,但是考試的目的到底是什麼?答案很明顯:測試解題能力、了解學習的成效。但是成績好真的能代表解題能力佳、知識比別人豐富嗎?

記得去年年底聚餐時和一位在補習班打工的朋友聊天,他跟我說:「高中數學題目太難自己都不會,但是國小題目又完全部知道怎麼解釋給小朋友聽,所以只好當國中生助教 ......。」

國小數學題目有這麼難嗎?還記得「獵人打小鳥」的問題嗎?「樹上有 5 隻小鳥,獵人開槍打下 1 隻小鳥以後,還剩下幾隻小鳥?」答案是「一隻也不剩」,因為其他的全部被嚇跑了。這答案一點都沒有錯,錯就是錯在這是數學題目!所有的數學理論都是必須經過層層歸納、推理和證明的,請問教科書出題人員是否能夠用數學歸納法或是數學理論推導出這題的答案?

在「別鬧了,費曼先生」一書中有提到,費因曼曾參與美國加州教育廳的課本評審會,教科書中的練習題「綠星溫度 7000 度、藍星溫度 10000 度,父子二人觀星,兒子看到兩顆藍星,父親看到一顆綠星,父子二人看到的星星總溫度是多少?」(節錄自:大家談科學)

題目是要學生練習加法,但是實際上沒有任何用途,畢竟將星體溫度相加所得的數據沒有任何意義。這種題目現在也到處能看到,例如 C 語言考題常常會考:
i = 10;
i = i++ + ++i;

考題本意是要學生了解 prefix 和 psotfix 的差別,但是這卻會因為編譯器的不同而有一堆不同的答案,不信的人可以跑跑看下面的程式碼:
i = 10;
printf("%d %d %d", i++, i++ ,i++);

只有「唯一解」的考試已經抹殺了了學生的創意,毫無意義的考試題目還會讓學生研究能力往下掉,沒有創意又不會做研究,以後台灣要拿什麼跟別人競爭呢?

讀後有感:萬惡的位定義行為
http://blog.ez2learn.com/2008/09/27/evil-undefined-behavior/

噗浪討論串:http://www.plurk.com/p/3wmejz

2010/02/22

Chromium 修改首頁八格設定

因為刪掉其中一格以後沒辦法自己設定連結網址,所以只好改設定檔。

打開 C:\Path.to.chrome\UserData\Default\Preferences (我裝的是 ChromePlus,位置可能會和 Chromiun 或是 Google Chrome 不一樣),搜尋「pinned_urls」就可以找到設定檔位置。

      "pinned_urls": {
         "4bcf1f77713bd119077de2a7684d494e": {
            "direction": "ltr",
            "index": 0,
            "title": "書籤名稱",
            "url": "書籤網址"
         },
         ......
      },

2010/02/21

金斧頭和銀斧頭

以下兩則轉錄自:http://home.gamer.com.tw/blogDetail.php?owner=janstalker

有一天小明掉進湖裡

過了一會兒
女神領著金小明和銀小明出現在湖面

看了看沒有人 .... 又下去了


在一場激戰之中,弗利沙把悟空打入了湖裡,此時,出現了一個女神。

女神:你掉進水裡的是超級賽亞人2嗎?
弗利沙:不是喔!(2代很難打耶)

女神:那你掉進水裡的是超級賽亞人3嗎?
弗利沙:也不是喔,是超級賽亞人1的悟空 (我最好打得贏3代)

女神:你很誠實,那另外這兩個悟空也送你
弗利沙:....E04!


後勁實在好強 XDDDDD

2010/02/16

CSS 圓角矩形

LESS 看到的:
.rounded_corners {
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}

LESS make less code to CSS

LESS 是一個用 Ruby 寫成的 CSS 產生器,可以讓習慣寫成是的人將 CSS 程式、模組化,在交由 LESS 轉成正式的 CSS 發佈。

例如事先定義:
@my_color: #f00;

之後可以在各個 class 用到:
.top {
   ...
   font-color: @my_color;
}

.main {
   background-color: @my_color;
}

感謝 Jefflen 推薦。


LESS - leaner CSS
http://lesscss.org/

2010/02/15

CSS width in box module

今天遇到的鳥問題:CSS 中真正的 width 要等於 margin + border + padding + 設定的 width。

假設原本的 DIV 設定如下:
.box {
   width: 800px;
}

若要讓原本的區塊寬度不變但要加上 20px 的 padding 必須這樣設定:
.box-padding {
   padding-left: 20px;
   padding-right: 20px;
   width: 760px; /* 800 - 20 - 20 = 760 */
}

2010/02/14

新年快樂

祝大家新年快樂 && 情人節快樂!!!

ps. 這篇好短啊 ... 囧

2010/02/01

scanf 讀取包含空白的字串

一般來說 scanf 遇到空白、\t、\n 就會自動中斷:
scanf("%s",str);  // 輸入「hello world」
printf("%s",str);  // 輸出「hello」

剛剛發現 scanf 可以自定欲接收的字元,改一下就可以接收空白等字元:
scanf("%[^\n]",str);  // 接收除了 \n 以外的所有字元
printf("%s",str);  // 輸出完整的「hello world」


參考資料:C Gossip: printf() 與 scanf()
http://caterpillar.onlyfun.net/Gossip/CGossip/PrintfScanf.html

2010/01/31

一人樂團




說到一人樂團,上面這部影片是我看過最強的,一人飾演五個角色卻幾乎挑不出瑕疵。

音樂的三要素:節奏、音準、音色。

一般節奏能夠對在一起就很厲害了,但 Daiyel 不止五個聲部節奏一模一樣,連音準也很一致,所以合聲聽起來很漂亮。一個人唱能合又能 beatbox 實在很威!



今天試著自己錄一段 Canon in D,起先以為先跟著 CD 走第一部,錄第二部時在播放第一部的影片跟著走,等到錄好剪接完畢,才知道聲音、影片播放時速度的和錄製時不一樣。

結果前半段合奏還不錯,音準都有對到只是節奏不太穩,到了後半部卻因為其中一個影片比另一個影片慢,節奏就慢慢挪開了,到快要結束時差了將近二拍 .... Orz

Youtube 這影片實在很威,真希望以後可以玩樂器到這個境界。

ps. 剪接影片時找到 AviDumex 這套軟體,免費、操作又簡單!

2010/01/30

Install Boost library in Ubuntu

$ sudo apt-get install libboost1.38-dev libboost-doc

C/C++ 筆記

之前和 CA 聚餐聊了不少東西 (其實大部分都是他告訴我,我會的他也都會了 Orz),有 Linux、C/CPP、cmake、Code Blocks IDE 等等,其中比較有興趣的是 SmartPtr 和 ffmpeg 某部份的程式實作方法。

已經很有沒有碰 C 幾乎忘光,先做的筆記以後經驗值到了再來加點數。

SmartPtr
http://www.boost.org/doc/libs/1_41_0/libs/smart_ptr/smart_ptr.htm


ffmpeg.c in git repo
3856 行的寫法,用文字當作索引。

2010/01/27

17 歲就寫 Open Source

Mosky 大大 17 歲就已經在寫 Open Source 了,我們還在做什麼 T_T

2010/01/26

主機掰掰

硬碟壞軌總算把資料救回來,但是現在硬體開始有問題。

風扇不會轉,換了一個風扇,現在變成主機版開始不高興。開機一段時間以後,主機板會突然嗶一聲直接斷電。

沒有錯誤訊息,硬體配備也不知道哪些是好的哪些是壞的,所以就直接說再見吧。

錯覺與圖形驗證



以前和朋友討論很久,如果單單使用扭曲、變形、雜訊的方式,以現在電腦的圖形運算能力要破解圖形驗證碼不錯太難。在一次機會下看到一個專門收集視覺錯覺的網站:Optical Illusion Galleries,再加上一個在日本多媒體公司工作的朋友告知,已經有研究想要使用錯覺來使電腦可以計算 2D 圖形來產生 3D 畫面的效果,覺得圖形驗證碼也可以網這個方向嘗試。

人類的眼睛對平面「邊界」特別敏感,所以上面的圖形看起來眼花,但是能很清楚的看到其中的英文字。不過為了製作圖形,在 Phoroshop 裡面開了三個以上的圖層外加一個文字遮罩,要即時產生很耗電腦資源;如果針對這個圖案進行邊緣偵測,說不定還是可以描出大致的輪廓吧。

但是還有很多種錯覺可以善加利用:


順時鐘?或是逆時鐘?



圖行在旋轉?



A、B 區塊的顏色其實是一樣的



上個月發現 Plurk 的圖形驗證碼也很有趣:在 Flickr 搜尋工具下區別很大關鍵字,利用搜尋結果的圖片作為驗證工具。



這個作法的好處是完全不用自己處理影像,因為「人」已經全部做好了:影像中的物體辨識、上標籤、定關鍵字 .... etc。就像之前 Google 出的遊戲「Image Labeler」一樣,用人的頭腦來做計算 XD

2010/01/25

FreeBSD 壞軌處理方式

壞軌時可能會看到「TIMEOUT : Write_DMA / Read_DMA」的錯誤訊息,情況好的時後 retry 成功會繼續,壞軌嚴重的話看到這個訊息可能直接當機。

建議儘快把硬碟拆下來,到另一台裝有 FreeBSD 的機器上救資料 (Linux 一般對 UFS 只支援到讀取,之前在 Ubuntu 掛載失敗)。FreeBSD 內建 recoverdisk 工具讀取有損壞的硬碟,和 dd 一樣都是以低階的方式讀取資料,但是 recoverdisk 除了會顯示 status 以外,在遇到壞軌時會先記錄並跳過,等到整個磁區或磁碟讀取完成後,在以較小的 block 去讀取有損壞的磁區。

# recoverdisk /dev/bad_disk disk_dump.img

讀取完成以後可以掛載使用:
# mdconfig -a -t vnode -f disk_dump.img
md0
# mount /dev/md0s1a /media/disk

2010/01/24

硬碟品牌參考資料

節錄自:http://www.plurk.com/p/3hksc9

Seagate:維修送新加坡

WD:SATA 1/2 自動判斷的問題到現在都沒有完整解決過、壞軌死之前也不會通知,維修送當地代理商

HITACHI:根本不會壞軌,讀寫頭直接鎖死

MAXTOR:以前直接燒電路板



個人只用過 WD,對其他品牌沒有研究。歡迎大家提供意見。 ^_^

R-Studio

這次硬碟壞軌讓我頭大了很久,雖然目前處於擺爛狀態....... Orz

原本用網友推薦的 recoverdisk 工具讀分割區,不過不知道為什麼都沒有看到壞軌的訊息,建立的映像檔 mount 起來以後也看不到檔案,最後改用 R-Studio 才救回部份資料。

會特別提到 R-Studio 是因為一般軟體指支援 FAT、NTFS,R-Studio 卻支援 EXT 系列和 UFS,看了看價格只要約台幣三千元,感覺還蠻划算的。

希望不久後能看到 Linux 推出更多自由軟體。

2010/01/23

Apache、MySQL、PHP 效能最佳化

Optimize PHP, Apache & MySQL for performance « webjawns.com
http://webjawns.com/2010/01/optimize-php-apache-mysql-with-tuner-scripts-best-practices-and-more/

Install htop in FreeBSD

make install in /usr/ports/sysutils/htop will get an error message :
***********************************************************
htop(1) requires linprocfs(5) to be mounted. If you don't
have it mounted already, please add this line to /etc/fstab
and run `mount linproc`:
linproc /compat/linux/proc linprocfs rw 0 0
***********************************************************

By message :
$ echo "linproc /compat/linux/proc linprocfs rw 0 0" >> /etc/fstab
$ mount linproc

Then make install again.

2010/01/22

硬碟炸了

上週學校主機突然當掉,請朋友重新開機還是沒起來。回到學校自己開機可以跑,但是跑了幾個小時以後又掛了,跳出一些錯誤訊息:
ad0: FAILURE - READ_MUL, status=51 error=4 , LBA=191g_vfs_done() , ad0s1 [READ] error=5
error issuing READ_DMA command
exec /sbin/init : error 5

在 PTT 上面爬了文,感覺情況並不是很樂觀,看起來應該是硬碟差不多要換新了。明天拿個開機光碟 mount 看看,不行的話就想辦法救資料吧。

ps. 原來乖乖被老鼠吃掉會當機,乖乖「全部」被吃掉硬體會掛.........。

2010/01/20

Be a Hacker, not a Hater

轉貼 gasolin佳句
Hacker 是心存不滿就自己動手改變現狀的人

Hater 是心存不滿就找人開始抱怨的人

而世界是不會因為 Hater 而改變的

2010/01/18

Unix 和 Windows 的文化差異

Unix 和 Windows 程式設計師的文化差異
http://blog.lauct.org/?p=1481

這篇字數多到讓我想翻桌,但實在寫得很客觀。

以目標來區別的話:Unix 的目標是讓其他開發者能更輕鬆;Windows 的目標則是讓使用者能更輕鬆。

玩二個不同的系統這麼多年,我不得不說 Windows 的人機介面真的是我用過數一數二的 (Mac 感覺很棒但是不熟不敢亂說 XD),但是對於一個在 Windows 上開發程式的人而言,在命令提示字元裡面做事實在有夠麻煩,資料夾一堆空白不說,連基本的 rootkit 也很鳥,在 CLI 根本作不了什麼事。

但是換成 Unix / Linux 系統上,開發程式顯得輕鬆很多,撰寫程式、編譯、除錯都有免費又方便的程式可以用,也不需要花大錢買個 XX Studio 或是找破解,參加完 SA@Tainan 的「終極密碼戰」才知道,連 Hack 掉一個全 bunary 的程式也只需要基本的幾個免費工具。但是說到人機介面,Unix 上的軟體就實在很不人性化,很多時候會讓人想不透為什麼這個功能會放在這裡,那個功能卻跑到另一個地方去,而且很多很基本的問題甚至要使用 command line 才能解決。

不知道為什麼在台灣很多所學校都把「人機介面」的課放在選修甚至不用修。以前寫程式大多都是專用程式或只針對某用途而客製化的程式,但是現在電腦普及,大多數的程式已是為了一般使用者而撰寫,但是為什麼把使用者操作的感覺拋到腦後?

2010/01/16

Google 攻擊事件

2010 年 1 月 12 日 Google 官方發佈聲明表示要退出中國:

A new approach to China
http://googleblog.blogspot.com/2010/01/new-approach-to-china.html

中文翻譯:寧為玉碎不為瓦全 Google不排除退出中國
http://miranda0503.blogspot.com/2010/01/google-search-giant-rather-die-on-its.html


在 Google 說明中所利用的微軟系統漏洞,以存在數年 (聽說可能在 2000 年就已經存在),而微軟在 2010 年 1 月 14 日才正式宣佈漏洞相關資訊,收影響的包涵微軟所有的作業系統及瀏覽器,最慘的是「目前仍然沒有發佈補丁」。

Microsoft Security Advisory (979352)
http://www.microsoft.com/technet/security/advisory/979352.mspx

在中國有疑似 Google 員工發佈「Google 事件真相」,而該網站在數小時候被河蟹掉了。備份的文章內容如下:
Google,祝賀你回到仁慈的主的懷抱。是的,我們在此祝賀而不是哀悼你。當耶路撒冷的太陽終於照耀你冷寂的墳墓之時,我們將迎接你的復活。


以下的真相,如果你有懷疑,如果你覺得其他的說法才是真的,那麼請你解釋這樣一個事實:

Google總部在聲明退出中國之後,立刻取消了所有中國工程師訪問Google代碼伺服器的許可權。
他們都是在上班後發現伺服器的home目錄進不去了。事先根本沒有通知。
很多人寫到一半的代碼,就沒法動了,要等幾個禮拜之後,調動到美國才能繼續寫

如果Google是有預謀的撤離,為什麼要採取這種手段?他完全可以讓員工繼續工作,做一些善後工作。 比方說現在Google music,中國公司和美國做的是不一樣的(music.google.cn 和 music.google.com)現在要取消中國的music了,完全可以讓中國的工程師來做這個代碼遷移的工作。

現在是中國的工程師全部帶薪休假,由老外來接手善後事宜。

為什麼Google突然那麼不信任中國這邊的團隊?畢竟他們自己開發的代碼,讓他們自己來做遷移肯定效率更高啊

唯一的原因就是,Google內部的技術人員中被安插了党的特務(就在Google上海辦公處)

事實真相就是,這個人在受到黨的派遣,應聘Google成功之後,就把Gmail的關鍵代碼down下來然後上交給了組織。

而這個組織破解gmail系統的目的就是為了獲取“人權團體”的郵件,這些在Google官方的聲明都有

這樣一來會暴露gmail系統的所有漏洞,而且Google官方不能承認這個事情,否則他在國際上的聲譽會大受影響。他能做的就是停止中國所有的工作,中國這邊所有的工程師已經不能登陸google的代碼伺服器了。然後應該會抓緊幾天時間修改一部分gmail代碼

其實事情就是這樣簡單完全是突發事件,所以Google的官方聲明,你去讀一讀原版,寫的是很倉促的,字裏行間都能讀出他們最高層的震驚,就是Google三個最高層的人臨時討論一致決定的。如果是什麼和美國政府商量好的,你覺得堂堂Google的官方聲明會寫的那麼潦草,一點正式檔的套路都沒有?

Google撤離也不是因為互聯網審查,這個當然是一件很讓Google不舒服的事情,但這幾年他不也就這麼忍下來了嘛

特工這次的竊密行動,使Google有面臨全面破產的危險(Google官方博客也說了,牽涉到知識產權的問題),說白了,再在中國呆下去,可能要威脅到整個公司的生存,所以才如此倉促的把中國部門的一切工作全部停掉

所以Google一開始還說打算和中國談判,但是今天馬上就放棄談判的打算了,因為就算政府讓步,Google也不能再留了,再留就有性命危險。也不是中國市場賺錢不賺錢的問題了,賺這點小錢,把整個公司的性命搭進去,風險太大了

關於Google工程師訪問Google代碼的許可權,Google對於技術人員的誠信是相當信任的。即使是一個實習生,也可以訪問99%以上的代碼。 Google只有一個代碼庫,每個進去的人學到的第一條開發原則就是:搜!從代碼庫裏面儘量搜索功能相似的代碼,然後給原作者發Email。講究這種整個公司的代碼共用,才會達到有那麼高的編碼效率。而且Google的代碼,注釋,和技術說明文檔是一體的,對每一個工程師都是公開的

你可以噴我,也可以提出其他的說法,但是請你在回復之前先看完全文,然後想想自己的說法能不能自圓其說!!

我只能說,特工你太辣手了,實在逼得人家混不下去了

補充一:
這個事情還在調查中,有一個人,他是黨員,來了Google沒多久,就把gmail核心代碼下載下來,而且現在這個人已經不知所蹤了,這些是可以肯定的

至於他是誰指使的,我們只是猜了

這兩天Google總部派人過來和中國每一個工程師喝咖啡談話,調查是不是這個人還有同夥

同時總部在評估,這件事情造成了多少代碼洩漏,哪些代碼需要重寫

等這些工作做完,就會開始轉移中國這裏的工程師(要是沒有調查就轉移,豈不是讓別的臥底混入美帝了嘛)

然後這個時候總部應該會給一個說法,讓真相大白於天下,等再過一個月左右大家再回來看這個帖子吧!

補充二:
算了我來說吧。

裏面一共三個臥底,裏面居然還有共產黨支部。

裏面的支部書記是國安四年前就布的局。

這個朋友本科就是交大出來的,後來去了信安部。

信安部派他會交大信安學院念電腦,天天做演算法題, 畢業就進了Google。

之後發展了兩個內線,其中一個內鬼暴力破決Gmail的源代碼系統,
把代碼偷出去給了政府。

政府主要是要監控用Gmail的反共分子。

裏面不得了,居然還有國安局的黨支部小組。

這個老兄拿了100萬獎勵,外加公務員待遇。

這幫人一下班就偷偷去陸家嘴開黨支部會議。

小補充三:

google是如何發現代碼被轉給特工的?
除非google在每個員工的電腦上裝監控軟體。

要訪問代碼,必須登陸Google唯一的代碼伺服器
伺服器端有你的流覽記錄

現在只知道這個人是黨員,他在很短時間內流覽了很多代碼,而且這個人現在不見了,我只是根據這些猜測他是上交組織了

第一攻擊了很多源代碼管理伺服器,

第二明確地告訴你是非法弄到的。

大家再看會,我的手機就會響起了……

現在同事大部分已經開始準備離開了,少部分技術人員和法律部的會繼續留下來,大家情緒非常失落,誰也沒有想到會是這麼個結果。


Times 網站在 1 月 14 日報導對這次事件的處理情況,表示 Google 在上個月以組織反擊小組展開秘密的反擊行動,並收集到攻擊來自於大陸的證據,但目前無法證明中國政府有參與其中。

After Google’s Stand on China, U.S. Treads Lightly
http://www.nytimes.com/2010/01/15/world/asia/15diplo.html?ref=technology

閱讀新聞的 Google 中文翻譯


1 月 18 日,Google 轉而否認將關閉中國網站和分公司。
Google可能繼續留在中國
http://news.chinatimes.com/2007Cti/2007Cti-News/2007Cti-News-Content/0,4521,130504+132010011800448,00.html

大逆轉! Google否認撤出中國
http://udn.com/NEWS/MAINLAND/MAI3/5374045.shtml


Google 中國部落格在 19 日正式澄清關閉中國辦公室的謠言,目前辦公室仍正常運作中。
澄清不實的傳言
http://googlechinablog.com/2010/01/blog-post_19.html


1 月 19 日微軟公佈解決辦法:啟用所有版本的「資料執行防止 (DEP)」


1 月 21 日,微軟針對不同平台的瀏覽器發佈修復程式



以下節錄大家在噗浪上討論的有趣對話~~~

By 日落
剛剛收信發現 Google 把「美猴王」改成「瞭解安全性增強的 Gmail」了


By David Huang
(微軟) 有些功能其實是用漏洞寫出來的 XD


By 正義的胖虎
反正中國那麼大~ 鎖起來玩區網也可以的啦


By 史提芬周
中國google疑雲事件,拍成電影一定很賣座...XD

By Google Hacked the Chinese Hackers Right Back @ Gizmodo.com
If you hack Google, they will hack your ass right back


By Pingooo
如果你自覺對黑客的防禦能力比 Google 或其他美國大企業好,就繼續用 IE 吧!(微軟報告:IE6/IE7/IE8 尚無解藥)死亡率絕對比 H1N1 高。不然請注射 Firefox 或 Chrome 疫苗。



Google 事件懶人包 @ ZDNet Taiwan
http://www.zdnet.com.tw/news/web/0,2000085679,20143774,00.htm

CSS 版面設計樣板範例

最近要生一個網頁樣板出來,不過沒碰過 CSS 單單調整幾個區塊也讓我想撞牆,後來阿雷固推薦我一個網站很不錯,把常用的樣板整理出來,將 CSS 複製貼上就可以使用了。



網站名稱:Little Boxes
http://www.thenoodleincident.com/tutorials/box_lesson/boxes.html

2010/01/14

Google.cn 事件的官方聲明稿 翻譯

Google不排除退出中國(節錄Google官方聲明稿)
http://miranda0503.blogspot.com/2010/01/google-search-giant-rather-die-on-its.html

以前看到 Google 會配合中國政府過濾搜尋結果已經感到很訝異,以 Google 「Don't Be Evil」的作風不應該出現這樣的行為。現在總算做出正式的回應了。

目前懷疑去年 9 月李開復先生離職,現在發生的事情以關係。

2010/01/13

電子書取代實體書?



最近 Amazon 的電子書「Kindle」吵得很紅,不但攜帶方便又能節能省碳,國小學生也不必因為眾多不同版本的教科書而攜帶登機箱上學。

但是個人認為電子書有幾項缺點:



老師批改作業較為麻煩





無法任意的作筆記





無法當作兇器,攻擊無力化



由於以上幾點,小弟還是覺得使用實體紙本對學習較有幫助.......。

2010/01/11

GD vs. Imagick (ImageMagick)

由於之前聽到網路上傳言 ImageMagick 函式庫的效能比 GD 還要好,不過找不到實在測試資料,所以自己來跑測試。

測試方式是由自己的一張全景照片 (512 x 512, 340KB) 分別用 GD 與 ImageMagick 的縮圖函式進行縮圖 (256 x 256),並紀錄執行函式所需要的時間。

2010/01/09

敗家:SB-900

由於沒沿買其他鏡頭,所以先衝閃光燈。由於 GN 值高、多段變焦支援 17 - 200mm,就直接敗了 SB-900 .....


Install new fonts in Ubuntu

Copy *.ttf to /usr/share/fonts/truetype/NEW_DIR/.

Then execute command to update cache:
sudo fc-cache -f -v

2010/01/06

查詢系統版本資訊

我一直以為只能用 uname 查詢系統版本資訊:
$ uname -a
Linux johnroyer-laptop 2.6.31-16-generic #53-Ubuntu SMP Tue Dec 8 04:01:29 UTC 2009 i686 GNU/Linux

不過來有另一個方法可以查詢:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 9.10
Release: 9.10
Codename: karmic

也可以到 cat /etc/lsb-release 查看系統資訊。

修改 Wdinwos XP 登錄檔製作快速關機

網路上流傳不少加快電腦關機的方法,查了一下是要求系統強制將應用程式關閉。

強制將應用程式關閉有很多風險,應用程式在正常結束時,通常會釋放以使用的記憶體、將執行狀態 (如視窗位置、最後開啟的網頁、最後播放的歌曲等等) 寫入紀錄檔,雖然關機時記憶體沒有釋放沒有關係,但是若紀錄檔沒有完整寫入或是沒有更新,下次開機可能就會出現錯誤,例如 foobar 強制關閉就會導致紀錄檔不完整而無法讀取,整能重新安裝。

目前網路上看到最多的是修改 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control 下的機碼:
  • HungAppTimeout:使用者程序逾時時間,預設 5000 (毫秒)
  • WaitToKillAppTimeout:使用者程序逾時時間,預設 20000 (毫秒)
  • WaitToKillServiceTimeout:系統服務逾時時間,預設 20000 (毫秒)
網路上某些教學會將等待時間改到 1000 毫秒甚是以下,雖然預設值實在太大,不過實在不建議將等待時間改到這麼短,可以依照電腦執行速度的不同稍做調整,個人偏好在 5000 左右。

偷懶修改法:將下面的文字複製到記事本,存檔後將副檔名改為「reg」,點二下執行即可。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control]
"HungAppTimeout"="3000"
"WaitToKillAppTimeout"="5000"
"WaitToKillServiceTimeout"="5000"

參考資料:WindowsXP關機開機速度校正
http://freeinfo.cream123.com/?p=736

修改 screen 視窗上限

上限不在 .screenrc 設定檔內,而是放在 config.h 程式碼當中,將以下設定修改後重新編譯:
/* 
* Maximum of simultaneously allowed windows per screen session. 
*/ 
#define MAXWIN 100

轉貼來源:改 gnu screen "窗" 的數量
http://www.monster.com.tw/archives/1657

2010/01/05

WD EADS 1TB 硬碟效能測試


用 HD Tune 跑硬碟效能測試,不過圖表我看的不是很懂,不太清楚怎樣分別好壞。

就我的經驗而言,84 MB/s 的讀取速度算很高,以前買的硬碟最高都只有 60 MB/s 左右,表示 1TB 這顆硬碟單碟密度應該頗高 (?)。

另外在跑 Access time 時,我幾乎聽不到讀寫頭移動的聲音,比起目前正在使用的幾顆硬碟真的算非常的安靜。

系統規劃

買了二顆 1TB 的硬碟以後,準備把一些舊的硬碟淘汰,因為容量夠大,打算留下其中一顆硬碟安裝 Ubuntu,不過還有些問題讓我很頭大:
  • Windows XP 好像會認硬體,dd 到其他硬碟即使能開機也不一定能操作
  • Ubuntu 要裝在分割區?還是裝在另一顆硬碟?
  • 磁碟空間的分配
印象中把自己的開機磁碟接到另一台電腦,XP 可以執行但是無法登入,所以如果要將現有的系統換到較大的硬碟上,可能會沒辦法使用。

目前手上有 120G、400G、640G 和二個 1T 的硬碟,如果上面的問題可以解決,打算留下 640G 的硬碟把 XP 和 Ubuntu 裝在一起,沒辦法的話就只能留 120G 和 640G 下來用,但是 640G 整個留給 Ubuntu 有點太浪費空間.......。

2010/01/01

2009 回顧

新年新希望!向吸引力法則看齊!

2009 年是我大學延畢第一年 (我一點都不想要有第二年 XD),花了不少時間搞清楚自己大學到底在做什麼。有趣的是以前國中老師說:「現在教的高中就會用到了」高中老師又說:「這些以後大學就會用到了」到了大學又聽老師說「這些工作都會用到」......,但是老師怎麼知道我以後座什麼工作咧?難道賣雞排要微分....喔不....要積分才有錢賺 XD

改變我最大的非 COSCUP 莫屬,另外又看了不少 TED 的演講,才清楚自己要的是什麼,以後應該怎麼做。

以下作為是 2010 年的目標:
  • Free & Open software
  • Innovate
  • Let computer make life easier

熱血繼續衝刺!...... CURRAHEE!