2017年3月31日 星期五

技術大牛養成指南,一篇不雞湯的成功學實踐(轉貼)

技術大牛養成指南,一篇不雞湯的成功學實踐
有的人想成為大牛,卻不曾為此努力。有的人辛苦耕耘,卻收穫寥寥。很多時候,你跟成功的差距並不是能力,也不是運氣,或許只是正確的方法?這是一篇不雞湯的成功學指南,如果你相信且願意堅持嘗試,未必幫不到你!
1、一碗有勺子的雞湯
我工作已經將近12年了(其實12年才混到這個地步,天資實在是一般),在華為做了5年,在UC做了6年,現在主要負責阿里遊戲的中間件和組件的架構設計和實現,包括用戶消息推送、系統異步通知系統等等。
同時我還帶了三四十人的研發團隊,除了工作以外,我也喜歡寫博客,是CSDN、雲棲的社區之星和博客專家,InfoQ的簽約作者。
總體上來說,我現在雖然還算不上業界頂級的大牛,但在公司也算一頭小牛了,今天我的分享將綜合自己的成長經歷給大家談一談怎麼樣成為一個大牛。我現在還在業界的大牛路上狂奔,但我覺得這些經驗和技巧應該是每個同學都可以用到自己的日常工作和生活當中的。
2、一鳴驚人背後是1萬小時的不斷練習
如何成為大牛?這個問題之前有很多人問我:你是怎麼成為技術上的一個大牛的?
最開始的時候我也經常跟他們講你要去看看某某某開發方案,深入學習UNIX的開發等等這些“術”的東西,後來我在思考,是否有成為一種大牛的“道”上面的東西,也就是說不管你做產品、做運營、做運維、程序員還是測試,通過這個方式都能夠成為一個大牛呢?
通過尋找和思考,後來真的讓我找到了應用到所有行業、所有職業我稱之為成為大牛的一個道,這是1萬小時理論。
我先簡單介紹一下1萬小時理論,我最初看到1萬小時理論是從《異類》這本書知道的,這是很出名的書,它非常有意思,我建議所有同學都去看一下,它分析了很多成功人士背後一些我們通常情況下不了解或沒看到的一些現象,得出一些比較令人震撼的結論,其中有一個理論就是1萬小時理論。
它裡面有舉了一些例子,比如說莫扎特,大家都知道他是音樂神童,6歲就開始作曲了,你看完這本書就知道他真正出人頭地是20多歲的時候,也就是說他雖然6歲開始作曲,但他當時作的曲也是比較不好的。
所以《異類》這本書裡面提到了1萬小時的理論,它對我是很有幫助的,成為世界上頂級的專家唯一的方法就是1萬小時持續不斷地進行練習,大家要特別注意“唯一”,也就是說絕大部分專業是沒有什麼天才的,所謂的天才只是他一鳴驚人之後我們才這樣覺得,在他成為天才之前至少要經過1萬小時持續不斷的練習。
我第一次看到1萬小時的理論,覺得沒什麼神奇的,我算了算,我工作五年就會成為業界頂級的專家了,但想想這是不可能的,為什麼呢?我反思了一下我自己的工作狀態,對於大部分人來說每天的工作很多時候是重複勞動,雖然我們一天工作8小時,但是只是重複以往的經驗,並沒有刻意去訓練提升自己。
有一個笑話是有一個10年工作經驗的人去面試,面試完了之後面試官跟他說其實你只有1年工作經驗,你把它重複了9年。
對於1萬小時理論來說如果你深入思考其實它並沒有那麼簡單,這意味著什麼呢?意味著你每天要花3小時時間用於提升自己的技能,這樣一直做,要持續大約10年時間。大家想想每天持續十年去做一件事情去提升自己,有幾個能做到,所以我們看到雖然有些人工作了10年,但是也不一定能成為業界的專家。
為什麼我要強調每天3小時?持續10年提升自己,你不能把你重複的工作算進去,你要在專業廣度和深度上面不斷擴展,才能業界一個頂尖的大牛或者專家。
舉一個例子,一個小孩子每天唱《兩隻老虎》,唱10年,你覺得他會成為周杰倫嗎?肯定不會。當然1萬小時理論不適合一些領域,尤其是不適合炒股,特別是中國的股市,如果你花1萬小時去炒股,可能會傾家蕩產。
3、如何找到10000小時?
碎片化時間管理
1萬小時理論聽起來好像很簡單,每天持續3小時,也不難,但實際上真正做起來是很難的,就像我們互聯網的人加班加成狗,感覺身體天天被掏空,時間從哪來,這是一個現實問題,不要說每天抽3個小時提升自己,每天抽1個小時陪女朋友或者找女朋友的時間都不夠。具體怎麼做?
首先是找到3個30分鐘:
第一個30分鐘就是早上的30分鐘,假設你習慣8點起床,明天你把鬧鐘改成7點半,這就多了半個小時。
第二個30分鐘是睡覺前的30分鐘,假設你習慣玩遊戲到12點,明天晚上你玩遊戲就玩到11點半。
第三個30分鐘就是上班到你座位上的30分鐘,有的同學擔心說我這30分鐘會不會影響我這一天的工作效率,可能加班完不成,還讓我擠出30分鐘來,這不用擔心,從我的經歷來看擠30分鐘不會影響你整體的工作效率,持續一兩年,你會發現自己的收益非常大。
第二點是利用或節省路途時間
我們每天上下班都是一兩個小時,比如像我這種,怎麼去利用時間呢?
首先是可以利用上下班路上的時間去看書、聽書,也是可以做的。如果你覺得上班路上是不能看書的,或者是不可能學習的,比如你坐廣州的3號線,這是舉世聞名的擠得要命的,不要說看書了,把手伸出去都不知道去哪了,那就建議大家搬到離公司近一點位置,雖然每個月多幾百塊錢的房租,但是你要相信這個投資節省下來的時間用於提升自己,它最終的收益是10倍回報都不止的。
第三點是周末4小時
週末還是不用怎麼加班的,週末用於放鬆、睡覺、看電影、娛樂,你也可以在周末裡面規定自己擠出4個小時,也就是每天2個小時,這樣算下來,一天大概就兩個多小時,再加上你在工作中的積累,每天3小時也不是很難。
接下來講一下我是怎麼做的,我現在有2個小孩,而且我住的比較遠,應該在座的比我忙的也不會很多,看一下我是怎麼做的,我是坐廣州的四號線,坐四號線每天來回可以看一個小時的書,每天早晚30分鐘,週末4小時,有的同學可能會有疑問,週末肯定要帶小孩玩,自己也要休息,哪裡有4個小時,其實只要你去找,時間都會有的,我找的方法就是當我小孩睡覺的時候,因為小孩子睡覺一般要睡三四個小時,大人一般睡一個小時、半個小時就差不多了,所以通過這種方式,大家可以看到2015年我一共看了84本書,有專業的,也有非專業的,人文社科、歷史這些都有。
不過特別提醒一下對於男程序員來說有一個時間千萬不能少,就是陪女朋友的時間,因為對程序員來說找女朋友不容易,別看了這篇文章回去之後女朋友也不要了,就天天回去提升,這也不是我們想要的生活。
4、10000小時理論如何輕鬆落地?
雖然理論上很簡單,但真正要落地實行也並不那麼容易,實行10000小時理論的關鍵在於堅持,我認為堅持的關鍵在於自己對於所從事的事業是否有“激情和興趣”。這點當然是核心,但如果只靠激情支撐,持續10年也確實有挑戰,正如一個朋友在分享會後問我的“要持續10年才能成為大牛啊,時間好長啊”!
如果說做一件事要10年後才能修成正果,估計很多朋友就會放棄了,畢竟像唐僧那麼堅定的信仰者總是少數,大部分凡夫俗子都還是需要持續不斷的激勵才能有動力去做一件事,因為我們的大腦在進化的過程中已經形成了需要持續不斷的獎勵才能保持興奮的機制,也就是說相對於在第10年給一個大獎勵,還不如每年給一個小獎勵。
那如何才能在10年漫長的路上讓我們持續的堅持下去呢?答案其實就是首富的話:“先定一個能達到的小目標”!我們來看如何將“10年成為大牛”這個目標分解為一個個能達到的小目標。我將這個方法歸納為“三段分解法”,即:將一個宏大或者長遠的目標經過3次分解,得到一個個短期內能達到的小目標。具體的分解方法如下。
一段分解:分解“等級”
10年成為大牛的目標雖然比較長遠比較宏大,但並不意味著在沒有成為大牛前,我們一直都是菜鳥。從菜鳥到大牛的過程中,中間其實有幾個關鍵的里程碑,這些里程碑就是我們的一段目標。
以技術人員為例,技術人員典型的發展路徑基本上都是下面的這個模式:
1) 0 ~ 1年:菜鳥,需要別人手把手來教
2)1 ~ 3年:初級,需要別人帶你做
3)3 ~ 5年:高級,能獨當一面,可以帶初級技術人員了
4)5 ~ 8年:資深,能獨擋多面
5)8 ~ 10年:大牛,統籌規劃,高屋建瓴
通過上面的分解我們可以看到,雖然說10年才能成為大牛,但是3年就可以達到初級水平,5年就可以達到高級水平,8年就可以達到資深水平,在這個過程中我們一直在成長和提升,而不是說沒有成為大牛就是菜鳥;並且對於很多朋友來說,如果目標不是像首富那樣要賺就賺1億,能達到高級或者資深水平,其實已經可以過得比較滋潤了。
通過這種分解方法,再核對一下自己目前所處的位置,然後先瞄準下一個目標,全力以赴其實也就2 ~ 3年時間,這樣來看一段目標其實是比較容易達成的。這種目標分解的方法除了適合技術人員外,其它很多領域也都適應,比如說產品人員、運營人員、甚至公務員!
二段分解:分解“技能”
經過一段分解後,明確自己目前所處的位置和下一個目標,接下來就要看這個一段目標如何實現了。雖然說每個一段目標持續時間在2~3年,但3年時間說長不長,說短也不短,如果沒有好好利用,可能到了2年多的時候回頭一看,好像什麼都沒達成,還是原地踏步。因此,為了更好的利用這3年時間,我們需要進一步分解,這就是“二段分解”。
一段分解的維度是等級,二段分解的維度則不一樣,不能再分等級了,否則等級太細就沒法區別了。二段分解的維度變成了“技能”,即:為了達到一段目標,我需要具備什麼樣的技能。
還是以技術人員為例,假設經過自我評估,認為自己目前處於初級階段,而且初級階段的事情已經做得比較順手和熟練了,那麼下一個一段目標自然就是達到“高級”水平。 “高級”與“初級”相比,有哪些不同的技能要求呢?
這就需要我們根據各自不同的行業和方向詳細列出來了,如果自己想不出來,網上有很多資料都可以搜索到,最方便的就是到一個招聘網站,多看看幾個招聘需求的描述,然後歸納總結一下。
我們隨便到網上搜索一個,例如拉勾網上滴滴的“高級Java開發工程師”招聘:
多看幾個類似的職位招聘,基本上我們就能明白“高級Java開發工程師”的一些基本要求。當然實際上的技能要求比招聘需求的描述還要更加細緻,我個人的習慣是將這些要求整理為一個思維導圖,詳細列出每個技術點。例如:
注意:以上這個圖只是示例,並不是說所有Java高級工程師都一定是這個要求,例如互聯網行業和電信行業的要求不一樣)
有了這樣一個思維導圖後,我們就可以開始真正進行二段分解了,分解的方法很簡單:哪裡不懂補哪裡!例如:我感覺目前我的數據庫水平一般,僅僅會寫CRUD語句,其它的東西都不懂,那我就開始專攻數據庫這一部分,經過一段時間的專攻來提升自己的水平。
二段目標持續時間一般建議是6個月,既不能太短也不能太長。太短容易讓人陷入為了目標而做的誤區,沒有真正得到有效提升;時間太長的話,3年時間又不夠完成其它目標了,例如要是我定一個目標說2年提升數據庫,那操作系統怎麼辦?網絡怎麼辦? ……等等。以6個月為一個週期,基本上剛剛好。
經過分解,最終的二段目標可以分解為如下的幾個更小的目標:
1)2016.06 ~ 2017.01:提升數據庫水平
2)2017.01 ~ 2017.06:提升Linux水平
3)2017.06 ~ 2017.12:提升網絡和網絡編程水平
當然,二段分解目標並不是一成不變的,很多時候需要根據我們工作的內容進行調整。例如老大正好安排我來負責優化系統性能,降低機器負載,那麼我完全可以將“提升Linux水平”安排到“提升數據庫水平”之前。
三段分解:分解“行動”
二段分解得到技能的小目標後,接下來的關鍵就是要實現這個目標,這就是三段分解的主要目的,即:將技能目標分解為具體要做的事情,然後按照計劃執行。
比如說我的二段目標是“提升Linux水平”,那怎麼樣才能提升呢?可以上網搜索(知乎是個好地方),也可以去問有經驗的朋友。明確要做的事情后,三段分解需要將二段分解的6個月目標更加細化,分為1個月或者兩個月一個目標。
以我當時加入UC的情況為例,我在華為的時候是在Windows平台上用VC6進行開發,而到了UC的時候是在Linux平台上用C++開發,我當時定了“提升Linux水平”的目標,然後通過上網查,找別人問等方法,最終將這個目標分解為幾個步驟:
1)1個月:通讀《UNIX環境高級編程》
2)1個月:通讀《Linux系統編程》
3)2個月:通讀《UNIX網絡編程 卷1》
4)1個月:Linux常用命令實戰:tcpdump、ps、top等
通過這種方法,將6個月的目標又進一步分解為1個月的目標,實施起來就簡單多了,每1 ~ 2個月專註一個具體目標,每次完成後都很有成就感,既感覺自己的水平有了提升,又佩服自己能夠堅持按計劃按目標完成任務,雙重獎賞讓自己更有動力進行下一個目標。
我大約花了2年的時間將Linux、網絡、MySQL三個重點技能從一無所知提升到高級的水平,很多同事都問我之前在華為是不是就是做這方面的,因為他們覺得短時間能達到這個水平是不太可能的。
綜合前面的分析,我們將三段分解提煉一下:一段分解“等級”,二段分解“技能”,三段分解“行動”。通過前面我們的案例就可以看出,原本一個宏大的“10年成為技術大牛”的目標,經過三段分解,最終得到的是1 ~ 2個月可執行的具體行動,通過這種一步一個腳印的行動,最終就可以達成“10年成為技術大牛”的目標。
5天天寫業務代碼,如何成為技術大牛?
幾個典型的誤區
拜大牛為師
知乎上有人認為想成為技術大牛最簡單直接、快速有效的方式是“拜團隊技術大牛為師”,讓他們平時給你開小灶,給你分配一些有難度的任務。我個人是反對這種方法的,主要的原因有幾個:
大牛很忙,不太可能單獨給你開小灶,更不可能每天都給你開1個小時的小灶;而且一個團隊裡面,如果大牛平時經常給你開小灶,難免會引起其他團隊成員的疑惑,我個人認為如果團隊裡的大牛如果真正有心的話,多給團隊培訓是最好的。然而做過培訓的都知道,準備一場培訓是很耗費時間的,課件和材料至少2個小時(還不能是碎片時間),講解1個小時,大牛們一個月做一次培訓已經是很高頻了。
因為第一個原因,所以一般要找大牛,都是帶著問題去請教或者探討。因為回答或者探討問題無需太多的時間,更多的是靠經驗和積累,這種情況下大牛們都是很樂意的,畢竟影響力是大牛的一個重要指標嘛。然而也要特別注意:如果經常問那些書本或者google能夠很容易查到的知識,大牛們也會很不耐煩的,畢竟時間寶貴。經常有網友問我諸如“jvm的-Xmn參數如何配置”這類問題,我都是直接回答“請直接去google”,因為這樣的問題實在是太多了,如果自己不去系統學習,每個都要問是非常浪費自己和別人的時間的。
大牛不多,不太可能每個團隊都有技術大牛,只能說團隊裡面會有比你水平高的人,即使他每天給你開小灶,最終你也只能提升到他的水平;而如果是跨團隊的技術大牛,由於工作安排和分配的原因,直接請教和輔導的機會是比較少的,單憑參加幾次大牛的培訓,是不太可能就成為技術大牛的。
綜合上述的幾個原因,我認為對於大部分人來說,要想成為技術大牛,首先還是要明白“主要靠自己”這個道理,不要期望有個像武功師傅一樣的大牛手把手一步一步的教你。適當的時候可以通過請教大牛或者和大牛探討來提升自己,但大部分時間還是自己系統性、有針對性的提升。
業務代碼一樣很牛逼
知乎上有的回答認為寫業務代碼一樣可以很牛逼,理由是業務代碼一樣可以有各種技巧,​​例如可以使用封裝和抽象使得業務代碼更具可擴展性,可以通過和產品多交流以便更好的理解和實現業務,日誌記錄好了問題定位效率可以提升10倍……等等。
業務代碼一樣有技術含量,這點是肯定的,業務代碼中的技術是每個程序員的基礎,但只是掌握了這些技巧,並不能成為技術大牛,就像遊戲中升級打怪一樣,開始打小怪,經驗值很高,越到後面經驗值越少,打小怪已經不能提升經驗值了,這個時候就需要打一些更高級的怪,刷一些有挑戰的副本了,沒看到哪個遊戲只要一直打小怪就能升到頂級的。
成為技術大牛的路也是類似的,你要不斷的提升自己的水平,然後面臨更大的挑戰,通過應對這些挑戰從而使自己水平更上一級,然後如此往復,最終達到技術大牛甚至業界大牛的境界,寫業務代碼只是這個打怪升級路上的一個挑戰而已,而且我認為是比較初級的一個挑戰。
所以我認為:業務代碼都寫不好的程序員肯定無法成為技術大牛,但只把業務代碼寫好的程序員也還不能成為技術大牛。
上班太忙沒時間自己學習
很多人認為自己沒有成為技術大牛並不是自己不聰明,也不是自己不努力,而是中國的這個環境下,技術人員加班都太多了,導致自己沒有額外的時間進行學習。
這個理由有一定的客觀性,畢竟和歐美相比,我們的加班確實要多一些,但這個因素只是一個需要克服的問題,並不是不可逾越的鴻溝,畢竟我們身邊還是有那麼多的大牛也是在中國這個環境成長起來的。
我認為有幾個誤區導致了這種看法的形成:
1)上班做的都是重複工作,要想提升必須自己額外去學習
形成這個誤區的主要原因還是在於認為“寫業務代碼是沒有技術含量的”,而我現在上班就是寫業務代碼,所以我在工作中不能提升。
2)學習需要大段的連續時間
很多人以為要學習就要像學校上課一樣,給你一整天時間來上課才算學習,而我們平時加班又比較多,週末累的只想睡懶覺,或者只想去看看電影打打遊戲來放鬆,所以就沒有時間學習了。
正確的做法正好相反:
首先我們應該在工作中學習和提升,因為學以致用或者有實例參考,學習的效果是最好的;其次工作後學習不需要大段時間,而是要擠出時間,利用時間碎片來學習。 (參照前文10000小時理論)
正確的做法
Do more
做的更多,做的比你主管安排給你的任務更多。
我在HW的時候,負責一個版本的開發,這個版本的工作量大約是2000行左右,但是我除了做完這個功能,還將關聯的功能全部掌握清楚了,代碼(大約10000行)也全部看了一遍,做完這個版本後,我對這個版本相關的整套業務全部很熟悉了。經過一兩次會議後,大家發現我對這塊掌握最熟了,接下來就有趣了:產品討論需求找我、測試有問題也找我、老大對外支撐也找我;後來,不是我負責的功能他們也找我,即使我當時不知道,我也會看代碼或者找文檔幫他們回答……最後我就成了我這個系統的“專家”了。雖然這個時候我還是做業務的,還是寫業務代碼,但是我已經對整個業務都很熟悉了。
以上只是一個簡單的例子,其實就是想說:要想有機會,首先你得從人群中冒出來,要想冒出來,你就必須做到與眾不同,要做到與眾不同,你就要做得更多!
怎麼做得更多呢?可以從以下幾個方面著手:
1)熟悉更多業務,不管是不是你負責的;熟悉更多代碼,不管是不是你寫的
這樣做有很多好處,舉幾個簡單的例子:
需求分析的時候更加準確,能夠在需求階段就識別風險、影響、難點
問題處理的時候更加快速,因為相關的業務和代碼都熟悉,能夠快速的判斷問題可能的原因並進行排查處理
方案設計的時候考慮更加周全,由於有對全局業務的理解,能夠設計出更好的方案
2)熟悉端到端
比如說你負責web後台開發,但實際上用戶發起一個http請求,要經過很多中間步驟才到你的服務器(例如瀏覽器緩存、DNS、nginx等),服務器一般又會經過很多處理才到你寫的那部分代碼(路由、權限等)這整個流程中的很多系統或者步驟,絕大部分人是不可能去參與寫代碼的,但掌握了這些知識對你的綜合水平有很大作用,例如方案設計、線上故障處理這些更加有含金量的技術工作都需要綜合技術水平。
“系統性”、“全局性”、“綜合性”這些字眼看起來比較虛,但其實都是技術大牛的必備的素質,要達到這樣的境界,必須去熟悉更多系統、業務、代碼。
3)自學
一般在比較成熟的團隊,由於框架或者組件已經進行了大量的封裝,寫業務代碼所用到的技術確實也比較少,但我們要明白“唯一不變的只有變化”,框架有可能要改進,組件可能要替換,現有技術可能已經無法滿足業務需求,或者你換了一家公司,新公司既沒有組件也沒有框架,要你從頭開始來做。這些都是機會,也是挑戰,而機會和挑戰只會分配給有準備的人,所以這種情況下我們更加需要自學更多東西,因為真正等到要用的時候再來學已經沒有時間了。
以java為例,大部分業務代碼就是if-else加個數據庫操作,但我們完全可以自己學些更多java的知識,例如垃圾回收,調優,網絡編程等,這些可能暫時沒用,但真要用的時候,不是google一下就可以了,這個時候誰已經掌握了相關知識和技能,機會就是誰的。
以垃圾回收為例,我自己平時就抽時間學習了這些知識,學了1年都沒用上,但後來用上了幾次,每次都解決了卡死的大問題,而有的同學,寫了幾年的java代碼,對於stop-the-world是什麼概念都不知道,更不用說去優化了。
特別是很多開源軟件,更加需要自己平時去自學,例如Nginx、Redis、Mongodb、ElasticSearch等,在合適的時機引入這些技術,能夠帶來很大的價值。
Do better
要知道這個世界上沒有完美的東西,你負責的系統和業務,總有不合理和可以改進的地方,這些“不合理”和“可改進”的地方,都是更高級別的怪物,打完後能夠增加更多的經驗值。識別出這些地方,並且給出解決方案,然後向主管提出,一次不行兩次,多提幾次,只要有一次落地了,這就是你的機會。
例如:
重複代碼太多,是否可以引入設計模式?
系統性能一般,可否進行優化?
目前是單機,如果做成雙機是否更好?
版本開髮質量不高,是否引入高效的單元測試和集成測試方案?
目前的系統太龐大,是否可以通過重構和解耦改為3個系統?
阿里中間件有一些系統感覺我們也可以用,是否可以引入 ?
只要你去想,其實總能發現可以改進的地方的;如果你覺得系統哪裡都沒有改進的地方,那就說明你的水平還不夠,可以多學習相關技術,多看看業界其它公司怎麼做, BAT都怎麼做。
我2013年調配到九遊,剛開始接手了一個簡單的後台系統,每天就是配合前台做數據增刪改查,看起來完全沒意思,是吧?如果只做這些確實沒意思,但我們接手後做了很多事情:
解耦,將一個後台拆分為2個後台,提升可擴展性和穩定性;
雙機,將單機改為雙機系統,提高可靠性;
優化,將原來一個耗時5小時的接口優化為耗時5分鐘
還有其它很多優化,後來我們這個組承擔了更多的系統,後來這個小組5個人,負責了6個系統。
Do exercise
在做職業等級溝通的時候,發現有很多同學確實也在嘗試Do more、Do better,但在執行的過程中,幾乎每個人都遇到同一個問題:光看不用效果很差,怎麼辦?
例如:
學習了jvm的垃圾回收,但是線上比較少出現FGC導致的卡頓問題,就算出現了,恢復業務也是第一位的,不太可能線上出現問題然後讓每個同學都去練一下手,那怎麼去實踐這些jvm的知識和技能呢?
Netty我也看了,也了解了Reactor的原理,但是我不可能參與Netty開發,怎麼去讓自己真正掌握Reactor異步模式呢?
看了《高性能MySQL》,但是線上的數據庫都是DBA管理的,測試環境的數據庫感覺又是隨便配置的,我怎麼去驗證這些技術呢?
框架封裝了DAL層,數據庫的訪問我們都不需要操心,我們怎麼去了解分庫分錶實現?
諸如此類問題還有很多,我這里分享一下個人的經驗,其實就是3個詞:learning、trying、teaching!
1)Learning
這個是第一階段,看書、google、看視頻、看別人的博客都可以,但要注意一點是“系統化”,特別是一些基礎性的東西,例如JVM原理、Java編程、網絡編程,HTTP協議。 。 。 。 。 。等等,這些基礎技術不能只通過google或者博客學習,我的做法一般是先完整的看完一本書全面的了解,然後再通過google、視頻、博客去有針對性的查找一些有疑問的地方,或者一些技巧。
2)Trying
這個步驟就是解答前面提到的很多同學的疑惑的關鍵點,形象來說就是“自己動手豐衣足食”,也就是自己去嘗試搭建一些模擬環境,自己寫一些測試程序。例如:
Jvm垃圾回收:可以自己寫一個簡單的測試程序,分配內存不釋放,然後調整各種jvm啟動參數,再運行的過程中使用jstack、jstat等命令查看jvm的堆內存分佈和垃圾回收情況。這樣的程序寫起來很簡單,簡單一點的就幾行,複雜一點的也就幾十行。
Reactor原理:自己真正去嘗試寫一個Reactor模式的Demo,不要以為這個很難,最簡單的Reactor模式代碼量(包括註釋)不超過200行(可以參考Doug Lee的PPT)。自己寫完後,再去看看netty怎麼做,一對比理解就更加深刻了。
MySQL:既然有線上的配置可以參考,那可以直接讓DBA將線上配置發給我們(注意去掉敏感信息),直接學習;然後自己搭建一個MySQL環境,用線上的配置啟動;要知道很多同學用了很多年MySQL,但是連個簡單的MySQL環境都搭不起來。
框架封裝了DAL層:可以自己用JDBC嘗試去寫一個分庫分錶的簡單實現,然後與框架的實現進行對比,看看差異在哪裡。
用瀏覽器的工具查看HTTP緩存實現,看看不同種類的網站,不同類型的資源,具體是如何控制緩存的;也可以自己用Python寫一個簡單的HTTP服務器,模擬返回各種HTTP Headers來觀察瀏覽器的反應。
還有很多方法,這裡就不一一列舉,簡單來說,就是要將學到的東西真正試試,才能理解更加深刻,印第安人有一句諺語:I hear and I forget. I see and I remember. I do and I understand,而且“試試”其實可以比較簡單,很多時候我們都可以自己動手做。
當然,如果能夠在實際工作中使用,效果會更好,畢竟實際的線上環境和業務複雜度不是我們寫個模擬程序就能夠模擬的,但這樣的機會可遇不可求,大部分情況我們還真的只能靠自己模擬,然後等到真正業務要用的時候,能夠信手拈來。
3)Teaching
一般來說,經過Learning和Trying,能掌握70%左右,但要真正掌握,我覺得一定要做到能夠跟別人講清楚。因為在講的時候,我們既需要將一個知識點系統化,也需要考慮各種細節,這會促使我們進一步思考和學習。同時,講出來後看或者聽的人可以有不同的理解,或者有新的補充,這相當於繼續完善了整個知識技能體系。
這樣的例子很多,包括我自己寫博客的時候經常遇到,本來我覺得自己已經掌握很全面了,但一寫就發現很多點沒考慮到;組內培訓的時候也經常看到,有的同學寫了PPT,但是講的時候,大家一問,或者一討論,就會發現很多點還沒有講清楚,或者有的點其實是理解錯了。寫PPT、講PPT、討論PPT,這個流程全部走一遍,基本上對一個知識點掌握就比較全面了。
6後記
成為技術大牛夢想雖然很美好,但是要付出很多,不管是Do more還是Do better還是Do exercise,都需要花費時間和精力,這個過程中可能很苦逼,也可能很枯燥,這裡我想特別強調一下:前面我講的都是一些方法論的東西,但真正起決定作用的,其實還是我們對技術的熱情和興趣!
作者介紹
李運華,阿里遊戲資深軟件工程師,帶領多個研發團隊,承擔架構設計、架構重構、技術團隊管理、技術培訓等職責;專注於開源技術、系統分析、架構設計,對互聯網技術的特點和發展趨勢有較深入的研究,對系統解耦、高性能、高可用架構有豐富的經驗。

