第一手知識——切身體驗

侯伯薇發表於2013-11-13

這篇文章是我作為主編為《架構師》電子刊2013年11期所寫的卷首語,這一期的主題是“測試的方方面面”,如果你想閱讀這本電子雜誌,可以到InfoQ中文站上下載閱讀,地址是http://www.infoq.com/cn/minibooks/architect-nov-10-2013

另外,我還開通了微信公眾賬號 快樂的程式設計師(happyprogrammer),在其中我會和大家分享自己的想法,還有一些自己覺得比較有意義的知識和經驗,歡迎大家關注。

----------------------

InfoQ中文站的QCon大會已經為業界的朋友所熟知,三天的日程中,各種演講乾貨之多,場面之精彩已經讓越來越多的人願意加入到這個大平臺中來交流和分享。而大家不知道的是,為了讓各位講師能夠在現場有更出色的表現,InfoQ從今年的QCon北京開始,都會在會前一個月左右為各位講師安排一場特殊的培訓——QCon講師訓練營。

10月12日,我也有幸作為InfoQ的編輯參加了訓練營,聆聽了楊天穎老師一天的課程,收穫非常大。而在10月26日大連本地的QClub活動上,我在演講中著重實踐了楊老師教授的各種技能,包括:手勢、J-Cutting的場景轉換、放慢語速、把QA環節放在總結之前等等,得到的效果非常不錯。

經過活動上的演講,非常重要的一點就是,我把訓練營上獲得的知識真正消化吸收了一部分,如果說經過別人總結歸納然後講述出來的知識是第二手的知識,那麼在實踐中通過自己的切身體驗所獲得的知識絕對是第一手的知識,而這種知識也因為其新鮮的程度以及和自己密切相關,所以更容易讓我牢記。

在演講的過程中如此,在作為程式設計師編寫各種各樣程式的過程中也是一樣。 曾經在公司面試新員工的時候,非常注重的一點就是——是否做過真實的專案,相信很多公司中的面試官也是一樣。僅僅學習並掌握了書本上的內容是不夠的,“紙上學來終覺淺,絕知此事要躬行”,只有在切實利用學到的知識解決了實際的問題之後,即獲得了第一手的知識之後,才能夠對其有深入的瞭解,從而可以在以後的工作中更好地應用。這也許就是大家所說的經驗吧。

在網路上經常會有各種各樣的爭論,有時是使用各種語言的程式設計師爭論到底哪種語言才最好、才是王道,有時是開發人員和測試人員相互攻擊,都認為對方的工作不重要,只有自己的工作才是重中之重。其實,往往爭論的同學對於另一方的知識只是有個簡單的瞭解,掌握的大多是二手的知識,即便有少許一手知識,通常也是淺嘗輒止。正因為沒有切身體驗,才會因為不瞭解真實的情況而去爭論。如果一名程式設計師掌握了多種語言、框架、工具,那麼就不會爭論孰優孰劣的問題,而是會根據具體的情況選擇最為合適的工具來解決問題;如果一個人既做過開發,也做過測試工作,那麼就不會厚此薄彼,因為他很清楚,兩種角色都是團隊的組成元素,都有其重要的作用,缺一不可。

對於敏捷的方法也同樣有很多質疑,不少人總是覺得只有傳統的軟體工程方法才能夠真正保證專案的成功。僅僅比較一下二者的不同就妄下斷言。其實,想要知道敏捷的方法是否適合自己的專案,是否能夠解決團隊管理以及專案開發中的問題,唯一的方法就是“just do it!”嘗試過一次,無論成功與失敗,都會獲得第一手的知識,成功的話,可以作為經驗來推廣,在以後的專案中進一步應用和提升;失敗的話,也明白到底是什麼地方出現了問題,以後可以儘量去避免類似情況的發生。這些都要比單純的懷疑和無意義的爭論強得多。

第一手的知識之所以重要,是因為它只能存在於一個人的頭腦之中,體現在一個人的行為之中,而不是簡簡單單通過在網上Google一下就能夠找到的。一個人只有掌握了足夠的第一手知識,才能夠不斷提升,體現出與其他人的不同,才能夠達到傳說中的高手境界。 

所以,程式設計師朋友們,讓我們為了掌握更多的第一手知識而努力吧!

 

相關文章