全栈训练营心得(繁体版)

在全棧班度過的前世今生


笑來老師說過七年就是一輩子。 但我想說在全棧營裏兩個月就是一輩子。


##前世: 前世的我剛剛走出了大學的校園,恍然間才意識到學生時代就這樣過去,校園生活一去不復返了。剛出社會的我,就像被放在沙漠之上,四眼望去都是路,但卻不知道往哪裏前行。同學們大多在畢業之前就找到了工作,但我的心裏總有一份執念,不喜歡的工作不想去做。在當時的視角裏,我只有兩個選項,去做銷售有可能掙得多。再者去考公務員完成父母的願望(去做本專業的工作,那基本上就是混吃等死),這兩個方向都讓我細思恐極,因為深知環境對於人的力量,如果踏入那個圈子我也會被慢慢同化的。人活著是不能沒有靈魂的,就如那句很有名的臺詞,人活著沒有夢想跟鹹魚有什麽區別。就在這個時候,看到了新生大學軟件學院的招生信息。那個報名表單就如一根救命稻草一樣。雖然第一期沒有被錄取,但幸運的是我堅持到了第二期的開課。其實我也不知道有第二期的課程,本來打算要南下找工作的我,感謝命運第二次向我伸出了手。但是面對高達6W的學費,還有課程時間這麽短。我身邊的大多數人都以為我瘋了。多次父母的商量才同意出這筆錢讓我學習。我深知機會來之不易,一輩子沒有多少能有改變命運軌跡的機會。能夠改變自己的生命軌跡來說的話6w塊錢已經很值了。事實證明在全棧班學到的知識遠比6W要珍貴的多。


##前世的準備: 對於學習這門課程來說我是非常沒有自信。自己在心裏巴拉巴拉算了一大堆,感覺沒有一項技能是突出的。當時看見第一份作業是自己建立一個小的留言板。而且教程清楚的說明完成不了作業會被取消資格,當時我就懵了。還好當天的晚上就把教程放了出來,要不然我直接就想撞墻了。前後大概花了10多天的時間,完成了環境建制課到初級作業再到中級作業。中級作業練習了很多遍(rails107)。。。一點一點的感受編程的神奇之處。


##全棧營開到的寶箱:

###方法寶箱:

  1. user story和學習方法論。 現在回想開學的第一天,老師就給了我們一個大禮——user story。越學習到最後,越明白user story的強大。通過用戶的角度才拆分功能,明確網站的主體功能(must have),如果沒有這個方法,很難相信如何來開展一個項目。而老師在剛開始的時候並沒有完全說明它的厲害之處。正如老師說過有些坑你要踩過你才會有成長。突然把好東西擺在你面前,你其實是不太清楚它的價值到底有多大。這印證了老師講學習方法:學習是拼圖,而不是登山。攢夠足夠的知識點才能對一門知識有全面的了解。知識點不夠多之前,就需要你大量的練,形成肌肉記憶,神奇的是有些知識點你練著練著就懂了。

  2. 關於大腦學習的模式。 這個觀點更是顛覆性的。它說明了一個事實,我們的大腦是不善於思考的,我們日常處理大量的事物,其實都是在調動腦海中的記憶。這就讓我更深一層的理解為什麽學習一項新的技能要大量的練習。不光大量的練習非常重要,學習的效率也特別的重要。對於大腦的效率來說。左右腦交替使用的時候效率是最高的。白天就是左腦(分析)的學習時間段,這部分時間就需要大量的練習寫code,學習新的知識點。晚上就是右腦的學習時間段,這部分時間就需要用來整理白天學到的東西了(在這個時間段寫code效率是很低的,有時候很簡單的bug都會把你困住)。

  3. ORID的寫作模式。 以前認為寫作這個東西,寫的好壞大多是由於天賦原因的。寫的多少大多是有靈感來決定。其實完全不是我所想象的那樣。每個人都可以學會寫作,而且還能大量的產出。關鍵就是在於的腦子是否清晰,ORID就是來幫你縷清大腦,鍛煉你的元認知能力。其實大多數的文章都是模式,起承轉折。每天寫log也是對一天的總結和沈澱,不會讓你在學習的道路上跑偏。開始之前寫ORID是十分痛苦的,一個標題寫不到幾句話就完結了。日常的很多事情到晚上去回想都會記不清細節。這又強行讓我養成了每做一件事,每學到一個知識都會有一個簡單的記錄。只是這一個簡單的習慣,帶來的好處都是巨大的。

  4. 練習上癮。 練習上癮。 學習任何技能都需要達到忘我的狀態。真正的愛上學習才是學的最快,最幸福的方式。對於我們從小就被告誡不能上癮,一切以自律為最高要求的人,上癮的能力都快要完全消失掉了。幸運的是上癮也可以通過套路練習來獲得。首先上癮的感覺就是你對做一件事情感覺爽,停不下來。對於太困難的事太久沒有解決,人往往選擇的是放棄。所以說成就感是最容易讓你上癮的毒品。最好的獲得成就感的方式就是教,教同時也是一次360度重新檢驗知識的機會。在教的過程中能對你學到的知識重現的梳理,這個過程你會感覺到真的懂了,在這個過程中還會有很多意外的好運,畢竟每一個人碰見的問題產生的疑問都不同,你會對學到的知識有更深一步的了解。