2017年3月7日 星期二

何謂資金盤 和 龐式騙局?(轉貼)



央視揭秘資金盤騙局 350個資金盤傳銷名單全曝光

1、資金盤一開始就是圈錢遊戲,也是擊鼓傳球的遊戲:鼓聲一停的時候,球在哪裡,後面整排的人全軍覆沒。

2、資金盤本質上不是為社會創造價值和財富的,純粹只是通過拉人頭的方式來創造人為供需,用錢來支撐市場。真正的投資項目建立在增值的基礎上,資金盤卻是建立在概念上,所以只是泡沫,遲早爆掉、崩盤。

3、資金盤的榮景僅是曇花一現的,維持不會超過三~五年 (現在最快甚至不到一個月)。崩盤之前蒸蒸日上,滿面油光;崩盤之後天地失色,滿面無光。崩盤之前沒有先兆,來不及逃跑。

4、從吸引力法則的角度來分析,資金盤會吸引甚麼樣的人?

A 因匱乏而產生貪念的人
B 因為躁進而越級跳頻的人
C 因為自欺而賭徒心態的人這三種心態製造了能量缺口

5、加入資金盤而虧錢的,通常是
① 因為信錯朋友投錯錢
② 因為上述能量缺口而咎由自取

6、崩盤、爆掉之前,總有人是賺錢的,有人賺錢說明不了甚麼,因為在金字塔的食物鏈層級裡面,你們不再同一階層。有人賺錢是應該的,不然就發展不下去了。所以有人賺錢證明不了甚麼,特別是證明不了你也能賺錢。

