回給署名「忠實讀者」的朋友第二封信

摘要:回給署名「忠實讀者」的朋友第二封信

 親愛的忠實讀者,看到您洋洋灑灑寫了近2000字的內容,可以想見,您的內心有很多的感觸與想法,或許,還有那麼一點點沮喪。您如此願意傾訴,當然,我也願意傾聽,也更願意與您分享身在此行的心情點滴。 

聽到您說「時夜深人靜的時候,突然好想去買個滷味什麼的,因為在學習的時候,真覺的很辛苦….,這樣的心境,不只我非常能理解,也相信許多資訊人都會深感於我心有慼慼焉。終日追逐新技術,像陀螺一樣不停地轉,是許多資訊人心中的痛。技術也許還沒學到多少,頭髮可能已經白了一半。自己辛苦也就算了,身邊的人卻很難體諒,他們總是不解,為什麼麼老是窩在電腦前呢?說真的,沒人希望如此。 

就拿我來說,過去這麼多年來,即使是大年夜,寫書的工作也不曾停止,這種慘烈的狀況,一直到我結婚生子之後才稍微緩和。其實不論做什麼,要想成功,必定要忍受寂寞與孤獨,抗壓力更是重要。前幾天跟一位老朋友吃飯,他對我說:「章立民,你真是不容易,這把年紀了還在寫程式,還在研究新技術」。聽到這樣的話,您說我是該哭還是該笑呢?哈,其實也沒那麼嚴重啦,畢竟一切都是自己的選擇,重點是,對於自己的工作是否有熱情,這樣的工作是不是自己的最愛,未來的路是否有完整的規劃,自己又是否真的全心投入呢? 

對我而言,已經把學習新技術看成是呼吸空氣那麼的自然,就因為有了這樣的心理建設,自然能保持快樂的學習態度,成效也就不會太差。當然,我也是人,也會疲憊,也會不爽,也會想逃避,這也是過去這麼多年不講研討會的主要原因。或許,我已經逃避了很長的一段時間呢。 

話說回來,對於業界的開發人員而言,一方面要學習新知,一方面又要完成手邊的工作,很難真正一步一步把技術學得清楚,學得徹底。就是因為趕鴨子上架,造成技術人員常常有漫步在雲端的感覺。但不論如何,學習還是必須按部就班,一點一滴累積,或許工具會變、技術會更新,然而長期訓練下來的思考邏輯還是能夠讓您更容易面對各種變革。記得我的老師曾經告訴我一句話:「騎腳踏車時,腳要快,心要慢」。保持平靜且不急躁的心情來學習與工作,才不會白走冤枉路,才會有效率。我想這樣的態度,正呼應您在來信中所提到的一段話:「如果在書中有看不懂得時候,記得在清醒時,重複跟著章節練習,很快就會有豁然開朗的感覺」。 

另外,您還提到ASP.NET AJAX經典範例100一書的難度問題。我想,此書的重點還是在ASP.NET AJAX本身,相關的論述與範例解說,也是以此為範圍。您說的沒錯,不少範例是以ASP.NET 2.0為主體來注入非同步回傳功能,並且儘量用不同的方式來運用2.0的控制項,然而限於篇幅,我們很難再花太多功夫去解釋ASP.NET 2.0的技巧,畢竟單單如此,本書已經近千頁。如果還有任何困惑之處,都歡迎您來信詢問。 

最 後,我要說的是,技術的躍進像一波波不斷來襲的大浪。身處速度快、變化大的資訊技術洪流,的確必須隨時準備好面對更快、更好、更強的明日世界。但是,『技 術的本質是什麼?』、『學習的瓶頸該如何突破?』,若只是一味盲目亂衝,而不適時讓自己緩下來思考,很容易被洪流吞噬。請保持前進的動力,讓我們一起努 力。與您共勉之。 

章立民 2007/6/7  

本人見到署名為 "忠實讀者" 的朋友在 Blog 上留了以下的留言,讓我有感而發,寫下本文,以表感謝:

先 生您好,拜讀您的著作一段時間,慚愧的很,還沒能完全讀透您的書,很感謝您上次特別回覆我的留言,坦白說以我現在的功力,還不足能跟您華山論劍,但我還是 能夠在背地默默支持您的著作,這一陣子一有空我就翻書,並儘量每個例子都加以實際執行,光前幾章我就發現,您所設計的範例,絕對是下了一番心血,不只為了 傳授AJAX的一些基礎跟應用,也做了很多2.0控制項較進階的作法,且都會儘量用不同的方式,來教導我們如何運用和瞭解2.0的控制項用法,其實說實在的,因為當初接觸ASP.NET2.0時,所學的,大部分都是直接拖曳控制項的用法,例如GridViewSqlDataSource等,鮮少且不知如何對其做CODE方式處理,當我在看您的範例時,著實讓我去查了很多相關控制項的方法、屬性、事件等的使用,雖然很辛苦,但是卻在這之中也解開很多之前的疑惑,因為寫程式,還是喜歡用CODE的方式來處理,想想如果大家都可以拉一拉控制項就可以成為一名程式設計師,這樣好像挺恐怖的! 

