2005/6/30

倪匡科幻獎的目標完成了

從幾個月前知道倪匡科幻獎這個比賽,就開始構思與準備寫作。我是從最容易下手的「科技狂想曲」開始寫,寫作方向很快就找到了,本來以為字數最少會最好寫,其實不然,因為字數限制在一千字以下,構思出來的場景就得刪刪減減,千錘百鍊成一篇短文。

再來就開始寫「科幻小說」,這也是競爭最激烈的一組,科幻本來就是天馬行空,不需要有太深刻的科學知識,也可以把科幻詮釋地很生動。寫科幻小說時,最難的就是設定故事背景,我在一開始先確定生物科技的方向,然後慢慢一步一步地假設未來可能發生的情況,最後再以這個假設的故事背景為基礎,思考這種情境下,會發生什麼特殊的衝突事件,而這個短篇小說就是描述事件發生的經過。

科普文章當然是挑我目前比較熟悉的軟體工程來寫,用4500個字來交代軟體工程,也著實花了不少氣力,既要傳達軟體工程的定位,又要適當地旁徵博引。最後投稿時,才發現根本沒有軟體工程這一個類別,只好放到「其他」類。

花了不少時間構思與寫作,還請朋友幫忙審稿,他們都能適當地給我回饋修改的建議,不過我都是先defence,然後才慢慢地接受他們的想法,再著手修改文章。自己能撐這麼久的時間構思完成這些文章,覺得成果還不錯,但要上了檯面跟其他人一起競爭,就得靠運氣了,畢竟我的中文造詣,沒有理想中那麼好。

如果還有下次,希望能再突破,更提升自己的能力,讓自己的文章更有生命力。七月底投稿截止後,今年年底才會有結果,如果不受青睞,到時候再到blog公布這些參賽文章吧。

2005/6/24

Mobicents 1.0, 1st open JAIN/SLEE implementation

傳統Telecom市場必須建置一套SS7電信網路,自從VOIP出現後,Telecom跟IT已經開始有整合的趨勢,電信交換機的環境是封閉市場,掌握在廠商的手中,新穎的加值服務必須一直仰賴廠商支援(一直付錢),一旦IT領域藉由VOIP切入電信市場,將會侵蝕電信業的利基。

VOIP是通話的協定,但在協定之上,必須建置一套應用程式開發伺服器,並提供管理與計費等功能。

Ivelin Ivanov's blog比較了三套標準:
1. Parlay/OSA
Ericsson主導的programming API

2. SIP Servlets
對熟悉Servlet的開發人員,比較適合使用這套標準。

3. JAIN/SLEE
JAIN: Java APIs for Inteligent Networks
SLEE: Service Level Execution Environment
以J2EE server為基礎,建置的電信價值服務平台,可想而知,開發人員一定得先懂得EJB、JMX、JNDI。

Mobicents 是第一套 open source JAIN/SLEE 平台,目前底層只支援SIP protocol。

Mobicents 1.0, first open implementation of JAIN-SLEE, released

VOIP、JAIN/SLEE ... 粗淺的瞭解,持續的觀察,相信以後大家可以在家裡,搞個電信服務加值平台,到時候就會出現很多不可思議的加值服務。

2005/6/23

Why J2EE Projects Fail

Why J2EE Projects Fail by Rod Johnson
Recorded at TheServerSide Java Symposium 2005 - held March 3-5, Las Vegas

1. J2EE has not proven a panacea. Bad technology usage can guarantee failure.
2. General reasons
 (1) Failure to understand or communicate requirement
   Sol:
    Establish continual feedback
    Listen to the business
    Do not use waterful
    Educate the business about the process
 (2) Ideology
 (3) Lack of attention to performance
   Sol: Try to use architectural approaches that allow architectural refactoring
 (4) Bad team dynamics
 (4.1) The God-like architect
 (4.2) Too big a team
 (4.3) Overwork
   Sol: Communication is essential to success
 (5) Lack of appropriate testing strategies
 (6) Poor productivity

3. Technical reasons
 (1) Inability to deliver performance goals
   Sol: Considering performance when designing architecture
 (2) Too much code!
 (3) Assuming the very small translates to the very big
 (4) Reinventing the whell
   Sol: frameworks
 (5) Persistence issues
 (5.1) Not understanding relational databases
 (5.2) Using O/R mapping inappropriately
 (5.3) Not using O/R Mapping where appropriate
 (6) Lack of automation and slow cycles