7、崩盤之前,大家都賺錢! 真正的問題是:
A 甚麼時候崩盤? (沒有人知道)
B 崩盤之後,你是不是賺錢的那一個?(也沒有人知道,如果你說我應該不會是虧錢的那一個吧?那你就有賭徒心態和僥倖心理,我只能祝福你…)

8、為什麼資金盤,網資總是此起彼落?
部分網頭心存僥倖,不斷變換花樣誘人,讓人目不暇接,很多網民智力不足,無法辨別真偽,見好就上、投機取巧。網路是一個分散隱匿的環境,案發後網投早已捲款而逃,跨境案件深究起來程序複雜,目前還有很多國際逃犯! 請大家放棄幻想! 投資一定會有風險,所以掏錢一定要謹慎。連銀行都是這樣寫了,相信大家明白這個道理!


簡單來說,就是用

一、高獲利(常見報酬6~30%/月)

二、低門檻 (投資金額門檻低)

三、高介紹費

四、組織傳直銷模式來募資 (老鼠會)

五、給息獲利來源解釋不清楚
(或者畫許多大餅、連結許多產業故意複雜化)

六、公司設立模糊
打著境外公司旗號,通過網路傳播推廣虛假宣傳所謂境外理財、黃金、期貨、石油等投資項目,最常用的伎倆就是宣稱在某國家高檔酒店招開"投資推薦會",參會人員爆滿。