想一想自己寫了這麼多年的程式,從ASP開始,雖然我還蠻習慣那種雜亂無章的寫法,因為自己天真以為,這樣的程式,鐵定別人也很難看的懂,這真是個不成材的想法,也讓自己程式的功力受到侷限,不過也感謝ASP.NET1.0開始,導入了正確的撰寫方式,如今才不過幾年2.0的出現,雖說一開始我還很排斥學習,總覺得網頁的呈現在於如何正確Render出瀏覽器看的懂得語言,也就是JavaScrip+html+css等,因此想說萬一不行,自己想辦法在網頁裡偷塞一些東西來達到顯示的目的,不是也一樣,後來才發現自己很膚淺,因為當第一次翻開2.0,只覺得多了一些控制項罷了,而且自己無知的認為微軟又出來騙錢,直到今年年初左右,因為找工作時,才發現很多人推崇2.0,因此才不在鐵齒開始鑽研,雖然當第一次接觸時,自己真的對於資料庫可以如此簡易的透過控制項呼叫來使用,的確讓我感到很驚訝,可是當自己開始改用他之後,卻開始發現很多的問題,很多的時候要取值,或處理控制項等都需要用FINDCONTROL來來去去,而且新增了很多的事件,因為不熟悉,反而覺得不是那麼好用,經常都有被打敗的感覺,因為有時要在GridView等控制項中做一些簡單處理(例如改變某一欄、或做一些其他的變化),都讓我快要把電腦給砸了,而經常性都懷疑自己,寫了這麼久的程式,為何還是覺得困難重重,如今AJAX如此的風行,看似簡單的技術,其實背後包含的卻是更廣的技術,對於我而言,我喜歡真正從基礎瞭解,引用對我來說,總會覺得不夠,因為如果要靠程式吃飯,那能這麼容易。 

看 過您的範例之後,其實很多的部分還是懵懵懂懂,每往後面讀,就發現整個網頁程式架構已經可以廣泛到自己無法想像的地步,網頁程式師,以後連畫面都要自己包 了,真不知是好還是壞,更不談那些多出來的控制項,因為很多都是為了不讓程式設計師重複造輪子而產生,可是自己又常會在無法深得精髓的情況下,無法順暢的 駕馭它,好比有打狗棒卻不會棒法,還有讓我驚嘆的是JavaScrip也可以有OOP的靈魂,但是我想這也許會有很多人會像我,如果對於JavaScript不是那麼熟的人,將會遇到的問題還會蠻多的,其實我真的想說,先生您的著作,應該算是比較適合進階一點的讀者來閱讀(這是個人看法,不知對不對,若有誤解請見諒),對於初學者真的會那麼點的艱澀,不過這也可以顯示一件事,就是作者本身的功力,而我目前也只能更認真的鑽研,望勤能補拙,也深盼有一天能有機會更靠近先生您的技術,並且有所感慨,現在的技術真是日新月異,有時夜深人靜的時候,突然好想去賣個滷味什麼的,因為在學習的時候,真覺的很辛苦,總感別人寫東西引用起來真的很快很好用,可是自己卻貪心想多知道一些核心的技術問題。 

程 式設計師永遠有個夢想,希望自己有一天可以有個驚人的作品,但是花了幾年,仍然在別人的掌控之下(技術還沒熟又出新的),不過還好自己有著對程式的熱情與 一份執著,也許是因為這樣,才會讓自己雖處於挫折中,卻不放棄。對不起!寫了很多自己的感言,但是重點是,您的這本書真是本很好的進階學習的書,章節的安 排循序漸進,釐清了我很多的觀念,順便提一下我的心得,如果在書中有看不懂得時候,記得在清醒時,重複跟著章節練習,很快就會有豁然開朗的感覺,程式的世 界真是『學無止盡』,但萬法歸一,沒有捷徑,唯有一步一步走,在這裡我還是跟我當初買書時候的心情一樣,感謝章大哥為大家付出的心力!

由衷感佩!

並祝
創作大賣
您的忠實讀者  敬上

2007/05/27