技術部落格,technical Blog,中國叫做技術博客,通常是由工程師寫的分享技術的部落格。經營部落格理由有很多種,包括紀錄所學,行銷自己等等。可是寫多就難免會遇到一個問題,如果我講的東西明天過後就沒人用了怎麼辦,東西改版之後後又沒餘力重寫。
1. 資料好像過期了就沒什麼價值#
既然資料遲早都會過時,為什麼還要寫技術部落格?
資料過時的意思是指,程式的運作方式變了,導致文章介紹的內容失效。這是個很實際的問題呀,只要東西一更新,你的文章馬上變成廢文,那麼投入的努力又是為了什麼呢?
看一下Hugo建置網站的統計資料,在過去三年的光陰我寫了超過1000篇文章,好像太少了。
說實話,雖然我會定期將部份的「重要」文章翻新,以符合上游變化,例如「Ubuntu安裝Nvidia CUDA」的指令,但是很多不常用的軟體,我就沒有心力照顧。
很多我寫的Linux技術文章,在未來五年內八成就會失效,可能指令變了,套件換了,名字改了,東西變了,就會導致文章裡面討論的技術過期。
教學類的文章,甚至可能誤導讀者,使用deprecated的技術,執行錯誤的指令,最後得到失敗的結果。
那麼,有這種未來就會失效的壓力,為什麼還要寫技術部落格?
為何還要鉅細靡遺的講解自己的配置過程,而非叫讀者自行看文件,反正你再怎麼更新也不會比上游勤勞?
除開筆記性質的文章,部落格還能給人帶來什麼?
2. 技術部落格助人助己#
因為以心電信,See how the world goes round. You’ve got to help yourself. See how the world goes round. Then you’ll help someone else.
參考Hiraku Dev的見解:個人部落格的第一讀者應該是自己。
不要擔心寫的太菜沒人看,只有當你真正用自己的文筆寫下已知的知識的時候,那時候能夠確認自己的認知沒有錯誤。美國科學家費米好像說過,如果你沒辦法清楚跟人解釋你的專業知識,那就不算是真正學會了。就算那是行業內眾所皆知的知識也好,把筆記經過梳理整理後,呈現出有條有理的結構,那在世界上總有一個有價值的服務對象,就是你自己。然後別人看到之後覺得有幫助,就算是過路客也算是行善之舉,若能得到留言回應那就是謝天謝地。
人是自在的存有,他人即地獄,面對荒謬的世界,唯有把自己放在優位,才不會為了迎合他人而迷失初衷,尤其是在經營自己的部落格的時候。就算上游更新那又怎樣,你有在文章中特別註明撰文當下的時間,那也就夠了,剩下的東西就讓別人去煩惱吧。總是覺得有學不完的東西,朝不保夕的焦慮思維,不如接受這世界就是變化著的,能做的就是盡力顧好當下。
若有餘力,也應當反思,你究竟是要專注在技術討論而已,還是希望在教人一些東西的時候,提供一些額外的價值。呼應自由軟體的理念,如果要更多人用,有人負責偉大的程式碼開發工作,就有必須承擔傳播的任務。把你的血與淚獻出來,成就他人新生的靈肉。
老實說,我不喜歡寫太枝微末節的東西( 肯定不是邏輯太差導致推導程式碼邏輯會想睡覺),比如Wayland下遇到某個瀏覽器小bug,能用暫時的workaround繞過,請執行以下指令芸芸,這個我大部分時間都認為不值得開一篇寫,因為這類東西,很高機率幾個月後上游就會修復了。況且,如果這個bug很重要,則該寫在Github issue公開討論才是。
除了開發者會在乎的事情,你其他的客群是誰?我要如何讓我的文章變成不要只是單純講怎麼安裝軟體,那太多人寫一樣的東西了。是否還有很多個人操作經驗可以分享?就算是試錯的難堪經驗,經過巧妙的設計安排後,也能成為個人文章特色的加分項。有些人認為在快速演進的網路平台,沒人會在乎你怎麼想,否定個人的情緒,快點講重點就好了,這並不完全正確,因為我剛好就不喜歡太正式的部落格行文,那就失去了個人興趣網站的特色了!如果文章總是制式化,千篇一律的開頭,虛情假意的打招呼,那就失去了個人網站的特色,搞得像在業配了。在私人地盤應當盡力表現出自己的特色。
最後要講的就是拿捏技術與經驗的分寸,技術文嘛,當然還是要技術佔過半版面,可是個人經驗同樣不能少。要如何避免文章變成看到什麼就都寫下來的流水帳?建議看一些學術寫作(academic writing)的書籍,還有研究筆記術,並研究SEO的關鍵字怎麼下法。如此一來你就不會讓文章充斥太多雜訊了,並且能夠體會到系統性梳理知識的美好。學著技巧性的講完部份重點,再適時插入一些個人特色的文字,佈置文章節奏,吸引人看到最後。這需要長期經驗積累,而最好的方法就是開始寫。
記住,文章要先自己覺得60分滿意才可以po出來,不必追求完美主義。為何不是100分滿意度呢?對於一些沒自信的人,盡善盡美的追求會害了他,導致無限拖延症,倒不如寫出來後再慢慢修改。你又不是在寫博士論文,錯了再改就好嘛!
3. 讓文章不會被時代拋棄的務實作法#
我一直想做的事情是永恆的部落格,我希望文章的有效性要有10年以上。怎麼可能嗎!我研究的又不是10年不變的RHEL系統。
比較務實的作法是在技術類文章標注參考來源,像是論文索引一樣明確標示參考了哪些文章,並最先援引權威資料(如Wiki、Documentation、Git Repo),其次才是個人部落格(如其他人的配置過程,要適時篩掉內容太水的內容農場)。並且在寫文章的時候,提醒讀者「看一下文章發表時間」。以及明確註明操作當下的時間、系統套件版本等等。
這樣即使我的資料過時,讀者也能尋著前人的蹤跡,找到源頭,自行更新資訊。
若有餘力更新舊文,在加入新資訊後,應當把文章日期一併更新到撰文當下,這樣人們才不會因為看到文章日期過舊而退卻。這只是我的個人作法,SEO影響不討論。
還有一種累死自己的作法,那就是用自己寫個程式監視上游變更,接收訊息之後就會提醒要更新哪篇文章。我是不會這樣幹。畢竟我經營的不是無情的Wiki情報站,上游改什麼我就改什麼,當下沒興趣的東西我就不會去煩惱。