七、不合法

八、沒受任何監管機構監管
(目前最常見就是以數位金融時代趨勢來臨…遊戲幣、虛擬幣為主要噱頭)

透過以上累積一定資金後,拿後面人進的錢給予前面進的人利息(所謂的後金補前金),一但後面進錢的人開始不足以支付前面人的利息時,這個盤就即將結束(爆掉)

*若您不幸已參與資金盤,建議可盡快解掉拿回本金
*若您已賺回本金,恭喜您,不是這個資金盤很正派,只是您投入很早,它還沒爆…別再加碼!


如何正確判定是否為正規金融投資工具三大基礎重點:
一、公司合法 (法律保障)
二、受金融監管單位監管
三、金流透明

總結:
天下無白吃的午餐,在做任何投資前,務必尋求專業並且三思而後行,現行大多數詐騙集團、資金盤騙局,多是利用人性(貪婪、恐懼、求快)心態,坦若遇見報酬高不合理情況下,切記先了解其合法、受監管和其獲利金流來源是否正常。

2017年3月6日 星期一

你愛讀的那些成功學雞湯,或許都是狗屎(轉貼)


作者:阿爾法虎
  金庸小說中的著名武林成功學秘笈《葵花寶典》提出了「欲練神功,引刀自宮」,聽了這話的東方不敗、岳不群和林平之是什麼下場大家也很瞭解了。由此可見,成功學可不能輕易聽信啊。

  成功學、勵志文學與身心靈修煉指南是三種不同方向的雞湯書籍,在各個線上書店乃至線下實體店類,它們卻經常被歸為一類。成功學的本質不是勵志,更不是麻痺神經的心靈雞湯,真正的成功學就像它的名字一樣,希望指導讀者追求人生、事業、金錢或者地位上的成功。在脈脈溫情的心靈雞湯中或許會讚賞你做一個「在路邊鼓掌的人」,但是狼性血腥的成功學宗旨還是鼓吹你要成為一將功成萬骨枯的人上人。走向異化的成功學:以成功學的鍋煮心靈雞湯,用成功學的碗盛洗腦雞血

  成功學並不是一開始就那麼庸俗,整天向你灌輸諸如「要成功,先發瘋,頭腦簡單往前沖!」這種玩意。一開始從美國發展起來的成功學其實還是希望通過幫助年輕人改善溝通技巧、發掘自我潛能來幫助他們走向人生巔峰。在成功學泥沙俱下的今天,仍然有些正經的成功學書籍確確實實想要教你一些經驗。只不過被大眾所熟知的成功學經過了中國特色的改造、無授權的編譯、本土儒釋道哲學的豐富,已經變成了四不像的東西。

  1、傳統西方成功學:傳統西方成功學以戴爾•卡耐基、拿破崙•希爾、吉米•羅恩以及安東尼•羅賓為代表,雖然他們奠定了一門熱賣的顯學,卻依然被人詬病為「便利店哲學」——廉價、方便、隨手可得但顛撲不破。傳統西方成功學的主要內容往往是人類世界已知的公理加上所謂的潛能開發培訓,基本上就是用高科技詞彙和行銷術語把正確的廢話轉述一遍。

