你可以 CRUD,但你不是 CRUD 程序員!


什么是務實

務實程序員他們總是在面臨問題時,透過問題看到本質,從具體的場景出發,從大局着想,了解整個問題的來龍去脈,他們會對自己的行為負責,在項目面臨問題時,他們不會撒手不管或者任由風險一步步擴大直至無法維護。

大多數人都不是務實的程序員,因為成為務實的程序員並不滿足 短期的利益,需要長期的打磨和持續不斷的學習、思考反思。大多數人不是務實的程序員的原因只有一個:惰性使然

程序員是有戾氣的,許多人向我抱怨

  • 工作很久了,年齡也比較大了,感覺工作這些年以來在技術方向上沒什么提升

對這些人我有話說:沒有及時反思,可能也是由於工作一直很忙,沒有停下來靜心思考。因為我相信任何有時間思考的程序員,都不會有這種想法。善於反思自己你會及時調整最近的狀態,系統化的學習,提高自己的核心競爭力,讓自己成為公司不可輕易替代的人才。

  • 整天 CRUD,項目技術棧用的比較老舊,想要接觸新項目,想要去互聯網

對這些人我有話說:整天 CRUD 不是你找理由的根本!CRUD 的業余時間完全有時間提升自己!我也是 CRUD,但我不是一個 CRUD 程序員!千萬不要給自己扣各種 CRUD 的帽子。項目技術棧用的比較老舊,我想說,計算機世界發展了 60 多年到現在,仍然只能識別 0 和 1 ,要專注於不變的根本。如果你學完操作系統,你就知道軟件最終離不開操作系統,你就知道管程是怎么回事,操作系統實現不同調度算法的抉擇時什么。我曾經說我喜歡技術,想要接觸新的技術棧,當我被問及你知道哪些 hibernate 思想到現在仍然流行,mybatis 哪些思想仍然很老舊的時候,你就會發現,技術的新潮只是一時的,沒有永遠不過時的技術!我聽很多前輩講起,在零幾年的時候誰說自己進了互聯網那完全是等着被人嘲笑的!為什么互聯網現在流行?因為它符合我們大眾的訴求!無現金支付,工作之余的放松,餓了就不想自己去買飯,實體購物又麻煩而且還要化解和各種店員的尷尬!!!但是互聯網是無法落地的,在發展到一定規模和平台后,互聯網也是最重要被淘汰的!而硬件、芯片、通信這些才是永遠新潮的技術,只不過無法獲取眼前的 feedback,很多高素質人才也不想從事罷了!

  • 我應該學哪些技術

對這些人我有話說:這個問題本身就沒有意義!沒有人能夠指導你學哪些技術!問這句話的目的就是想走捷徑,但是學習是沒有捷徑的!學你想學的,學和你工作相關的,學能夠讓你提升核心競爭力的!如果非要讓我說出要學什么話,我建議學基礎,學基礎,學基礎,基礎就是計算機組成原理、操作系統、網絡、編譯原理

針對上面這些人,我認為他們只是難以接受改變,我認為這類人是 煮熟的青蛙。這個故事你一定聽說過,它說的就是把青蛙放在慢慢加熱的鍋爐里面,剛開始青蛙感覺溫度很舒適,隨着慢慢加熱,青蛙已經無力跳出鍋爐了!

而另外一種人是 把青蛙仍在滾燙的鍋爐里 的人,它肯定想盡辦法跳出來,這類人會想盡一切辦法克服困難。

不要給自己的人生設限

李小龍曾經說過:我活着不是為了滿足你的期望,正如你也不是因為我的期望

說的喪一點就是 諸君看我多裝逼,我料諸君應如是

軟件開發行業絕對是最吃香的行業,因為我們收入頗豐,因為我們可以選擇我們想要的工作,我們可以選擇辦公地點,我們可以實現財務自由,但這些前提是你要有能力。

為什么有人喜歡抱怨呢?因為他們不曾想着改變,Martin Fowler 說過 你可以去改變組織,或者讓自己換一個組織,總的來說,你是自由的,你可以做你想做的。

不知道你聽過 墨菲定律 沒有?最簡單的表達形式是越怕出事,越會出事,拿我們老祖宗的話就是 怕什么,來什么,但是在軟件開發中,出現問題是再正常不過的事情了,就算你有完善的需求、設計文檔,完備的自動化測試流程,多輪測試迭代,還是會出現問題,推遲交付,未曾預料的問題的出現。

所以,不要懼怕問題,因為問題任何時刻都會出現,當問題出現時,我們應該依靠我們的專業性去解決問題,我們犯了錯誤要勇於承認,我們必須坦誠。

勇於承擔責任,不要把問題歸咎於別人或者其他事情上,也不要尋找藉口,不要把問題歸功於環境、編程語言、時間或者同事,這些因素可能影響你,但不是讓你找的借口

設想一下,比如銀行職員、超市售貨員、汽車修理工搪塞或者敷衍你的時候,你是什么反應?是不是恨不得想他了他們的門店?你會如何看待他們的公司?那如果是你呢?你的上司或者甲方會怎么看你?

破窗效應

破窗效應說的是,如何把一座富麗堂皇的別墅變成一片廢墟?也許你只需要一扇破窗,這就是破窗效應的威力。

那么為什么破窗效應的威力這么強大呢?一扇破窗,如果一段時間不去修理和修復,別墅中的主人就會潛移默化產生一種這座別墅很老舊的想法,久而久之更多的窗戶也慢慢積滿灰塵,不去打理,直到整個別墅成為廢墟。

拿到軟件開發中就是,如果一扇破窗(糟糕的設計、錯誤的決定、沒有注釋的代碼,混亂的邏輯)不去修理,慢慢的就會有更多人作出破窗決定,導致整個項目混亂不堪,無法維護。俗稱一塊臭肉壞了滿鍋的湯。

