2009/08/28

習慣性同時多工者效率較差

剛剛在 ZDnet 看到一篇文章很有趣:

研究:習慣性同時多工者效率較差
http://www.zdnet.com.tw/news/software/0,2000085678,20140461,00.htm


現在的電腦大部分都是多工作業系統,可以「同時」執行多個程式,不過「同時」其實也不過是用非常快的速度來回切換處理不同的工作而已,中間使用 context switch 將程序的資源作交換。

回到現實世界,現在工作實在有夠辛苦,除了寫程式以外還要同時看公文、接電話、應付突然出現在背後的老闆,為了保持和朋友間的關係還要衝噗浪和非死不可......。記得以前某個研究發現,做事時被打擾以後,要花大約十分鐘左右才能完全回覆到先前的工作狀態,表示同時處理兩件事情時,會花掉數十分鐘在紀錄事情處理的情況和經過,如果同時處理更多事情就畫花掉更多冤枉時間。

很久以前寫過抱怨文,較別人不要在我做事的時候吵我,因為我不支援多執行緒也沒有多核心,再加上我的 context swutch 有問題,所以來吵我小心我開槍。不過現在慢慢的把習慣改掉,現在偏向用 GTD 的方法處理事情,處理事情時若有新資訊,就先寫下來、丟到 mail 裡面,再安排時間去整理這些資料,當然如果是要街電話就沒辦法了。

但是不想讀書就是不想讀書啊,就算是單工還是會看到睡著 XD

2009/08/27

Live Android



原本要把 Android source 抓下來重編再安裝到 VMware 裡面去的,不過單單 source code 就 2.8 GB 實在很恐怖,而且聽朋友說安裝完沒有滑鼠指標 XD

後來發現 Live-Android 可以直接用 Live-CD 開機,當然就不會繞遠路了。下載後 iso 檔有兩個,windows 底下可以利用 copy 將兩個檔案合併:
copy /b liveandroidv0.3.iso.001 + /b liveandroidv0.3.iso.002 /b live-android.iso

如果在 Linux 應該用 cat 就可以了吧:
cat liveandroidv0.3.iso.001 liveandroidv0.3.iso.002 > live-android.iso

完成後就可以直接使用 ISO 開機了。



如果還想要自己編譯,請看這裡:

Thinking more...:Run Android on VirtualBox/VMWare
http://blog.roodo.com/thinkingmore/archives/8533633.html

2009/08/23

鳳中管樂演奏會



恭賀 8/22 鳳中管樂校友團演奏會圓滿結束!

這開心這次演奏會能把文化中心至善聽塞爆,算起來觀眾接近五百人!慶功宴回來有點累了,照片晚點在做整理,不過還是要來看一下今日之最:


最震驚:會場座無虛席!




我最夯:為什麼和主持人合照的小物件這麼多




我最大:總招大人!




最悲情:小蕃薯辛苦你了!




最會喝:裡面真的是啤酒嗎? XD

2009/08/19

本日最中肯

jayson12 said:
好的機器帶你上天堂
壞的機器讓你睡機房

2009/08/18

測試你的瀏覽器有沒有作色彩管理



圖片出處:PROFILE UTILIZATION TEST IMAGE AND PROFILE
http://blogs.msdn.com/...../Profile-utilization-test-image-and-profile.aspx

圖片中有嵌入 ICC 設定檔,裡面包含一個標示為「MS00」的 WCS 設定。圖片已經將紅色和藍色對調;ICC 將藍色和綠色矩陣中的欄位內容對調;WCS 則是將紅色和藍色的 XYZ 直對調。

如果你看到的重機是:
  • 藍色:嵌入圖片中的設定檔被忽略
  • 綠色:ICC 設定檔啟用
  • 紅色:作業系統可能是 Windows Vista,標示為「MS00」的 WCS 設定檔被使用
ps. 翻譯得很爛,有不妥的地方請幫忙修正,謝謝!

2009/08/17

2009/08/16

COSCUP 2009 day 1

Day 1 很精彩,不過有一句話我一定要貼出來!
我宅、我色、我舒服

I home, I suck, I comforted

By Jserv



ps. 以後記得經過 SUN 的攤位時要把名牌藏好 XD

2009/08/09

開心農場被 DDOS

還以為上次 180 顆石榴已經夠誇張了,沒想到這次的更..........



到底有誰可以這麼有耐心一直重新整理,這不知道要收幾個小時才收的完.....。

縮短網址 vs. Hash