是否廢話,自行判斷

  理解卡耐基等人所宣揚的成功學,要結合 20 世紀前葉美國經歷大蕭條和二戰創傷之後的社會復興背景。人人都能成功的理念十分符合美國夢價值觀,這種人人平等的奮鬥觀也是由美國《獨立宣言》所奠定且被無數美國人所信仰的。其實跟今天大眾創新,全民創業的中國夢價值觀是一樣

  成功學被民俗學家稱為「美國文化的堅實組成部分」,連遭遇萊溫斯基性醜聞被眾議院彈劾的克林頓也要依靠和人生導師安東尼•羅賓斯保持電話聯繫,才能度過心靈危機。

  2、進階版西方成功學:這一類成功學的作者多為各行業專家、企業經營大師、學者,有比較成體系的指導方法,加入了一些商業管理、金融理財、企業經營與心理學的知識。其中代表為史蒂芬•柯維的《高效能人士的 7 個習慣》、柯林斯的《從優秀到卓越》、羅伯特•清崎的《窮爸爸富爸爸》以及今年來大熱的瑪律科姆•格拉德威爾的《異類:不一樣的成功啟示錄》。這幾本書的的確確是在美國暢銷大賣過,它們沒有在無法統計的情況下,就隨便胡吹賣出上億冊。

  進階版西方成功學的特點就是一旦作者出了一本大賣的書,就會接二連三地出一系列類似的書籍,諸如《高效能人士的第八個習慣》、《高效能家庭的七個習慣》,其中翹楚為《窮爸爸富爸爸》系列,共有十幾本,跨度超過 10 年,讓人歎為觀止。

  3、名人成功學:名人成功學和名人傳記是有區別的,雖然傑克•威爾奇、約伯斯、希拉蕊、奧巴馬以及最近雪麗•桑德伯格的傳記都賣的不錯,但是能否成為名人成功學,還是要看書中是偏重個人經歷與成長的記錄還是偏重總結經驗、教化讀者。

  在國內網上書店熱賣的典型名人成功學多以自己的經歷為引子,加入一些人生指導,雞湯色彩更濃,參考性更低,更喜歡使用長句子與聳動的標題,喜歡為向讀者喊話。早期以劉墉為代表的名人成功學喜歡和風細雨地為你講愛與美的小故事,近年來該門類的流行趨勢是毒舌雞湯,直接用《你所謂的穩定不過是浪費生命》之類的聳動標題來抽你耳光,試圖把你打醒。其中代表為劉同的《你的孤獨,雖敗猶榮》、湯木的《不要讓未來的你,討厭現在的自己》等等。

  4、創業成功學:這一類成功學多由創業明星、著名風險投資人所寫,內容偏實戰,最負盛名的要數彼得•蒂爾的《從 0 到 1》。自從《精益創業》橫空出世,創業成功學業開始逐漸嶄露頭角,《從 0 到 1》達到了一個閱讀高峰,《創業維艱》延續此類成功學的路徑終於爬上了各類排行榜。

  在互聯網+大行其道的今天,創業成功學的發展空間更為廣闊,至少從書籍包裝和取名風格上看上去格調更高,適合職場人士放在案頭參考。如果你在桌上放一本《你所謂的穩定不過是浪費時間》,看上去就很像一個心智沒有成熟的憤怒青少年,假若你的老闆路過看到了你讀這種書,很有可能會在你今年生日的時候買一套《遇見未知的自己:都市身心靈修行課》送給你當成員工關懷福利。

  同樣是成功勵志的大門類,在不同的網上書店有著十分迥異的熱銷品種。在針對亞馬遜中國、當當以及京東的成功勵志分類書籍暢銷榜進行整理之後,發現了一些很有意思的東西:

  當當的用戶在挑選成功學書籍時更關注身心靈的修行,從書籍的選擇上看並不太功利主義地想要急於成功,更追求心靈的平和。

  京東的用戶們最關注的成功學書籍大多都是教你如何說話、聊天、說服他人,體現出了一種想要與人溝通的欲望。注意了,羅輯思維系列連續兩年出現在京東成功勵志暢銷榜前 20 中,這是當當與亞馬遜都沒有的現象。

  不知道是亞馬遜中國的分類出現了問題,還是它的用戶就是如此另類,在它的成功勵志暢銷前 20 榜單中居然出現了《夢的解析》與《烏合之眾》,不過前七名和其他兩個網站的排名還是基本吻合。

  除了上述在網上書店熱銷的四種成功學書籍之外,其實在國內還有兩種悶聲發大財的成功學,它們通常不會進入書店的熱銷榜,賣書這點錢人家根本就不放在眼裡。由中小企業老闆組成的粉絲群體上千上萬地自願為這兩種成功學貢獻鈔票,它們的作者斂財之快比那些賺一點版權稿費的寫書者不知道高到哪裡去了。

  機場書店洗腦成功學:又名致富成功學,主要針對的是銷售培訓、領導力提升、傳銷洗腦、保險推銷。機場書店是各類國產成功學大師的兵家必爭之地,其實他們的主要目的不是賣書和 DVD,而是希望看到了視頻的土老闆能夠親自參加培訓班或者請大師去給自己的上千員工授課。有不少土老闆既想要竭力壓榨員工工資又不想給他們上五險一金,那就只有通過高水準的成功學洗腦,才能讓員工們在被侮辱與被損害的情況下依舊做牛做馬地辛勤工作了。其中代表為陳安之的《賣產品不如賣自己》、余世維的《贏在執行》、梁凱恩的《超越極限》以及徐鶴寧的《銷售女神教你如何創造銷售奇跡》。



  朋友圈宇宙能量成功學:你是否在微信朋友圈裡見過熟人分享關於量子力學、萊布尼茨、霍金、宇宙大爆炸、能量等指引人生成功之路的雄文?

  這種玩神秘以及扯上古人的虎皮做大旗並不是中國的獨創。2007 年因為脫口秀女王奧普拉力推而暢銷的《秘密》一書中,作者就宣傳自己掌握了只有柏拉圖、伽利略、貝多芬、愛迪生與愛因斯坦等少數社會精英才掌握的「宇宙法則」,即人的思想和感受有一種吸引力和頻率,他們跟宇宙呼應震盪,會吸引著同樣頻率的事件。也就是說你成天想著要發財,就一定能發財。


  該類成功學的中國化改造就是加入了道家典籍、佛經、國學經典中的字句,道法自然+佛光開悟+提升自身能量成為了其核心,經過包裝推廣後,連算命卜卦都可以通往成功之路。其實這也能理解的,前幾年中小企業形勢大好時,土老闆們一個個都喜歡學習機場成功學回去給員工打雞血。等到最近兩三年宏觀經濟形式不好,實體經濟發展乏力,中小企業主又開始需要請大師來指點如何面對來自的社會、家庭、事業、情感等方面的心結。

  成功學雞湯作者是一個真正的英雄不問出身與出處的職業,作者本人無需獲得驚天動地的豐功偉業,也無需邏輯和嚴密的推理,只要能從故事中提煉出一套極具感染力的成功理論,就可開山授業。祖師卡耐基在寫出《人性的弱點》之前也不過是一個推銷員兼失敗的演員,僅憑教人們如何演講謀生。國產儒釋道成功學大師劉一秒成名前依靠電話銷售維生,在深圳的一間出租屋陽臺上自學成功學,此後與李陽(瘋狂英語的那一位)一起去美國「進修」,在夏威夷通過了赤足走過火烤鐵板的考驗,回來就變成大師。

劉一秒的成功學講座近乎一種宗教儀式
  成功學大師的成功你無法複製,因為其中很多人根本就是來路不明。研究命靈雙修的翟鴻燊的故事就近乎於離奇,小時候在公園和仙風道骨的老頭一起修行,長大了就讀中國國際工程學院(查無此校),在清北交複授課,美國國家大學客座教授(合法註冊但無校園無資金無學生的野雞大學),頭銜多到爆炸,曾經的百度詞條對其有著豐富的記錄,現在也幾乎清洗一空。

  老一輩大師的來路已經無從查起,所幸新一代成功學心靈雞湯作者們身世還比較清晰。比如寫作《你的孤獨,雖敗猶榮》的劉同,百度百科將其作為特色詞條來經營,資訊十分詳細,身高血型星座體重都能查到。

  年輕一輩成功學雞湯作者多從演講大賽、新東方講師以及求職節目嘉賓出發,能有這個起點,至少證明本人有一定的英語、演講與口才的底子。比如寫作《你只是看起來很努力》的李尚龍就在獲得 2010 年 6 月 CCTV 「希望英語 」演講風采大賽全國季軍之後,毅然從裝甲兵工程學院退學,進入新東方教授 GRE 單詞與四六級聽力。

  成功學大師的出路無非是演講、授課、開公司。不過即便自己寫了很多成功學,也未必能開好這公司。憑藉著《窮爸爸富爸爸》出了一系列十幾本書外加現金流遊戲的羅伯特•青崎就吹破了牛皮,在 2012 年時他名下的富裕全球公司申請了破產保護,因為該公司沒有按照法庭的判決為清崎早年的出書演講成功搭建平臺的習技公司支付近 2400 萬美元。有些成功學大師的公司雖然一直開著,但是開著開著就歪了,拍起了沒人看的電影,甚至搞起了詐騙與傳銷。

  網上風傳機場書店四大天王陳安之、梁凱恩、徐鶴甯與余世維都在搞傳銷,不可全信,可能確實有一些真真正正搞傳銷的非法組織使用了他們的視頻和教材去洗腦。而這些人在推廣宣傳自己的培訓課程時,也使用了傳銷最愛的發展下線返點的手段。

  成功學到底有沒有用,至今沒有一個公理。成功學的理論能否成立也無關緊要,重要的是說服並且讓讀者相信自己,以緩解他們對於未來不確定性的焦慮。想依靠讀幾本成功學就出任 CEO,迎娶白富美,走上人生巔峰,近乎於癡人說夢。不過如果只是將閱讀成功學作為一種情緒的發洩、人生的樂趣、消磨路上與廁上的時光,還是一個不錯的選擇。畢竟只要不去現場聽上千上萬的成功學課程,花上十幾塊買紙書或者幾塊錢買電子書(支持正版)已經是當今社會最為廉價的精神消遣。