2005/6/21

主導演化人類要扮上帝之手

主導演化人類要扮上帝之手

超恐怖的一篇報導,科幻題材才會看到的東西,現實世界也在發展這些技術。

1. 意念驅動機械手臂
2. 增強記憶藥
3. 生化戰士
4. 阿諾史瓦辛格鼠
5. 微小的「醫療機器人」
6. 男人也能生小孩
7. 人體斷肢再生功能
8. 治療猝睡症的藥物「保清醒」
9. 第廿四對人工染色體

科技可以有無限的想像空間,科幻就是預先構想實現後的世界。

2005/6/20

沈君山校長的「浮生三記」

沈君山,這個名字在過去幾年,對我來說只是我大學畢業證書上的一個名字而已,看了他的書之後,才算是初步認識這個傳奇人物。「浮生三記」這本書是透過張系國的介紹:浮生冰涼,才去買來閱讀的,另外連帶買了夫人曾麗華的作品「旅途冰涼」。除了「四大公子」的封號外,總算是更深入認識了母校校長,也對大學生活做一個完整的交代。

清華大學是以理工聞名的學校,但這裡的學生也是出名的「怪」,難怪企業界比較喜歡成大與交大的畢業生。(如果有清華又有成功大學畢業證書的,這種人的狀態會變得更紊亂,還是更能兼容並包呢?)這個結論可從書本裡「年表小傳」中提到的,詩人余光中於1973年受邀至清華演講,當時他對清華的結論是:「文化的沙漠,瘋子的樂園。」後來在1997年又再次到清華講詩,他說:「現在清華不再是文化的沙漠了。」沈校長說:「但還是瘋子的樂園!」

智識的突破

「科學家要建立新智識的體系,不能不先熟悉就智識的體系,不能不先浸沈在舊智識的觀念和邏輯中。因此要想自其中跳出來,突破此智識障,另創新格局,非常之不容易。」智識障之外要克服的是言語障,「科學越進步,其內涵離日常經驗也越遠。...任何智識都必須要有溝通的語言...數學成為科學的語言...發展新的科學智識體系時,往往需要新的數學語言,例如牛頓發明微積分」「把描述物理觀念的語言的意義和日常語言的意義分開,已是現代物理學家的常識。」「智識障需要破,語言障需要立。」

所謂的自然科學,其根本的道理在此,大學的專業訓練目的在學習專業科目的專業術語,通識訓練的目的就是希望科學與日常生活能夠結合,一個科技專業人士如果不能體會生活,那就只是個工匠而不能稱為工程師了。

莫教浮雲遮望眼

吳清源先生說:「追二兔不得一兔。」「如果學棋是作為文化上的修養,調劑生活的消遣,那自然可以悠悠閒閒;但是要作為謀生的專業,那就只有先專心追這一隻兔子,別的兔子等追到後再說。」

做我所能,愛我所做

許倬雲:「身智心德四重傷殘,道德殘缺傷害最大。」
沈校長:「不貪欲、不強求。」

沈校長雖然在這裡說,自殺並非弱者行為,也主張人有結束自己生命的權利,也就是安樂死。但是這必須要從「身體有沒有用處」來下判斷,像沈校長這樣中風後,又四處奔走的情況,就是他「撿石頭的哲學」的展現,即使將來人有了結束自己生命的權利,也必須要在判定自己沒有用處之後,才能做下的決定。權利是不能濫用誤用的。


我發現我只能平實地抄錄文章中的一些話語,如要說有什麼心得感想,可能就是「高山仰止,景行行止,雖不能至,心嚮往之。」這句話,得要等到自己登上高山,才更能掌握做人做事做學問的道理,也許那一天永遠不會到來,「坐而言不如起而行」,唯有激勵自己邁步前進,生活才會更有活力。

不寫了,沒什麼感想,有空的人就去買來看看。

2005/6/19

黑暗中追夢

彰化師大教授萬明美自己出資拍攝特殊教育紀錄片「黑暗中追夢」,導演哥哥萬仁指導,文化大學戲劇系的兒子林懷生掌鏡。內容描述在台灣的三個多重障礙盲生--呂文貴、林偉智、莊馥華等三為多重障礙盲生的奮鬥、現在的狀況、未來的願望。