編制合理的謊言

有三個在戰場中的戰士已經很久沒有吃飯了,他們看完前面有個村庄,但是村庄里面沒有人,但是士兵沒有氣餒,他們燒了一鍋水,小心翼翼地在鍋里放了三塊石頭,詭異的村民們都出來圍觀,然后戰士就說:這叫石頭湯,你們就在湯里放這個?嗯,是的,士兵回答道,但是有點胡蘿卜味道會更好,一個村民就跑回家把自己家里的胡蘿卜拿來了,隨后士兵又說,如果有牛肉那就更好了,又一個村民跑回家把牛肉拿過來了,最后,他們煮了一大鍋湯,士兵把石頭扔掉,最后和村民們一起吃了一頓美餐。

這在軟件開發中同樣適用。你可以通過一個小改動入手,漸漸的拓展全局,但是一定要注意方式和方法,一定要假裝你不在意,這時候應該坐下來,等他們開始向你問你要不要加些你原本想要的功能。加入一個推進中的成功項目更容易一些。

讓用戶參與評審和設計

你是否經歷過這種,你做的東西拿給用戶看后發現這並不是他么想要的,每次都需要打回重做。但是沒辦法,那是你的用戶,你們的共同職責就是做出一個雙方都滿意的軟件。為了達到這種目的,溝通就扮演了至關重要的作用。或者說,你還不夠了解你的用戶,要多和他聊聊,這或許是程序員的短板。多讓你的用戶參與評審,多問他們這樣怎么怎么樣。

如何學習知識

知識理財

本傑明富蘭克林說過:投資知識,收益最高 。知識和經驗確實是你最需要的資產。投資知識在某種程度上和 理財 是一樣的。什么?這兩種毫不相關的概念怎么會扯到一起去的?別着急,且聽我慢慢給你分析。

  • 首先,理性投資者具有周期性投資的習慣,周期性投資就是定投
  • 理性投資者會衡量或者說平衡高風險高收益和穩定收益的組合
  • 采取多樣化是打持久戰成功的關鍵因素
  • 投資者最核心的准則就是低買高賣獲得最大的回報
  • 定期審查、反思自己的理財組合

為什么說學習知識和理財一樣呢?

定期投資

就像金融定投一樣,你必須定期為你的技術棧找到合適的學習組合,即使數量有限。

風險管理

不要把所有的雞蛋都放在一個籃子里,你要學新潮的框架同時也要專注於永恆不變的基礎知識。這樣會讓你不止於思考框架,同時也會讓你跟進時代的進步適應這個社會。

多樣化

你知道的越多,你的作用、你的價值也就越大。如果你是一個只專注於某個業務的程序員,一定要從整體把握,不要局限在自己的一畝三分地中。如果你不喜歡業務,那你就要從整體考慮用到什么技術,計算機技術變化迅猛,今天的熱點技術可能明天就會被廢棄。你要多熟悉技術,成為 T 型人才。T 這個字的寫法一定是先橫着寫再豎着寫的,知道廣度后,才有可能選擇一個切入點深入進去。

低買高賣

你在 Java 流行之前絕對不會想着去學習 Java,但是當 Java 流行之后,那些早起的用戶已經積累了相當豐厚的回報。

重新評估

重新評估你的技術棧,推陳出新,查漏補缺。

知識組合

這里有一些對你學習知識的幾種組合方式,也是一些建議:

  • 每年學習一門新的編程語言:培養自己從不同的角度思考語言這回事,權衡語言的利弊,解決了什么樣的問題
  • 每月讀一本技術書:這個可能有些費勁,因為一本黑皮書你不可能一個月就讀完了,除非你什么都不做,天天只看書,但是有的實戰類的書還是可以看完的。這里只是告訴你一個大致的讀書周期
  • 讀技術書:你的人生不僅僅只有計算機,還有生活,計算機也是通過人類制造出來的,你要站在人的角度思考問題。
  • 上課:去本地大學上課是一件很不錯的事情
  • 參加城市技術圈子交流:不要只當聽眾,要參與進去,了解其他人都在做什么
  • 與時俱進:還是那句話,關心一下你的技術棧,閱讀相關的新聞和技術帖子,這是一種很好的方式。

持續投資非常重要,計算機不是一件速成的事兒。

碎片學習的機會

你要如飢似渴的學習,如果你無法找到問題的答案,去尋覓有能力找到答案的人,而不是要讓問題 沉寂下去。和其他人交談有助於構建你的人際網絡,而且你會很驚訝的發現,在你尋找答案的這個過程中,你會不斷擴大你的知識面。

所有的閱讀和研究都需要時間,而時間是永遠不夠的。所以你需要時刻准備好,確保在無聊的時候有東西可以讀。在醫院排隊也不要忘了放棄閱讀的好機會 --- 一定要帶上自己的 kindle 或者電子閱讀器

批判性思維

最后一個要點是要具有批判性思維,批判性地思考讀到和聽到的東西。

網絡不是那么干凈的。永遠不要低估商業的力量。他會把黑的說成白的。

網絡搜索引擎會把熱門的東西放在前列,而不僅僅是正確的東西,也並不是對你有用的東西。書店會把一本書放在顯眼的位置,但並不能說明這是一本好書,有可能包裝好,有可能封面好,有可能只是標題吸引人,有可能這本書很流行或者很暢銷。

批判性思維有五個你需要思考的方向

  • 重復性的問 為什么
  • 誰能從中受益,了解資金流的轉向
  • 什么背景下發生的這件事情
  • 開始后會發生什么,結束后會發生什么
  • 為什么這是個問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM