軟體工程師應該多寫文章
在小學裡,有所謂的“數學孩子”、“語文孩子”。話說,各位小的時候,是否也曾因為學科成績而被分到某一個陣營裡?
我就曾經是個數學孩子,所以後來報了電腦科學專業,決定成為一名軟體工程師。但是在此過程中,“數學孩子”/“英語孩子”的稱號卻並沒有消失,甚至於這條溝壑愈加明顯了。因此,現在的工程師普遍畏懼寫文章。而那些會寫文章的作家往往看到程式碼就立馬暈菜。
真心可惜!沒錯,軟體工程師要會寫程式碼,但是也應該去寫點文章。
軟體工程師也應該去寫文章的原因是因為寫作能促進很多在程式設計中同樣需要使用的技能——核心技能都是清晰思考的能力。最好的軟體工程師也是偉大的作家,因為他們的散文會像他們的程式碼一樣邏輯分明、優雅整潔。
程式碼和文章有很多共通之處。一開始都是空白的,然後按照自己的想法一點一點寫出來,最後出來一個獨立的產品。產品由一系列邏輯語句構成,並被捆綁成一個個模組化單元——無論是軟體功能還是文章段落皆是如此。好的程式碼就像優美的文章一樣,簡潔明瞭,富有表現力。而差的程式碼就是在浪費CPU週期,正如亂七八糟的文章純粹是浪費腦力資源一樣。一般說來,文章的大綱就是軟體的架構。
越是臨近截止期限,工程師會同作家一樣感覺焦躁不安。就像文章總是可以精益求精一樣,我們永遠不能說我們的軟體完全“done”。這也使得工程師需要更多的時間用於增加功能和重構模組。工程師們常常需要擔心自己沒有做到最好。
軟體工程師之所以應該試著去寫作,是因為我們現在的專案越來越需要合作。開源專案會邀請世界各地人員的參與,產品開發則需要很多工程師的通力協作。(例如,谷歌地圖擁有1100名全職員工!)良好的書面表達技能,無論是用於寫GitHub評論,還是程式碼審查,亦或是寫技術文件——清晰、簡潔的溝通總是能夠有助於類似這些專案的前進發展。
即使是一些毋需溝通交流的專案,寫點東西大多也能促進學習和討論交流。要知道多虧其他工程師寫的教程,使得我們沒有必要非去學習那些令人頭大的RFC規範和技術手冊。關於技術討論的文章,只有寫得特別好才能發表到《Hacker News》和tweet上,剩下的就會引導到部落格文章上。
再說說寫這個部落格文章,也是需要投入時間的。正如好文章需要花時間去寫一樣,先是初稿,再通過多次修改來提高質量。
軟體工程師應該寫文章,因為他們實際上可能是喜歡寫作的。曾經的我們不停地被灌輸“我們在這個文科的領域很菜”的思想,所以我們大多可能從來沒有想過我們可能還具備了寫作這個潛力,這會不會讓你突然充滿興趣、幹勁十足呢?
並且,寫作還會對你的職業規劃產生巨大的正面影響。管理方面的部落格文章可以幫助經理鼓舞他們的團隊,推動其工作積極性。程式設計方面的教程可以點燃學生關於電腦科學興趣的火花。有些關於職業建議的文章甚至可以激勵畢業生走上一條全新的職業道路。
即使沒有人閱讀你的文章,也沒有關係,寫作這個過程也能讓你受益匪淺。它能訓練你清晰闡述某個主題的能力,而且將腦中一些雜亂無章的想法一步步變成具體言辭的過程也非常有價值。
寫作同樣會影響工程師編寫軟體的激情,將此與有用的軟體技能相結合,通力協作,然後你會突然發現寫作已然成為一個非常有價值的活動。
即使是對於那些所謂的“數學孩子”。
寫作提供了同樣的感覺的影響,激勵工程師編寫軟體。與此相結合如何促進技能在軟體工程中非常有用,便於協作,然後突然寫似乎是一個有價值的活動。
即使是“數學的孩子”。
相關文章
- 程式設計師/軟體工程師應該會寫作程式設計師軟體工程工程師
- 為什麼軟體工程師應該養成寫作的習慣?軟體工程工程師
- 軟體工程師應該知道的9件事軟體工程工程師
- 為什麼軟體工程師應該學習哲學?軟體工程工程師
- 新手應該怎麼寫 SwiftSwift
- 作為軟體工程師你應該知道的100件事 - Harish軟體工程工程師
- 每個軟體工程師都應該嘗試的5件事軟體工程工程師
- 每個軟體工程師都應該嘗試的5件事情軟體工程工程師
- 一篇程式設計師應該看下的文章程式設計師
- 寫一篇好的技術文章有多難?
- MySQL備份指令碼,應該這麼寫MySql指令碼
- 寫程式碼之前應該做的幾件事
- Git Commit Message 應該怎麼寫?GitMIT
- 程式設計師應該每天寫程式碼程式設計師
- 現在寫 PHP,你應該知道這些PHP
- 教師職稱論文應該怎麼寫?
- markdown裡的微積分中dt應該這樣寫
- 架構師應該多維度多視角地思考 - Gregor架構Go
- 寫給明天的軟體工程師——感悟篇軟體工程工程師
- Qt學習之路文章列表(該系列文章為轉載)QT
- 一對多分頁的SQL到底應該怎麼寫?SQL
- 當代前端應該怎麼寫這個hello world?前端
- 網站改版SEO建議方案應該怎麼寫?網站
- 商城網站測試報告應該怎麼寫網站測試報告
- 用SQL Server 資料庫應該如何寫 ?? 謝謝!SQLServer資料庫
- hack:增強圖靈社群文章寫作表單的指令碼[多圖]圖靈指令碼
- 寫給小白的 Nginx 文章Nginx
- MySQL 創始人:寫程式碼比打遊戲還爽,程式設計師應該多泡開源社群MySql遊戲程式設計師
- 自媒體文章為何沒有推薦量?應該怎麼解決?
- 為什麼程式設計師應該少寫程式碼程式設計師
- 【Go】那麼多數值型別,應該選哪個?Go型別
- 作為一個軟體工程師,在接下來的 5-10 年內應該掌握的技術軟體工程工程師
- 寫作是軟體工程師重要的超能 - Gergely Orosz軟體工程工程師ROS
- 多個不同的app應用間應該如何進行訊息推送呢?APP
- 如何實現 Markdown 撰寫文章
- 為什麼寫技術文章?
- 我們應該如何編寫高質量的前端程式碼前端
- 作為軟體工程師,該如何處理“前任”留下的程式碼?軟體工程工程師