文貴(21歳)先天眼盲,有智能障礙,但擁有「絕對音感」,也能以觸覺跟聽覺學習演奏音樂。偉智(19歳)先天眼盲、智能障礙、自閉兒,但有超強記憶力,因為喜歡聽火車經過平交道的聲音,進而學會聽聲音辨別火車車種、與車廂節數,自從會講話之後,他可以記得每天廣播撥報的日期,並還能簡述當天發生的事情。莊馥華(21歲)10歲因為火災,吸入過多一氧化碳,而造成眼盲、全身癱瘓、無法言語,目前正在彰化師大中文系旁聽,未來希望能夠成為一名作家,目前持續發表自己的新詩創作。

面對這種情感的問題,交織上理性後,完全無法以「冷血」的批判角度看這件事情。文貴跟偉智都有過人的記憶力,他們跟馥華的差別在於「創造力」,片子裡面有看到文貴能夠播放的音樂中,正確地加入自己的擊掌節奏,有看到文貴表演即興曲,我不曉得這是不是他創作能力的展現。這樣的差別是因為馥華是後天災害的影響,而文貴跟偉智都有先天的缺憾。無論如何,他們三個人,都在「家人」的支持下,朝向自己的目標努力前進著,期待蝴蝶飛出潛水鐘的那一天。

馥華的詩作,並不會因為他特別的身份而有差別待遇,文貴跟偉智也是一樣,一旦他們的創作品問世,都是得攤在陽光下,跟其他人的作品一同被比較檢視,這也是他們必須付出更多時間努力的原因。

我們可以發現,這些障礙人士每一個都需要以個案處理,成功的人都有「自助後人助」的情況,例如馥華她必須自己先發展一個溝通字板,另外還得加上一些量身訂作的「科技輔具」,她使用的U2摩斯碼,是出自科技輔具文教基金會,但即使有這些輔具,他們都得付出很多時間才能適應。

我慶幸自己有「選擇」的權力,想學什麼就學什麼,也期望自己能更穩定地往前進。

有關這個紀錄片的網路文章如下:
台灣也有「海倫凱勒」《黑暗中追夢》訴說生命的掙扎和親情偉大
『黑暗中追夢』:三位多重障礙者的故事
『黑暗中追夢』紀錄片

馥華的詩心詩語:這是馥華的個人網站。

「黑暗中追夢」DVD(家用版)每片義賣300元,要購買的人請到這個網址

2005/6/14

讓人混淆的簡體字

最近在看一些簡體字的資料,因為是多媒體,簡繁轉換軟體派不上用場,只得常常地暫停倒帶,然後猜測那些字的含意。

大陸的簡體字發展有其歷史背景,文字改革委員會於1956年公佈《漢字簡化方案》,1964年出版了《簡化字總表》,1986年,國家語言文字工作委員會重新發表《簡化字總表》。這裡是簡化字總表的連結

單純地觀察文字的發展,由簡而繁是很正常的,這跟資訊科技裡的 hash 一樣,如果 key 值對應到的 value 不只一個的時候,為了保持 value 的唯一性,就得要增加 key 值的長度,因此讓文字變得越來越複雜。簡化的情形也有,但比較少發生。簡體繁體字不能混淆這篇文章就舉出幾個實例,討論同時使用繁體與簡體字可能會產生的問題。例如:沈是瀋之簡體字,「瀋陽」可寫作「沈陽」,但「沈」姓不能寫作「瀋」姓。

簡化字的背後這篇文章討論了大陸推行簡化字的用意,斬斷跟傳統中華文化的連結,配合政治目的需求。漢字簡化問題商討這篇文章比較客觀地討論了正反雙方的意見,然後就目前簡體字運行的事實,提出因應的態度。

繁體字與簡體字消長兩岸情勢有變遷,使用簡體字的人口越來越多是個事實,我們也只能面對並接受這個情況,往好的方面想,以我們繁體字的基礎去閱讀簡體字的資料,其實要比那些完全沒有基礎的拼音文字使用者容易多了。

台灣的文化戰略中文簡、繁體的世界競爭,以大陸的資源推廣簡體字的腳步勢必要比台灣來得快,x86 PC 跟 Mac 的戰爭已延燒許久,模仿 Mac 精緻的面向,切入華文市場,強調繁體文字與中華文化的連結,推廣「以繁御簡」的概念,相信能夠一定程度的支持者願意投入繁體文化的陣營。

大陸人四成認為閱讀繁體困難,台灣學生閱讀簡體反而容易,不需要太過擔心簡體字盛行,相反的,創造足夠份量的content,自然就能抵制勢力消長的情勢。

ps. 現在不能稱呼為繁體字了,要改稱為「正體字」。
「繁體字」應正名為「正體字」

2005/6/7

解 sudoku 的java程式分享

邏輯與視覺圖像遊戲這篇舊文章提到了"發現小船"這本書,書裡面有一些邏輯遊戲,最近在javaworld技術論壇又有人提起,所以就寫了程式可以解 sudoku 的solution。

Class 的關係為
Puzzle --- PuzzleSquare ------- PuzzleData
 |      |          |
 ---------PuzzleConstraint --- PuzzleConstraintData

另增加一個 constraint.txt 可以設定 constraint block 的限制
(因為有些puzzle的書裡面,有提供一些題目,
並不是使用3x3的九公格,而是任意設定的blocks)

請連接 yaocl's program for sudoku 這篇文章,可下載原始程式碼。

2005/6/6

debug 除蟲大作戰

寫程式的人對debug是又愛又恨,很少有人能一擊中的,程式能在第一次撰寫的就考慮到所有可能發生的錯誤狀況,也因此debug對每一支程式來說都是必經之路,對程式設計師來說,debug的經驗可以決定撰寫程式時,debug要花費多少時間。

家裡住的地方旁邊不遠處剛好有個四部汽車寬的大水溝,一進入夏天,即使住在十樓高的地方,因為蚊子太多,每天都得處理除蟲的工作。很奇怪的是,我是家裡最會打蚊子的人。

曾經使用液態電子蚊香,但現在已經不再使用的原因是,這種蚊香有個奇怪的味道(據說是除蟲菊),有新聞報導說除蟲菊精,雖然毒性低身體也代謝得快,吸太多也有不少問題。所以現在家裡使用的是電蚊拍,因為電蚊拍面積大,停在牆上的蚊子也不會察覺蚊拍慢慢地接近,等到發現時要飛起來已經逃脫不出蚊拍的範圍了。

但使用電蚊拍有個大問題,你要先找到目標蚊,牆壁、天花板上是最常發現他們駐足的地方,但地板、衣櫥表面、桌椅上也有可能會發現他們。家裡玫瑰白色的牆面與天花板及石英地磚上最容易看到他們,很容易就可以看到一點黑。

觀察的時候就像是照相機一樣,可以先把視覺調整到一塊一塊大面積的狀態,掃瞄過後,就會看到有一點一點黑色特別奇怪的地方,然後就得調整視覺的範圍,並將焦點鎖定在這個黑點上,一旦確定它是蚊子,就可以拿出電蚊拍來,但這個動作常會被牆面上偶然出現掉漆的洞給騙了,不過這些小洞都是固定的,家裡住那麼久,哪個地方是洞都很清楚了。

客廳的書櫃與臥室裡,因為櫃子是胡桃木深色的,再加上雜物比較多,所以比較不容易發現蚊子的蹤跡,這個情況下只能夠用櫃子或是桌子的切面來觀察,如果有不正常的突起物,就有可能是有異物在上面,是不是蚊子就不一定了。

晚上睡覺的時候,燈光通常是關起來的,如果耳朵旁邊有蚊子嗡嗡叫,把燈突然打開的話,蚊子就會停下來,就容易可以在牆上找到牠們。

另外還有一種方法就是拿東西引誘蚊子過來,因為我的平均體溫最高,所以最常被蚊子叮,平常坐在那邊,蚊子就會自動來找我,眼角有喵到黑色飛行物體的時候,就是要打蚊子的時候了。

Test-Driven Development TDD (by Kent Beck) 是流行的一種程式設計開發策略,這種方式主張要先撰寫測試程式碼,再藉由這些可重覆使用的測試碼,對撰寫的程式逐次測試,以求快速且正確地開發出零缺點的系統。但很明顯的,網頁的高階介面測試碼,就比測試後端的Model來得困難,也許要求公司買一些網頁的高階測試軟體,測試時會來得輕鬆許多。

所以我找蚊子的過程其實也就是Test-Driven的測試程序,自動化處理後,相信可以cover整個住家系統的debug程序。

2005/6/2