一直到剛剛才想通為什麼大多數的縮短網址會使用 Hash 產生 key,果然不先死過一次不知道為什麼要這樣作。

先從 key 開始起吧,為了讓 key 更短通常會使用更多的文字或符號,從數字、英文大小寫甚至特殊符號。假設使用數字和英文大小寫作組合,每一位數都有 62 種組合 (10 + 26 + 26),用四個位數的話可以儲存約一千五百萬比資料,這對我這種小網站應該很夠用了。

還沒想通資料量和 hash 有何關係?那就來看看新增時到底要作哪些事情:
  1. 查詢資料是否已經存在
  2. 產生網址與 key 的對應
  3. 儲存結果
問題很明顯出在第一步驟,一千萬筆資料 query 一次到底要花多久的時間?有作索引也要花超過十秒,沒作索引花個半小時可能也算快。

如果將步驟改成這樣:
  1. 將網址作 Hash
  2. 使用 Hash 的結果查詢資料是否存在
  3. 檢查是否發生碰撞
  4. 儲存結果
在第一步先產生 hash 結果就可以減少搜尋的範圍,範圍縮小就可以減少第二步驟查詢所需要的時間。

現在開始後悔沒有好好學演算法了,我要怎麼自己寫一個 hash 函式出來啊???

2009/08/06

原來 FreeBSD 不需要 dos2unix 工具

從 Windows 複製到 FreeBSD 的檔案,通常會因為換行字元不同,在 FreeBSD 開起來以後會在行尾看到「^M」的符號。

一般狀況下可以用 dos2unix 工具作轉換,不過 FreeBSD ports 裡面並沒有這個套件,不過後來查一下資料發現其實不用這麼麻煩,下個指令就好了:
cat file | col -b > new_file

FAMP:FreeBSD + Apache + MySQL + PHP

Install Apache
cd /usr/ports/www/apache22
make WITH_MPM=worker WITH_THREADS=yes install clean

for subversion:
make WITH_MPM=worker WITH_THREADS=yes WITH_AUTH_MODULES=yes WITH_DAV_MODULES=yes WITH_SSL_MODULES=yes WITH_PROXY_MODULES=yes WITH_BERKELEYDB=db42 install clean

然後到 /boot/loader.conf 加入一行
accf_http_load="yes"

讓 Apache 開機時自動啟動,到 /etc/rc.conf 加入一行
apache_enable="YES"

若有看到以下錯誤訊息:
Invalid argument: Failed to enable the 'httpready' Accept Filter

檢查一下核心設定檔是否有加上:
options         ACCEPT_FILTER_HTTP


Install MySQL
cd /usr/ports/databases/mysql51-servermake install clean

如果希望 MySQL 支援 Big5 編碼,請在 Makefile ONFIGURE_ARGS 參數後面新增:「--with-charset=big5」
CONFIGURE_ARGS= --localstatedir=/var/db/mysql \--without-debug \--without-readline \--without-libedit \--with-libwrap \--with-mysqlfs \--with-low-memory \--with-comment='FreeBSD port: ${PKGNAME}' \--enable-thread-safe-client \--with-charset=big5

不過這個缺點是會讓 MySQL 建立新的資料庫時,預設的編碼都選擇 big5,而 big5 已經越來越少用了,所以建議以加上參數的方式,更改對 big5 的支援。
make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_general_ci install clean

設定開機自動啟動,在 /etc/rc.conf 加入一行
mysql_enable="YES"

請將適合的 MySQL 設定檔複製到 /etc 底下:
cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf


Install PHP
cd /usr/ports/lang/php5make install clean

修改 Apache 設定檔
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps


參考資料:
http://blog.twku.net/2005/10/15/18/

ps.餅乾又出現了 0.0

最後修改日期:2009/08/06

敗家

前幾天買了 zbla.us 這個網域,終於可以來規劃一個較完整的網站了。

會選擇用 zbla 當作網域有幾個原因,最簡單的意思就是「聽 zero 在 bla bla bla」。若以讀音來解釋,可以把 zbla 當作斑馬,意思是「肝不好生活就是黑白的」,當然你翻譯成「黑白買」也可以啦,因為真的是買好玩的..... Orz

以後打算找一些工具架站,大多應該都是資工相關的吧,目前預計提供以下幾個服務:
  • Wiki
  • SVN
  • Redmine
  • 縮短網址 (trying)
  • 增長網址 (Kuso 是一定要的!)
另外 zbla.us 已經啟用了幾個子網域,大家有興趣的話可以先去搶頭香 XD