2006年3月12日 星期日

CGoban

最近對圍棋特別感興趣,有點時間就上網找人廝殺,不過都是被別人殺得一踏糊塗。
我使用 Java 版的 CGoban2下網路圍棋。至於象棋,我都跑去 PTT下棋,不過好像沒有像 CGoban2 這麼好用又跨平台的軟體。
底下是我看別人下圍棋時的快照:

kgs.png

2006年3月8日 星期三

X 的設計原則

無意見看到 Wikipedia 對於 X 設計的原則描述,茲引言如下:



1984年,Bob Scheifler和Jim Gettys制訂了X的早期原則:
* 除非沒有它就無法完成一個真正完整的應用程式,否則不用增加新的功能。
* 決定一個系統不是什麼和決定它是什麼同樣重要。與其去適應整個世界的需要,寧可使得系統可以擴展,這樣可以用上層相容的方式來滿足新增需求
* 只有根本沒有實例才會比只有一個實例更糟。
* 如果問題沒有完全弄懂,可能最好根本就不要去解決它
* 如果預期要用百分之90的努力去完成百分之10的工作,應該用更簡單的辦法解決。 (參見更糟就是更好。)
* 盡量避免複雜性。
* 提供機制而不是策略。實踐中把用戶界面策略放在用戶手裡。


第一條原則在設計X11時修改為:「除非制訂有真實的應用程序需要,否則不用增加新功能。」 X基本上一直遵循這些原則。參考實現是從擴展和改進的著手來進行開發,同時和1987年的最初的協議幾乎保持完全相容。



上文提及的更糟就是更好,中文維基百科裡還沒有中譯。當然除了 X 外,也一定會想到 UNIX 的設計哲學:

1. Small is beautiful.
2. Make each program do one thing well.
3. Build a prototype as soon as possible.
4. Choose portability over efficiency.
5. Store data in flat text files.
6. Use software leverage to your advantage.
7. Use shell scripts to increase leverage and portability.
8. Avoid captive user interfaces.
9. Make every program a filter.

基本上,以上提及的設計原則,都離不開「簡單就是美」的哲學。說來慚愧,寫程式多年至今,還未能接觸到大型且複雜的程式,更沒有能力與機會參與設計龐大的軟體架構。只靠賣弄些程式技巧,雖足以過活,但心裡知道,若要實現一些想法,還有一大段功夫要磨練。

好好思索,好好反省,我所寫過的程式是不是稱得上「美」呢? 唉。

2006年3月6日 星期一

資安展遊記

上週的「台北國際資訊安全科技展」,算是台灣資安界年度大拜拜。趁著這個機會,我也逛了許多廠商的攤位,為的是了解資安設備發展的方向。

1. Novell 攤位上只有一位好心的小姐在介紹,雖然她熱心的想提供 SuSE Linux 上課折價卷,但是我真的不需要啊。如果有人想上課考 NCLP,請參考 CdChen 的 恆逸將開辦 NCLP 課程

2. 諮安科技的線上弱點掃瞄服務( !Patrol SNAP online),嗯,很好,不過我情願用 Nessus

3. 我在 openfind 攤位上告訴一位美麗的小姐,mail2000 系列許多政府和學校使用,十分有名氣,可說是國內少數成功的商業 webmail。當然,就被贈送了免費使用半年的 mail2000 帳號。

4. 力麗科技的 Message Server 50,多功能郵件伺服器。這應該是 mail2000 競爭產品,不過,防垃圾郵件、防病毒郵件就算了,為何要加上個防駭客攻擊呢?答案是,可以防駭客 DoS 攻擊。帥吧。

5. 看到一個號稱全球唯一可側錄 skype 語音通話內容以及文字聊天內容的超強系統。陶華科技代理的 MIS Keeper - 資訊稽核管理系統。哇!一看就被嚇到吧,不過當業務談到要在使用者電腦上裝管理軟體時,我腦裡想的盡是如何移除該「類 rootkit 的 spyware」。

6. 8e6 的網路安全行為管理系統。喔,又是一個監控員工上網行為的設備。不過,我倒對封鎖 spyware 軟體封包和防詐騙網站、惡意程式碼攻擊等較感興趣。號稱有分門別類的 URL 強大資料庫,並且會定時掃瞄所有大型網頁來作資料庫,提供比對,以封鎖釣魚網站。

當然,還有許多優秀的產品,我就不一一細說。只是有種感覺,那就是網路安全管理和內容安全管理已經開始作到爛了,大部份產品的定位都在企業應用上,都在幫企業想如何控管員工上網行為,如何讓員工的電腦更受保護。

能讓電腦或網路更安全的設備,大家都樂意接受,一旦要被約束、被管理、甚至被監視,那就是千百個不願意了。如果像電影「全民公敵」那樣,說過的每句話,做過的每件事,去過那裡,吃過什麼鳥蛋,喝過什麼鳥咖啡都被他人記錄並檢閱,你如何開心的上班,歡欣的把工作完成呢?在怎麼爽,也是公司的 MIS 和老闆互相在爽而已啊!

是不是要多為更多的 End Users 著想? 人們用電腦上網,圖的是方便和私密,大家已經受夠了為了病毒,要被迫裝上醜不拉嘰的防毒軟體,還要隔一段時間就 Windows Update 一下,好補補 Windows 的破窗。現在,人們還要面對正版後門監控軟體,「類 rootkit 的 spyware」,對於手無寸鐵只會下載 A 片的員工們,只有被張開嘴等著宰殺的份。你可能不知道自己電腦已被植入這類的「間諜軟體」,或著你明明知道,就無法移除它。它就那麼可惡的從「間諜」化身成「稽核」。不就是上個網看看色情圖片、傳傳打情罵俏的 MSN 訊息,抱怨一下上司的豬頭,有這麼嚴重到要剝奪那麼一點的隱私和樂趣嗎?

算了算了,來吧,大家來改用 Linux,練習一下 ssh/http tunnel、GPG 加密郵件、Gaim-encryption 加密通訊內容吧。至於什麼都不懂的人們,就只好學習「忍」了。