###心理寶箱:

  1. 擺脫學習上的傲慢。 在學習上,我們會不自覺的犯下很嚴重的錯誤——不跟著老師的方法走。想著自己有一套用了很久的學習方法然後去執行。用很多已知的東西來解釋未知的事物。其實大多數技能是沒有關聯的,你這樣做的結果只會讓自己掉入很多很大的坑而已。學習重要的是要跟比你強數十倍的大牛,用他們的套路,跟住他們的方法,然後一絲不茍地去執行。就像xdite老師說的:沒有學不會的學生,只有傲慢的學生。

  2. 記錄錯誤與增強自信。 記錄錯誤往往要比記錄正確要有用的多得多。但是記錄錯誤的過程還是十分痛苦的,你需要時時刻刻的證明自己是傻×。越是簡單的錯誤,就越應該被記錄。因為那些都是你在新手過程中最常出現的錯誤。而且想要成長就必須這麽做。能夠記錄錯誤並改正又需要強大的自信心。因為人的本能會去遺忘讓自己的痛苦的事情。如果這個錯誤對你的自信打擊特別大,它會讓你一蹶不振。其實出現錯誤程序對我們說的話,並不是說我們本身有問題,而是你寫的代碼出錯誤了。不要慌,不要害怕,相信通過練習,通過鉆研你一定會做成的。

  3. 學會分享。 我們每周會練習4天的時間。星期五的時間來用沈澱、小組討論和休息。說到分享,我從來不會想到自己有一天會這麽樂於分享。從小我就有一個毛病,就是跟不太熟的人基本不說話,更別說是一個面對面的分享會了。第一周的分享會對於我來說簡直就是挑戰。懷著坎坷的心情分享後,達成的效果卻意外的好,不僅總結自己的一周的收獲和錯誤,還能學到同組人的很多經驗。在團隊項目的階段開分享會更重要,它會確定大家是在同一個頻道上來推進項目,大家可以在那一天重新梳理項目,討論未完成的ticker確定這些功能還是否繼續。

  4. 擺脫情緒的困擾。 之前遇到問題就會陷入一個很可怕的心理。就是把自己營造成悲情人物,讓自己同情自己。一天又陷入了這種情緒(原因是自己搞不定一個功能)。正好老師在教室裏面直播,也那麽正好直播的觀眾問道了有關情緒的問題。xdite老師的回答依舊很屌。一棒子就把我從這種情緒之中打了出來。老師是這麽說的:產生情緒的原因不外乎是發現自己是個傻逼,什麽事情都做不好。這種情緒對自己的成長來說完全是負面的。發現自己是傻×、事情做不好的話。你就去努力啊,你就花時間去練習。傻×還有情緒那還怎麽救。一語驚醒夢中人,當天晚上收拾好情緒,然後就做出來了。。。

  5. 自證預言。 自證預言威力就像核彈一樣的大,可以說它時時刻刻都在影響你的一切。這點在我身上深有體會。老師在教學的中期舉辦了一個線上商城的大賽。獎品是北京亮的牛排晚餐。其實第一感覺是這個不關我什麽事,很多東西我都搞不定,參賽了也不會勝出。但後來又抱著試試看的態度,去做了些東西。可想而知我的自證預言深深的影響這我,面對什麽新功能我第一反應就是抵觸的,搞不定,做不了。雖然自己也花了很多時間,但都是以消極的心態來做事,效率自然而然的低,結果當然就是不好。

  6. 選擇熱愛的工作。 這是老師的一個深夜的加餐。面對如何選擇工作,老師給我們算了一個簡單的數學題。大多數人面對自己不喜歡的工作是這樣想的:做不喜歡的工作8個小時,回到家裏練習2個小時自己喜歡的技能。這樣你的練功時間就是2個小時。如果你要選擇一個自己喜歡的工作呢(8+2=10)。你的練功時間足足翻了五倍!就是這樣簡單的思考,大多數人都沒有想過。其實沒有所謂的“天才”,大家都花費了大量的時間去練習,然後成為高手。對於內心不是真正喜歡的事情,人也是無法持續太久的,因為太痛苦了。學習原本應該是一件很幸福的事。那些曾經以為的優秀品質(比如堅持),其實都是為害人的偽概念。做任何事想要做的不錯都不可能去靠堅持來完成。現實也往往是很多人從入門到放棄。正如尼采說的:每一個不曾起舞的日子都是對生命的辜負。選擇自己熱愛的工作,不要對不起自己的一生。

###項目寶箱:

  1. Growth Hack(部分)。 因為Growth Hack的東西實在太多,夠寫很多篇logdown了。這裏就說讓我最震撼的幾點。第一,就是做項目要做自身很了解的主題或者本身就很稀缺的主題(PMF)。項目開展之前要寫調查問卷。為什麽要寫調查問卷呢,它是為了明確你的服務重點、產品走向和用戶真正的需求。項目開始的第一步,不要先去開發,你需要先投放LandingPage。如果LandingPage有市場響應,才說明這個項目能夠繼續下去。這裏不得不驚嘆,老師寫LandingPage的套路是我見過最厲害的營銷。簡單的八個字“消除疑慮,增強信心”就道破了營銷的本質。

  2. 團隊合作,面對不同時期的自己。 關於五周的團體項目。開始我對這一塊完全是懵的。可以說從來沒有跟這麽多人一起合作。但神奇的是,通過我們逐漸寫出user story,通過做LandingPage(產品的最終方向,感覺要跑偏的時候就要看看),項目的方向一步一步就明確了。跟著老師的指導,四周竟然完整的做出來一個社交網站。這其中對於我的改變是以前從來沒有想過的。這四周的成長更是飛速的,老師說團隊合作就是要跟不同時期的你合作。團隊合作會把你的缺點暴露無遺,而你也無法回避它們。你只有去改變才不會拖團隊的後腿。回想起來自己豬隊友和好隊友的點。也更新了我對什麽是好隊友、什麽是豬隊友的認識。尤其是勤勞的豬隊友這一點,遇到問題花很長的時間去解決,而不是選擇求助或者現行擱置,而導致無法完成當天的任務。通常這類人都會熬夜加班做出來,但是第二天他的效率可想而知,惡性循環。關於自己豬隊友的點,就是項目開始的時候,有一段時間是自己來登山的,後來才發現交流才會讓效率變得更高。可能隊友的一句話就可以把你的問題解決,還有詢問老師還能獲得很多意外的驚喜。做不出來不要緊的,要相信隊友可以幫你解決問題。

  3. redmine的項目規劃。 很久之前就知道規劃對於任何事情的重要性。在團體項目更是很重要。規劃能讓項目避免崩潰,能以避免掉入變成豬隊友的陷阱,現有規劃的時間內不能完成的事物。我們都選擇拆分後在擱置。規劃也能幫我們理清開發的思路。沒有規劃之前,寫post的controller是連著建3個的(admin下面的、account下面的和自身的),CRUD也是都寫全。後來才慢慢意識到這對代碼維護造成了很多的困擾,有些code寫出來是根本用不到的。大大降低了功能的完成時間。也無法在大腦裏面對功能的實際流程有太清晰的思路。提前做好拆票和規劃,效果就會完全不一樣了。養成規劃的習慣會在學習的道路上讓你避免很多的坑。


##獲得新生: 全棧營是人生中踐行的第一站。2個月的時間,我已經帶著前世的記憶更新叠代到了下一個輩子。很慶幸在我還算年輕的時候,學到了這麽多的知識,學到了最有效率的學習方法,也認識了一群相信學習可以改變生活的人。面對前世種種有些改變對於我來說是完全出乎意料。我知道選擇環境的重要性,但是沒有想到它帶來的改變可以這麽顯而易見。鏡像神經元不知不覺就會吸收身邊優秀人的品質。從真正認識到自己的表現型人格,到能夠把自己身上的表現型人格慢慢剔除掉。那種改變是不可言語的。相信所有技能都可以通過套路來習得,相信自己搞不定的事只是時間的問題。相信做產品的終極目標是用來解決人與人之間的問題的。有一段時間我是特別信奉基因對人類的影響的,相信基因決定一切。但現在的我相信成長可以改變一切。相信人是一定會證明自己說的話是正確的,就從這個角度來說,我們都需要·1給自己一個正向的預言。相信成長帶來的復利效應是無法想象的。通過全棧營的學習也讓我真正的愛上某一件事,想想以前對喜歡的事情都是淺嘗輒止,沒有真正對一件事情產生上癮的感覺,還真是一件挺可悲的事情。不管是命運也好,還是機緣也罷。這種重獲新生的感覺,都給我巨大的力量去面對未來的一切。


##結語: 全棧營的課程馬上就要結束了。對於我這個慢熱型的人來說,剛要跟大家混熟就要分別了,心裏還是很舍不的。這次的學習經歷算是一生之中就驕傲的一次。感謝那些一直幫助我的人。感謝老師能傾囊相授。想起來大學畢業的時候,老師對我說過的一句話。我也送給全棧班的大家:莫道前路無知己,天下誰人不識君。