當年沒考上大學,讀了自考。
從那之後就開始了自學生涯,第一年還乖乖的去聽課,第二年就徹底放棄課堂了。mysql
後來考本,讀研,中間穿插學點通訊,畫圖什麼的,所有本身來。linux
仔細想一想,讀研的時候第一年是老師講課,只要老師講課,我都聽不進去。。。。web
高中大概就有這種狀況了,最喜歡的就是老師講課45分鐘,我拿出來10分鐘左右看他講的內容。其它時間就是思考人生。算法
而後果斷落榜了哈哈。spring
但研二的時候,從寫論文開始,對自學能力的培養已經初具雛形了。sql
那時候導師不會教你,第一,給了十幾個方向,你本身去選一個。第二,沒了。編程
師兄都沒有。。。老師也不可能每個方向都特別熟悉。bootstrap
寫論文的時候最大的感受就是,nnd,給我留條路好很差,基本上全世界都在作科研,不少問題特別細緻,根本找不到優化的空間,就算找到了,只要你認真找論文,總會發現,我靠,幾年前他們就想過這種方案了,並且比你作的更好。設計模式
這種感受真是生無可戀。緩存
我選的是基於agent的軟件工程,馬丹到如今agent都沒在工業領域作起來。
學校沒項目,只能要求寫論文,死要求是必需要核心期刊發表小論文。
咱們是湊齊遇上一個國際會議,被SCI收錄。
因此雖然讀研,但基本都是自學。
並且,畢業以後我也是一行代碼都不會寫。
以後來北京找工做,就在自學這條路上一路狂奔了。
從JAVA語法開始,我用了一個月的時間學會了JAVA語法,spring,JSP,mysql,svn,tomcat,jdbc等等。
工做就是解決問題,百度,msn上請教別人,不敢問同事,週末看書,晚上會通宵趕進度。。。
而後換了個環境,學習memcache,maven,linux,webservice,設計模式等,也差很少花了四個月時間,如今想來,就是那個時候本身有了獨立完成項目的能力。
跟着進了搜狐,整我的都飛速成長起來了,學習架構,緩存,高併發,分佈式,消息隊列,代碼規範,開發流程,接口設計等等等等。
大概一年的時間,中間又申請作算法,本身花時間從新理解了一下分類聚類。
後來跑到了金融公司,學會了Erlang,comet,分詞,詞性標註,抓取,去重,索引,高亮,hadoop,Cassandra,es,drools,qpid等等,還會了點股票,期貨,研報等等。嗯,還有angular,thrift,bootstrap,微信公衆號開發等等。
大概5年的時間,好像學習進度放緩慢了。
跑出來以後彷佛就沒再學會多少技術上的事情了,只有支付,電子簽章勉強算是新東西,說來慚愧,最近幾年應該都沒學過什麼新技術了,主要精力轉成了產品,運營和公司管理,以及各行各業的商業模式,提及來自從本身創辦公司以來,我已經接觸了100多家不一樣的創業團隊了,也算是半個創業導師,我不能幫助別人怎麼成功,但多數能幫助其它人不要死掉。
嗯,勉強懂點了Android和iOS。
因此,基本我全是自學,也習慣了這種學習方式。
仔細回顧一下,大概有如下幾種學習途徑。
第一,看書,博客,源碼。
第二,身邊大牛,羣裏大牛。
第三,項目
對的,徹底不存在看視頻這種東西,看過一點實在看不下去。
我身邊的大神們也同樣,他們的快速學習能力和閱讀文檔能力特別強。
在白社會的時候咱們已是微服務了,從框架選型到應用實踐到改寫源碼定製組件,大神們只花了一個月時間。
在他們眼裏一個新框架的學習靠看視頻?不存在的。先弄明白應用場景,再去猜想實現方案,再看源碼對比,更牛逼的事,幾乎是看完源碼就能動手去改他們以爲不爽,或者是要擴展的功能。
所謂厚積薄發,就是這樣,你能感覺到這就是在討論解決問題的方案,不一樣人有不一樣理念,有不一樣的設計哲學,但編程這個世界對他們無祕密可言。
我只能作到能夠快速理解思路,作不到看完源碼馬上改進。曾經看過一個JAVA整站抓取的源碼,名字都忘了,3天看下來看的要吐,隨便改了點東西就交差了,徹底受不了3級以上繼承,根本沒有接口這種設計理念。
大概是從那裏有心理陰影了,對各類JAVA開源框架的精妙設計理念都一直不敢恭維。
乾脆就不看了只懂懂設計思路是什麼,惋惜啊,本身當年仍是沒人指導,放到如今必定說,必須看,你以爲不爽你能夠改啊。
但人年齡大了,主要精力真不在編程上了。
總結起來,寫代碼要培養好的主動學習能力,看視頻的方式是我第一個強烈反對的。
我描述的幾種方式都比視頻高效。
不少人說我沒基礎 全部的人都是從零基礎入門的啊。
因此差異不上有沒有基礎,而是有沒有主動學習能力。
這種能力若是沒有,你轉到互聯網第一很困難,第二成長不起來。
一個更新換代如此頻繁的行業,怎麼會容納沒有主動學習能力的人呢。
因此,儘快從要別人「教」,轉換成本身去「學」。
專欄裏整理了一部分,也簡單說一下。
1.查找資料的能力,要不要培養?
2.閱讀第三方文檔的能力,要不要培養?
3.快速定位問題的能力,要不要培養?
4.解決問題的能力,要不要培養?
5.概括總結的能力,要不要培養?
6.高效嚴謹的能力,要不要培養?
都知道編程要工做經驗,某種程度上更看重這些能力。
最近一直在整理關於思惟方式,學習方法的資料,試着去幫助學習慢的人改變學習方法和習慣,培養工程師思惟。
嗯,還沒太成體系,但願對你們有幫助,可是不管如何,請停下來,不要再看視頻了~
「咱們相信人人均可以成爲一個工程師,如今開始,找個師兄,帶你入門,學習的路上再也不迷茫。
這裏是技能樹.IT修真院:http://www.jnshu.com,初學者轉行到互聯網行業的彙集地。"
歡迎加IT交流羣565734203與你們一塊兒討論交流