回覆列表
  • 1 # 明哥聊求職

    作為曾經的碼農,第一件重要的事是:做技術不應該只通過看書學習。

    很多人都有一個誤區,覺得看書才是正經的學習方式,這是非常大的一個坑,看書只是儀式感比較強,但並非只有這一種方式。

    根據我的經驗,程式設計師提升功力的有效方式,一種是看大牛的程式碼,學習前輩的編碼思路;另一種是自己狂敲程式碼,去實踐自己的想法,在這個過程中學習別人的經驗、實踐自己的想法,經歷失敗和成功,反思和總結後變成自己的智慧。

    一門新技術的系統學習,可以看書,或者,可以參加培訓、看影片教程。學什麼技術非常關鍵,成長慢有時候是沒學,有時候是瞎學,一定要記住,人的生命是有限的,學習知識是無限的,一定要把有限的生命用在必要的知識學習上!

    學什麼有兩個維度,一是現在工作中自己所欠缺的技能,二是自己下一個職位目標所需的技能。如果還不能很好的勝任工作,先查缺補漏看看需要學什麼;如果已經能夠遊刃有餘,就為下一步打算,看看以後跳槽需要強化什麼。以終為始,才能切中要害。

    當然這中間會有很多自己知識的盲區,怎麼學習新知識,作為程式設計來說,手冊是一個非常好的參考資料!另外,不要太依賴透過看書學習,圖書追求知識的系統性和完整性,資訊量往往非常大,並不很適合快速檢索。

    作為技術人員,要學會使用網際網路……知道如何使用百度快速檢索到自己想找的問題,會翻牆用下谷歌,這都是最基本的技能,包括多泡技術社群,同行交流的QQ群等,都是一種獲取知識和資訊的方式。

    沒時間的背後,都是不重要。

    每個人都說自己忙,實際上是不會利用時間。工作本身就是學習,在工作中解決一個個技術問題就是成長。休息時也不一定非要大塊的時間才可以學習,不是隻有半個小時、一個小時才是時間,三分鐘、五分鐘也是時間,可以用來閱讀,可以用來思考,碎片時間利用好了一定可以聚沙成塔。

    給自己設定學習任務,分解到每個月、每一週、每一天,制定獎懲,按時完成,光有一個大方向,只是想想很感動,琢磨一下挺激動,最後一動不動。

  • 2 # 胖叔叔金融

    這可以說是一個問題,但是又不算一個真正的問題。因為,大家平時工作中都很忙,我的朋友,一些也是程式設計師,在bat工作,我印象中好幾個都要996,任務還是很緊。

    其實無論是不是程式設計師,你會發現工作都很緊張,這個時候我們能做的主要體現在兩個方面

    1.每天晚上固定抽出一個小時來進行充電,比如你想學python,就可以買一本相關書籍,或者在網上找個相關的而且比較全面的教程,每天看一個小時,你會發現這可以快速提高自己的技能,比如我自己,就每天抽時間來學習python,一年多時間已經學完了基礎,還透過爬蟲爬取某某些資料來輔助分析經濟形勢。

    2.在自己的工作中學習,工作看似平淡,其實可深入的東西很多,程式碼風格,演算法,除錯技巧,業務理解,這些都是可以不斷深入的,各個方面都得到提升,本身就是對自己的一種充電。

    3.技術行業在平時的工作中要多請教,多總結,多記錄,積累經驗就是蓄能。

    這個快節奏的社會,大家都忙,我們要掌握好自己的節奏,自己找機會。

  • 3 # 新雨不感冒

    有個偏方,就是跳槽。一般一個程式設計師在一個公司呆久了就會產生惰性,這時候換個環境,給自己壓力,就會逼著自己學習新的東西,技術提升的就會快。

    不過跳槽也是有缺點和風險的,須謹慎!

  • 4 # 羊羽說

    多利用閒暇時間 。比如你上廁所的時候,比如你坐地鐵、公交的時候,比如你本來用於扯淡的時間,都可以看技術書來提升自己。加油。

  • 5 # 會點程式碼的大叔

    相信大部分程式設計師都有這樣的困惑,包括我自己,面對大量的學習資源,卻無從下手,感覺沒有時間主動學習,技術提高慢。關於這些問題,我和大家分享下經驗。

    面對大量的知識如何選擇

    十多年前,那時候的我們苦於資料太少;

    十多年後,這時候的我們苦於資料太多;

    我建議大家在學習的時候,最好是檢視最原始的資料,而不是被人消化理解過的“二手資料”。比如你要學習Spring Boot的話,最好的資料就是官網的文件,其次才是買一本中文版Spring Boot的書。

    當然這個對程式設計師的要求就比較高了,因為最原始的資料大多是英文的,所以建議大家可以靜下心來學習學習英文;如果大家仍然覺得英文資料“難以下嚥”,也請中英資料結合著看(下面會再詳細說明)。

    面對枯燥的知識如何學習

    通常情況,枯燥的知識都是大家不感興趣的知識,因為這些知識我們在學習過程中看不到學習效果,不知道學完了之後有什麼用;比如我們學習TCP/IP協議,並不知道它對我們寫程式碼有什麼用,因此學習起來感覺枯燥;不過這些枯燥的知識通常都是我們所說的基礎知識,你為什麼感覺新的技術學習時間長,技術提高慢,就是因為這些基礎知識不紮實。

    那麼面對這些枯燥的知識,我們該如何下手呢?

    先去找使用場景,找到實際使用的地方,再回來學習理論;

    帶著問題去學習,效果更好;

    如果有資料能把枯燥的知識用生動的例子講解出來,儘管它不是“原始資料”,但是對於我們的幫助也是很大的;我剛工作的時候看過一本書《大話設計模式》,讓當時的我受益匪淺。

    為什麼覺得技術提高慢

    上面的章節也提到過,技術提高慢,是因為基礎知識不紮實,這裡再詳細地說一下。

    這些原理性的知識和技術,都是經過長時間考驗的,例如我們在大學時候學習的計算機組成原理、作業系統、演算法與資料結構等課程;這些知識,看起來工作中用不到,但是學習這些知識,是為了未來學習其他知識的時候速度更快。

    再和大家分享幾個學習的經驗:

    反覆的學習:對於基礎的知識,需要反覆的學習;相同的知識,不同的階段學習起來,都會有不同的感悟。

    善於總結:可以把學習的知識透過筆記、部落格等方式記錄下來。

    學以致用:把學到的東西在專案中用起來,會讓你的記憶更加牢固。

    學會之後再講出來:對於某些知識,如果能“講出來”,那麼就需要把這些知識瞭解的非常透徹;這也是我現在做技術分享的主要原因之一。

  • 6 # 架構思維

    我直接給個可實操的方案吧!

    別信你的腦子

    題主有沒有記筆記的習慣?沒有的話,請立刻開始記筆記。

    現在筆記軟體很多,選個可以和手機同步的筆記軟體,比如印象筆記,網易雲筆記等。在工作中遇到什麼問題了,不要百度一下,有答案了就完了。把問題記錄下來,得到的答案也記錄下來,最簡單就是把URL地址直接複製下來。這個最多花三分鐘時間吧?

    另外工作中有什麼點子或想法了,也要記錄下來。

    想法子「偷懶」

    總結出自己工作中,重複性的工作,想辦法把這部分工作自動化(你熟練的工作,再花出去的時間,就是一種浪費)。比如:很多人都抱怨,老是寫CRUD,那有沒有辦法可以自動化這部分程式碼的編寫?是否可以使用IDE的模板或snippet來簡化?或者自己寫個程式碼生成工具?

    別讓腦子歇著

    題主總有通勤時間吧?在通勤時間,用手機覆盤上面記錄的問題(這就是要能與手機同步的筆記軟體的原因)。去思考自己為什麼會遇到這個問題?別人是怎麼解決的?別人為什麼能想到這個解決方案?我是因為欠缺什麼導致沒法解決這個問題?我現在有沒有什麼更好的思路?想到的內容可以用手機直接記錄下來。

    點成線,線成面,面成體

    假設題主996。那還有個週末吧?總能擠個幾個小時吧?花兩到三個小時,對本週記錄的和覆盤的資訊進行整理,能夠系統化的整理起來。如果還不夠系統,就進行分類。同時確認是否和之前的知識有關聯?是否有延伸知識?可以去網上找找看,進行學習整理。

    對於自己的點子和想法,考慮如何分配到後面的時間裡去實現!

    剝洋蔥式拆解任務

    很多書籍、文章都教你怎麼去拆解一個任務。什麼《清單革命》,todoList相關文章之類的啦。對於學習來說,一般的切分任務的方法是有問題的。它把完整的內容給拆散了。

    就以讀書為例吧!如果按照一般的拆分方法,可能就是每天睡前看20頁!也就是把一本書拆成了n個20頁!把一個連續的東西給打斷了。你今天看完了,第二天再看,你還記得昨天看的是什麼嗎?

    「剝洋蔥式拆解」就是一層層的剝開內容。由寬泛到詳細。還以讀書為列,就是今天先看書的結構,可以猜測一下大概寫的是什麼,第二天再概讀,驗證自己的猜測,如果猜對了可以先跳過,如果不對了,具體又是講什麼的,是否感興趣?感興趣在哪裡,第三天再細讀自己感興趣的地方,一步步的深入下去。每一步都保證書的內容是完整的。

    之前回答的兩個問題「如何閱讀原始碼」和「如何編寫程式碼」都是這樣的方式,有興趣的可以去翻閱,這裡不贅述了。

  • 中秋節和大豐收的關聯?
  • 放蘇打和蜂蜜能做饅頭?