09 August 2006

又到了一年一度大拜拜的時候啦!今年的第一天,別的先不說了,最後一場的 Effective Java Reloaded 真是太讓我感動了,就差沒痛哭流涕而已。大師就是大師,每一個條例都是道人所未道。那個 Builder pattern 用 inner class 用的真是漂亮啊!generic 教了大家 7 點 best practice,什麼時候該用 wildcard、還有利用 private static typped helper method,解決 wildcard 不能用 collection.add() 的問題 (這招真是太神了!)... 等等。收獲真是多,參加了幾年的 JavaTwo,總算是感覺到最新的技術有跟上世界的腳步,下次務必要再請大師來啊!(但如果是 Bruce Tate 就不必了)

其他的場次我選的跟大部份人的一樣,侯老師和葉秉哲兄的。Undo和Redo 對 desktop app 的開發者來說大概很熟悉吧,像我這種寫慣 web server side 的人到是沒什麼機會碰到 (資料庫/JMS 要怎麼做 undo redo ?)。侯老師很清楚的講解了 jdk 內建的 Framework 的運作流程,但難就難在 UndoableEdit 要怎麼寫。未來的 web app 會越來越趨向 desktop 化,undo/redo 這個技術又會開始重要起來 (像 gmail 就可以做 undo),所以上這門課還算蠻有收獲的,下次實做時心中就有個底了。

葉兄的求婚... 呃,是 PHP 在 resin 下跑,看了葉兄的 present 後,我更加相信用 純 java 比 PHP+java 好了。PHP+java 現在還是太跛腳,唯一的好處是如果遇上要整合舊的 php 和 舊的 java 時,resin 這個 solution 就是大大的救星。如果說一個 team 要混搭 php 寫 presentation, java 寫後端來開發新專案,我想現階段真的是缺點遠大於優點(比較慢,問題又多)。至於最後的 php RAD... 如果要我選的話,我還是會選 Ruby on Rails,而不是選 php RAD。就如葉兄提到的 Top xxx php mistake: PHP is not object oriented...。沒有物件的語言我實在是寫不下去 -_-。而PHP 最大的市場並不是程式設計師,那些 end user 或是 web designer 才是用最多的。這些人可不會去寫什麼 MVC 這種東東,寫寫 function 就差不多了。所以 PHP Rad 對上吸引不了程式設計師,對下又太難了點,個人是不大看好未來的發展啦...

另一個則是有趣的現象,這個也常發生在我身上,就是講者在講一個 slice 時,常會事先說一些他背後準備這些資料的動機,或是準備的過程之類的說明。我覺得這是一件很奇特的事,比方說,如果我們看一齣戲/電影好了,戲就從頭演到尾,誰也不會演到哭的表情時,還對這個悲傷的情感來源/演戲技巧,用旁白或字幕來 "說明"。整齣戲演完了,好的戲自然會讓人有所體會,不需解釋。通常解釋都是留到幕後花絮之類的。同理,對講者來說,目的是讓學員能夠 "順利的" 吸收講者的經驗,滿載而歸。如果講者斷斷續續的 "講解" 為何要準備這一段,這些資訊對聽者其實一點幫助也沒有,而且容易打斷思緒。即然選了這一段來說自然有你背後的道理,聽著如果覺得很突兀,吸收不良,那是編排選稿的問題,用在多的說明也是無用 (就好像是悲傷的表情演不好,要靠旁白來解釋... 這可行不通)。這個現象我之前在自個兒身上有觀察到,有趣的是好像不少人也是這樣,我猜這個也許是這個產業的特徵吧,寫程式的人總是腦筋塞滿了邏輯,而且條條相理,密不可分。這種思考方式到了講台上,自己準備這份投影片的邏輯和要帶給聽眾資訊的邏輯不知不覺的就混在一起,一口氣講了出來,所以就出現了這種特別的講演方式。


回響

可以用 Tag <I>、<B>,程式碼請用 <PRE>