Appleseed"蘋果核"戰

Appleseed,又是一部士郎正宗的作品,對這個名字不陌生的話,應該會跟GIS攻殼機動隊連接在一起。這部作品在網路上討論的文章,多只著重於2D/3D的繪畫技巧,對於故事本身的評價並不高,頂多只說故事裡的場景與人物,引用自希臘神話。

我並不是繪畫專業人士,頂多覺得畫面動作流暢,畫工精細,對於作品本身使用的技術完全沒有概念。但我可以思考一下這個故事的設定背景,如果說人類是慾望的結晶,為達目的可以殘殺,那麼人造人的誕生就是為了平衡這個失序的人類世界而設計出來的,在一場非核的第三次世界大戰結束後,沒有任何國家贏得勝利,最後由奧林帕斯(Olympus)統治戰後的世界,這是個烏托邦也是人類世界最後的一片淨土。

Olympus是由蓋亞(Gaia)這個自主延伸網路系統統治管理的,但為了讓人工智慧Gaia能對Olympus做出合情合法合理的決斷,Gaia必須長時間跟七賢老辯論對話,這七個老人(長老)補足了Gaia情感部分,長時間的辯論很像是哲學對話,也只有透過辯證才能追求到最合理的解答,Gaia和老人們對話的結論會成為Olympus的意識。

琉南‧納茲這個在戰爭中存活下來的女戰士,也是琪麗雅姆博士的女兒,手中掌握著博士遺留下來的Appleseed,博士當初參與了Gaia的建造,父親卡爾基因的一部份,提供給所有的Olympus人造人,為了改進人類的缺陷,所有的人造人都被受到感情抑制,設定為不能繁殖後代,一點都不會憎恨他人也就是不會起爭端,而且必須定期做延長壽命處理,但琪麗雅姆博士也為這些人造人設計Appleseed,一旦釋放了Appleseed,所有人造人都可以擺脫情感的束縛,進化為新人類。

在Olympus的頂端有個d-tank,是Olympus最終的防禦系統,裡面存放著病毒,原本Olympus的正規軍尤倫那斯(Uranus)將軍都認為,只有銷毀Appleseed釋放d-tank,才能完全消滅人造人,這些有缺陷的人造人根本不能跟人類並存,因此積極地發動許多活動,例如截殺琉南‧納茲、破壞第三代人造人工廠及延長壽命處理裝置等等,然而這些活動,全都是七賢老精心策劃下,為的就是希望Gaia能夠認清人類的劣根性,做出解放Appleseed的決策,原來d-tank裡面的病毒,並不會毀滅所有人造人,而是奪取所有人類的繁殖能力,釋放Appleseed與d-tank病毒,就可以讓完美的新人類統治這個世界。

這是七賢老一廂情願的作法,雖然是希望人類世界能夠更完美,但沒有想過擁有了感情的人造人也可能會走上人類競爭的末路,最好的方式,就是發掘人類的善性,解鈴還需繫鈴人,烏蘭諾斯將軍也在最後尋求跟新人類和平共處的方式。

我覺得故事並不單純,說明起來反而覺得有一定的複雜度,設定的背景跟發生的事件也都絲絲入扣,合情合理。科幻故事最困難的在於設定一個合理的未來情境,並在那個情境下,思考可能會發生的事件與問題,我在近一兩個月也嘗試做這種事,這確實不是一件容易的事。其實故事裡面還隱含了立法、行政與軍隊三方權力爭奪的問題,但被這些角色鮮明人物與情節沖淡了。

故事引用的希臘人物:
Gaia:大地女神,緊隨夜之女神出現的神,世界的締造者之一,創造了大地,海洋和天空。
Athena︰智慧女神和女戰神;她是智慧,理智和純潔的化身。
Briareus:三個擁有五十個頭的百臂巨人之一,Ouranos(天)和Gaia(地)的兒子
Uranus︰天之神。Gaia的長子和丈夫,第一任神王。被他兒子推翻。
Hades︰宙斯的兄弟;掌管冥府,同時也是財富之神;有一頂可以隱身的帽子;殘忍,可怕,但很守信。
Olympus:相傳希臘諸神所住的地方就是奧林匹斯山。

Appleseed
Appleseed - 傳統2D動畫與模擬真實之間
蘋果核戰記 dvd介紹
蘋果核戰記電影版 - 2D與3D的完美結合