成为明星程序员的独特秘密|极客原创
當我們在談論軟件開發技巧之前,有一個不得不提的決定軟件開發者是成功還是失敗的獨特秘密:
越理解你正在做的事情,就越能把它做好。
“明星”程序員比一般或者平庸的程序員更透徹地理解了他們正在做的事情。僅此而已。
那些能夠在一天之內掌握一門全新編程語言的高級工程師,和那些在這個行業掙扎十年只為保住飯碗,一直按別人的設計方案編程,還因為自我提升不夠始終無法得到普升的初級開發者之間的區別就在于此。通常它也將糟糕的程序員同優秀的程序員,優秀的程序員同偉大的程序員,偉大程序員同那些通過精湛的技藝建立起幾十億商業帝國的"明星"程序員區分開來。
Linux之父:林納斯·托瓦茲 Linus Torvalds
正如你所看到的,這一點也不復雜,并不是什么難以掌握的技巧,也不是需要你擁有與生俱來的某種特殊天賦或者“把代碼寫好的神奇能力”才能辦到的事。成為杰出的程序員還是糟糕的程序員與個體的自然屬性無關:
想要成為一名杰出的程序員,你所要做的僅僅是完完全全地理解你正在做的事情。
或許有些人會告訴你他們已經掌握了所有的知識,你可以通過觀察他們能否將他所理解的內容應用到實際工作中,來檢測他們的說法正確與否。他們能否構建出一個易于維護并且具有優雅架構的系統?他們是否能比大多數程序員更有效率地解決問題?在被尋求幫助時,他們是否能用淺顯易懂的概念清楚地解釋清楚?如果以上都能做到,那么他們確實是杰出的程序員,并且的確對領域內的知識了如指掌。
C語言和Unix之父:丹尼斯·里奇 Dennis Ritchie
但是,與相信自己“對一切了如指掌”相距甚遠的是,許多程序員(包括我在內)常常感覺自己身處于浩瀚無限的信息海洋里,受困在一場史詩級戰爭中。有太多東西需要知道,以至于哪怕窮極一生致力去學習研究,可能依然只了解90%計算機知識。
這場史詩級戰爭中的神秘武器,擊敗計算機知識的王者之劍,就是對你所學習到的知識的理解。
越是理解所處領域的底層知識,學習高級別的知識就越容易。越是理解當前級別的知識,學習下一個級別的知識就越容易,以此類推總是成立的。如果你自認為對某一門學科內從基礎到高深的知識要點都統統掌握了,那不妨選擇從頭開始溫習一遍,相信你會驚奇地發現在底層還有如此多的東西需要學習。
這聽上去簡單得難以置信,但事實就是如此,成為杰出程序員的必經之路就是保證知識結構完整和完全的理解,從對基礎知識的深刻掌握,到對大多數先進概念的扎實了解都必不可少。
我不想騙你,有時候這條路走起來非常漫長。但它是值得的。在道路的盡頭,你或許會發現自己突然成長為了一位了不起的高級工程師,人人都會來向你征求意見。或者你會成為被所有同行欽佩的無往不利的神奇程序員。又或者你會造就一款價值數百萬,并且取得難以置信的成功的“明星”級產品,誰知道呢?
微信之父:張小龍
我無法告訴你應該做些什么或者應該成為什么樣的人。我只能將一些我發現的有效且價值的信息分享給你。應該怎么做依然取決于你自己。
我們下會見!
(PS:前天的抽獎,中午會在朋友圈公布結果,沒有加我微信的,可以加我微信:fr3533108,交個朋友)
- END -
看完一鍵三連在看,轉發,點贊
是對文章最大的贊賞,極客重生感謝你
推薦閱讀
硬核致敬Linux !30歲生日快樂!
后端技術趨勢指南|如何選擇自己的技術方向
我看不懂,但我大受震撼!
總結
以上是生活随笔為你收集整理的成为明星程序员的独特秘密|极客原创的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大厂「offer 收割机」修炼记
- 下一篇: 深入理解Linux内核之主调度器