寫Blog與寫Code

Gordon Lau

Gordon Lau

2019-01-07

在外國,程式設計師在課餘時間寫Blog是很平常的一回事,大家在找尋技術問題的解決方法時,除了全知的Stack Overflow之外, 很多時候閱讀的就是一些其他高手所撰寫的技術文章,博客平台如Medium等也應運而生。相較之下,香港甚少有聽聞程式設計師有寫博客的習慣,大概是由於 工作繁忙,抽身不暇。筆者此前也只是曾經在一些Facebook專頁寫過一些技術文,現在才算上是恆常出文。短短數月中,已感受到為何外國程式設計師如此樂 此不疲,即使要抽出私人時間,也會寫Blog出文。

codinghorror.png

Source:https://ds6br8f5qp1u2.cloudfront.net/blog/wp-content/uploads/2015/03/9_Coding-Horror-blog-for-developers.png?x88475

寫Blog有助溫故知新

程式設計變化迅速,新技術新框架時時出現。大概大家都試過想學習一種新框架,看着詳盡的文檔,卻不知如何入手。原因很簡單,在於往往大家學習的時 候,通常沒有特定要達成的目標,因此造成文檔讀了很多,卻不知如何開始。但如果你將「學習Rust程式語言」這個目標,改為「學習Rust程式語言,並寫一 篇博客向大眾解釋使用Rust的好處」,這樣目標就清晰明確得多,因為要完成一篇這樣的文章,你起碼要完成以下幾個步驟:

  1. 先自己學習Rust程式語言
  2. 親自以Rust嘗試作開發
  3. 比較Rust及其他程式語言之不同之處
  4. 用自己的文字表達2及3的發現
  5. 汲取別人的回饋,改進文章

rust-doc.png

比起漫無目的學習,以達成「寫成一篇文章為目標」所需的功夫明顯更多,情況就如中學時中英文老師要大家寫讀書報告一樣(不過筆者那時也很討厭就是了) ,要寫成一篇文章,遠比只讀不寫做得更多,大腦經過更多的刺激,學習也自然更有效。

除了學習新的事物,重讀自己的文章也可以重溫一些自己所研究的課題,很多博客一開頭都是寫給自己作參考之用:解決奇怪Amazon Cloudfront的問題浪 費了幾小時?最好的方法莫過於寫一篇文章,為未來的自己寫好最好的參考文件。

寫Blog鍛煉寫作能力

對很多程式設計師來講,寫作是一件麻煩的事情,一個專案的文檔(documentation)總是無人問津,因為大家都一個共識:寫Code不難,要寫一篇文章解釋 自己的那段Code卻很難。 箇中原因,在於大多數人的寫作肌肉早已退化,在完成學校教育後,由於荒廢多時,已甚少提筆寫文。因此要寫文檔解釋專案功能 時,大家才會避之則吉,唯恐自己要當上此種苦差。

寫博客恰恰就可以提供一個平台,培養自己的寫作習慣,强化寫作肌肉。解釋技術、概今時所需的表達能力,也比以前中文作文時要求更細緻,不只務需準 確,可能的話,還要生動有趣。原理跟旅遊愛好者常寫遊記一樣,寫得愈多,寫得愈長,自然寫得愈精彩。

當然,要鍛煉好自己的寫作能力,除了多寫,多讀其他人的技術文章也很重要,光以中文博客為例,兩岸三地之中也有不少好的博客可供學習,大家想多讀中 文技術文章的話,也可以去其他中文的技術網站參考一下。

寫Blog造就與其他人交流

寫文章也是一個雙向的過程,寫好了一篇文章,分享給同事朋友閱讀,也許會有一些不同的見解;在Medium平台或者論壇上分享,更是向公眾發表。 因此會有許多意想不同旳回饋,也就能聆聽不同意見。也由於是博客的關係,所得到的意見往往遠比現實世界所聽到的尖銳得多,也因此能聽到更多「真心 話」,也使自己學到要改進的地方。

博客的後續影響力也相當强大:假如你在一個Conference做了一個簡報,少則有幾十受眾,多則有數百人,但寫好一篇文章,在互聯網上就會一直存在,在Google上就能搜尋得到,造福未來對此課題感興趣的人,都能理解你的想法,這算是一種筆談呢。以前要寫文章,可能要投稿至報章雜誌,今日有 互聯網的方便,又怎可棄之不用?

excel-syndrome-search.png

寫Blog有助事業成功

與大家普遍相信的相反,寫Blog並不是一樣「搵唔到食」的工作,於香港也有一些全職寫手(雖然全職技術寫手較少)。就算你本身是一個軟件工程師,寫文章 對你事業也有幫助。想像一下,你現在面試一個軟件工程師,他除了有軟件專案經驗之外,還有恆常寫技術文章的習慣,代表他不但有編程能力,也有良好的 溝通能力,還有不斷學習的熱誠,這不正正就是大家心目中理想的軟件工程師人選嗎?

更進一步的是,已寫完的文章數量會與日俱增,就如放在網上一個閃亮的CV,比Linkedin的endorse或recommendation更有說服力呢。功利一點, Google今日的web crawlers更加只是以content為重,其他SEO技巧的小修小補早已無傷大雅,因此今時今日連吸引網站人流也要活用好文章。

如何開始?

在外國,有不少廣受歡迎的技術博客,有一個著名的博客叫Coding Horror,作者名為Jeff Atwood,曾經寫過一篇文章,解釋如何成為一個好博客寫手。 文中 其中一句,實在很有意思,

When people ask me for advice on blogging, I always respond with yet another form of the same advice: pick a schedule you can live with, and stick to it. Until you do that, none of the other advice I could give you will matter.

確實,寫博客需要持之以恆,如果不是恆常出文,人類的惰性很快會使你荒廢。要開始體會寫博客的好處,唯一辦法就是坐言起行,要求自己定時出 文。就算一開始沒有好文筆、好題材,多寫多讀,也自然會漸漸改善。也許大家不寫則已,一寫就上癮!

Comments

Read More

從「同朕check下」談中文科技詞彙

Web Technology為何征服世界?

平常人都能掌握的Programming 原則