剛剛在 ZDnet 看到一篇文章很有趣:
研究:習慣性同時多工者效率較差
http://www.zdnet.com.tw/news/software/0,2000085678,20140461,00.htm
現在的電腦大部分都是多工作業系統,可以「同時」執行多個程式,不過「同時」其實也不過是用非常快的速度來回切換處理不同的工作而已,中間使用 context switch 將程序的資源作交換。
回到現實世界,現在工作實在有夠辛苦,除了寫程式以外還要同時看公文、接電話、應付突然出現在背後的老闆,為了保持和朋友間的關係還要衝噗浪和非死不可......。記得以前某個研究發現,做事時被打擾以後,要花大約十分鐘左右才能完全回覆到先前的工作狀態,表示同時處理兩件事情時,會花掉數十分鐘在紀錄事情處理的情況和經過,如果同時處理更多事情就畫花掉更多冤枉時間。
很久以前寫過抱怨文,較別人不要在我做事的時候吵我,因為我不支援多執行緒也沒有多核心,再加上我的 context swutch 有問題,所以來吵我小心我開槍。不過現在慢慢的把習慣改掉,現在偏向用 GTD 的方法處理事情,處理事情時若有新資訊,就先寫下來、丟到 mail 裡面,再安排時間去整理這些資料,當然如果是要街電話就沒辦法了。
但是不想讀書就是不想讀書啊,就算是單工還是會看到睡著 XD
2009/08/28
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/21
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 設定檔被使用
2009/08/17
2009/08/16
COSCUP 2009 day 1
Day 1 很精彩,不過有一句話我一定要貼出來!
ps. 以後記得經過 SUN 的攤位時要把名牌藏好 XD
我宅、我色、我舒服
I home, I suck, I comforted
By Jserv
ps. 以後記得經過 SUN 的攤位時要把名牌藏好 XD
2009/08/10
2009/08/09
縮短網址 vs. Hash
一直到剛剛才想通為什麼大多數的縮短網址會使用 Hash 產生 key,果然不先死過一次不知道為什麼要這樣作。
先從 key 開始起吧,為了讓 key 更短通常會使用更多的文字或符號,從數字、英文大小寫甚至特殊符號。假設使用數字和英文大小寫作組合,每一位數都有 62 種組合 (10 + 26 + 26),用四個位數的話可以儲存約一千五百萬比資料,這對我這種小網站應該很夠用了。
還沒想通資料量和 hash 有何關係?那就來看看新增時到底要作哪些事情:
如果將步驟改成這樣:
現在開始後悔沒有好好學演算法了,我要怎麼自己寫一個 hash 函式出來啊???
先從 key 開始起吧,為了讓 key 更短通常會使用更多的文字或符號,從數字、英文大小寫甚至特殊符號。假設使用數字和英文大小寫作組合,每一位數都有 62 種組合 (10 + 26 + 26),用四個位數的話可以儲存約一千五百萬比資料,這對我這種小網站應該很夠用了。
還沒想通資料量和 hash 有何關係?那就來看看新增時到底要作哪些事情:
- 查詢資料是否已經存在
- 產生網址與 key 的對應
- 儲存結果
如果將步驟改成這樣:
- 將網址作 Hash
- 使用 Hash 的結果查詢資料是否存在
- 檢查是否發生碰撞
- 儲存結果
現在開始後悔沒有好好學演算法了,我要怎麼自己寫一個 hash 函式出來啊???
2009/08/06
原來 FreeBSD 不需要 dos2unix 工具
從 Windows 複製到 FreeBSD 的檔案,通常會因為換行字元不同,在 FreeBSD 開起來以後會在行尾看到「^M」的符號。
一般狀況下可以用 dos2unix 工具作轉換,不過 FreeBSD ports 裡面並沒有這個套件,不過後來查一下資料發現其實不用這麼麻煩,下個指令就好了:
一般狀況下可以用 dos2unix 工具作轉換,不過 FreeBSD ports 裡面並沒有這個套件,不過後來查一下資料發現其實不用這麼麻煩,下個指令就好了:
cat file | col -b > new_file
FAMP:FreeBSD + Apache + MySQL + PHP
Install Apache
for subversion:
然後到 /boot/loader.conf 加入一行
讓 Apache 開機時自動啟動,到 /etc/rc.conf 加入一行
若有看到以下錯誤訊息:
檢查一下核心設定檔是否有加上:
Install MySQL
如果希望 MySQL 支援 Big5 編碼,請在 Makefile ONFIGURE_ARGS 參數後面新增:「--with-charset=big5」
不過這個缺點是會讓 MySQL 建立新的資料庫時,預設的編碼都選擇 big5,而 big5 已經越來越少用了,所以建議以加上參數的方式,更改對 big5 的支援。
設定開機自動啟動,在 /etc/rc.conf 加入一行
請將適合的 MySQL 設定檔複製到 /etc 底下:
Install PHP
修改 Apache 設定檔
參考資料:
http://blog.twku.net/2005/10/15/18/
ps.餅乾又出現了 0.0
最後修改日期:2009/08/06
cd /usr/ports/www/apache22
make WITH_MPM=worker WITH_THREADS=yes install cleanfor 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_HTTPInstall 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.cnfInstall 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
訂閱:
文章 (Atom)