熊寫代碼這三年:閱讀寫做與技術成長

本文是非技術向的隨筆,慎點!
熊寫代碼這三年:閱讀寫做與技術成長 從屬於 程序熊的自我修養系列。臨近畢業,隨手寫了篇隨筆,聊以記念我過去研究生三年間的技術之路,感謝陪伴我這三年的家人,感謝全部陪我一塊兒打拼過的戰友,感謝全部閱讀過我文章的陌生人。前端

本文是一篇種田流水文,但願以平淡的筆觸記錄筆者這三年的成長。本文總體大概會包括自我定位、閱讀、寫做、知識殿堂這幾個部分,爲了不過於正式就不分章節了。git

筆者的第一份工做從大三開始,在南京某家安全公司從事安全培訓與滲透平臺開發,兼職作作講師;老實說肚子裏沒幾滴墨水卻要對着臺下數百聽衆,搜腸刮肚地忽悠他們,很鍛鍊麪皮啊。後來某個來頭不小的二代找我說一塊兒創業吧,他想顛覆世界,問我敢不敢一塊兒。因而我就拉着身邊的兄弟走了出來,很感謝個人兩個舍友那些年裏給個人支持與包容,容忍了我作的那些傻逼的事情。如今想起來,我還挺佩服 CEO 勇氣的,竟敢找我來創業,真的是年輕啊。那個時候常常逛的是以 DZone 爲表明的這類網站,並不是說它們很差,不過確實太多的標題黨,動輒新一代產品或者性能提高 100%。那時的我太過年輕,才從農村出來尚不知城市套路深,輕信了這些標題黨,固然根本緣由仍是咱們毫無經驗,結果兩個月的時間開發出來的 Hybrid APP 啓動時間 20 多秒;當時我還一臉沒法理解爲何 CEO 會露出絕望的眼神,畢竟以前參加某軟件大賽的做品啓動要將近兩分鐘還獲得了好評。經歷了技術波折以後咱們老老實實回到了原生開發,接下來的一年多時間我技術上不必定成長多少,市面倒是見了很多,充分認識到關係不是萬能的、產品經理是必須的、需求是不能隨便變的、領導的話是不能輕易相信的等等等等。後來,公司黃了,一分錢沒賺到。後來,我參與到其餘的創業當中,滿懷熱情,也看着那些年的冬日裏熄滅的火苗。次數多了,也就不會痛了,印象比較深入地還參與過某在線婚慶創業,某 3D 打印創業等等,直至如今有時候會去妹子所在的某建築行業軟件服務公司幫幫忙。現在公司招人,我引覺得豪地能拿出來說誇公司的一大優勢就是,咱們公司有穩定收入,不會吃了上頓沒下頓,不會一朝入冬。想一想走過的路,有兩個本身打本身臉啪啪響的典型,一個是大二的時候推崇底層開發,裸寫機器碼,以爲 Web 不過是套模板的毫無前途的活計;另外一個是跟運營商接觸多了以爲傳統軟件行業裏都是觀念陳舊的老技術、毫無創新理念與創新動力。而後我如今主要依託於 Web 技術棧,在於政府合做的建築投標軟件行業裏混飯吃。這三年走過大江南北,到過萬里以外,見過異域風情,寫過數百萬字,賺到數十萬元。印象最深的是愛人相伴,友人相隨,笑過哭過,也有後悔。程序員

筆者囉囉嗦嗦這麼多,想表述的不過是認識你本身。天地不仁,萬物芻狗,咱們要相信勤奮是會有回報的;念念不忘,必有迴響,連機器都能經過大量學習優化模型,況且智人乎?筆者是早產兒,七個月的時候出生,差一點就不能跟這個世界說你好。從小略顯愚笨,弱於常人,就像筆者對於數學心有畏懼,這麼些年一直沒學好算法結構與機器學習。筆者也沒有過人的毅力與執着的態度,到如今也沒能真正的好好鍛鍊過,也沒能如預期般學完一個課程或者看完一本書。更多的時候我是想着怎麼跟本身妥協,尋找到真正可以完成的,精神與肉體上都能接受的方案。另外在將技術相關的東西以前,筆者仍是但願讀者能認清本身的定位,不是說必定要懷着莫大的熱情才能進入 IT 領域,而是儘量地找到本身的定位。我以爲很好的例子就是我夫人,當年也是在某外包公司作嵌入式碼農,天天工做都是痛苦萬分;後來慢慢地摸索,發掘了她某個最大的優點:以輕微的強迫症去作產品經理,女生特有的細心與品質決定了她能更好地去催促程序員趕進度。如今她同時實現了自我價值與集體價值,成爲了公司運轉的核心之一。知前路之漫漫,敢披荊而斬棘,相信你們都能找到合適本身的位置。github

化學中的放射性元素每每有所謂半衰期的概念,即某種特定物質的濃度通過某種反應下降到剩下初始時一半所消耗的時間。同理,知識的半衰期則是用於衡量知識的價值隨着時間流逝它消失的速度。相對變動較慢的醫學知識的半衰期約45年,物理學知識的半衰期是10年,而計算機知識的半衰期可能只有兩年,一直在激烈變化的互聯網領域知識可能只有幾個月。沉舟側畔千帆過,就像筆者在懷着被拋棄的恐懼在奮鬥中前行描述的,魚與熊掌不可兼得,放棄安逸的鐵飯碗而進入競爭激烈的 IT 行業,勢必會被後來者超越的,咱們只有不斷修修打打本身,才能不被這個時代所拋棄。古語有云,開卷有益,對於筆者的閱讀相關能夠參考某熊的閱讀與寫做平常 ,這裏不做贅述。不過回望本身的閱讀流程,我最初是從刷推酷的每日推薦開始,大概天天能看數百篇,選出有價值的放到 Pocket 裏面留待後看。後來慢慢的發現天天刷的列表裏面僅有兩三篇會被留存下來,慢慢的就轉向了 Reddit、HackerNews、Medium 這些;老實說筆者並不是崇洋媚外,不過目前來看中國的社區相對整個世界仍是一汪淺水,因此我默默地把公司默認搜索引擎設置成了 Google。在成長之初碎片化的閱讀頗有益處,雖然會感受很痛苦,彷彿被強行填食的鴨子,可是如破繭而出,幫你打開廣闊的世界。筆者如今逐步的有強迫本身去看書,雖然有時候跟看文章同樣一目十行,走馬觀花,可是不得不認可書和論文裏成體系的描述介紹不是碎片化的文章所能給予的。這裏推薦筆者前一陣子收集的追求技術之上的進階閱讀學習索引機器學習、深度學習與天然語言處理領域推薦的書籍列表面試

文以載道,歌以詠志。當咱們閱讀積累到了,天然就會造成本身的想法,而且想對這個世界說出來。筆者的寫做分爲兩步,首先是作筆記,然後是寫文章,厚積薄發,切不能強求。筆者最初作筆記的時候,不少朋友會質疑,記錄的筆記真的會去看嗎?是否是記錄以後就能記住了?答案天然是否認的,筆者一直以來鼓勵本身作筆記的動力並非讓本身不會遺忘,而是但願在下一次須要的時候可以以最快的速度學習讓本身回憶起以前的東西。筆者發現身邊不少人的學習能力並不弱,可是技術能力難以進步突破的問題倒是在於永遠都在重複學習,譬如筆者團隊中秉持崗位輪換的原則,可能作幾個月的服務端再輪換作一些簡單的前端,可是每次都須要從新學習,看不出什麼進步。羅曼羅蘭說過,多數人二十或三十多歲已經死了,他們變成本身的影子,不斷重複之前的本身。有時候咱們的筆記會是咱們生命存在的痕跡,讓你可以記得本身走過的路,踩過的坑。筆者如今大概分門別類地有兩千多篇筆記,斷斷續續地寫了二百多篇文章;並非說沒有積累就不能寫做,而是你沒有積累很難去進行長時間的持續地寫做。寫文章自己不只是讓你的思想曝光於世,讓別人幫你發現本身的不足;仍是很好的打造我的品牌,增長本身社區影響力的好方法。算法

若是你是前端新人或者技術新人,很建議從嘗試翻譯開始;InfoQ 網站包括其架構師月刊等一直是我認爲國內質量比較高的資訊來源之一,年後也有幸成爲了其社區編輯。我發現他們有個很不錯的任務領取與報酬機制,若是你但願相互督促,也能轉點零花錢,那麼能夠嘗試加入這個大社區,跟着你們一塊兒前行。數據庫

記得包法利夫人裏面有一句總結,淺薄且不甘平庸是最大的原罪;而在技術之路上,在沒有知識體系的狀況下,學習的知識都是相互獨立,難以互相借鑑,觸類旁通,閱讀也不過是春風拂面,一掠而過,不留痕跡,知識也就難以真正的沉澱下來。筆者很是支持承認碎片化學習的思想,可是否認在沒有知識體系的狀況下盲目的碎片化學習。特別是對於還沒有創建基礎知識體系與認知能力的同窗,若是突發性地吸取過多的知識,反而會摧毀本身的認知能力。就好像傳說中的吸星大法,亂吸的後果就是體內真氣斑駁不堪,最終走火入魔,爆體而亡。所以咱們必需要創建本身的知識體系與思惟宮殿,梭羅在《瓦爾登湖》中寫道:知道本身知道什麼,也知道本身不知道什麼,這就是真正的知識。知我所知是對於本身能力的正確認識,知我所不知則能爲本身將來的路明確些方向。筆者關於本身的對於軟件世界的認知寫在了2016-個人技術之路:編程知識體系結構圖裏。Program into Your Language, Not in It.編程

前端工程化這個詞一直很火,筆者在 2016-個人前端之路:工具化與工程化2015-個人前端之路:數據流驅動的界面 這兩篇年度總結裏都有詳細的不成熟的自我思想的介紹。記得面試騰訊的時候面試官問道你這麼激進地使用現代語法,使用 Babel 而後致使包體增倍怎麼能兼顧老舊瀏覽器或者帶寬上不是很好的地方的用戶呢?我默默想起了如今公司碰到的一個有趣的事件,咱們作的某個投標工具(Web & Electron)對於瀏覽器或者系統有較高要求,可是政府客戶典型的標配 XP 與 IE。咱們思考了很久如何去達成兼容性,最後歐了一波筆記本電腦跟軟件產品打包發售,還額外賺了一筆的說。工程作久了,有時候會發現本身陷入到某種瓶頸。本節可能過於主觀了,對於咱們所熟知的雲計算與大數據、服務端應用程序架構(API、微服務與高可用等)、基礎架構(數據存儲、虛擬化、分佈式系統與集羣計算等)等等偏工程的進階之路,老實說並非螺絲釘們所能輕易實踐的。筆者以前一直感慨於混跡在小公司之間,所謂大數據不過鏡花水月,很難真正有實踐的場景。除了工程向的進階以外,筆者我的主觀感受還有兩個偏理論的進階向,即便不能有所實際成就也能提高我的品味的方向,一個是偏向於數據學科與人工智能,包括機器學習、深度學習、天然語言處理等等;另外一個是偏向編程語言原理、計算機系統基礎理論、數據庫系統基礎理論的方向。筆者本科的時候發了四五篇文章,遺憾的是在南大的三年未能投身學術,一文未發,愧對師長。有時候看着其餘同窗仰望星空,本身只能默默在沼澤地裏蹣跚前行。segmentfault

本文最後,筆者仍是想對於全部閱讀過個人文章的朋友說聲謝謝,大家的支持是我前行的動力,但願在將來的歲月裏我可以繼續完善個人知識體系中的內容,也但願可以幫助到全部花時間閱讀我文章的人。誠如羅胖所說,將來的世界是時間的戰場,願意花時間閱讀的朋友自己也是一種付出。筆者這些年來一直筆耕不綴,不過寫的絕大部分都是屬於某個領域中某個技術細節的介紹與實踐總結,借這篇隨筆之際,筆者也是打算以隨筆的方式,描述本身對於編程的認知、感悟、猜測,由於這個系列更多的是非技術性的思考,但願能獲得真正的你們指導,與其餘人思惟碰撞。筆者不敢取名爲程序員的自我修養,畢竟筆者本身都不知道本身是否稱得上合格的程序員,所以取名爲程序熊的自我修養。【程序熊的自我修養】系列擬會包含如下部分:前端工程化

  • 【程序熊的自我修養】知識體系與自我定位

  • 【程序熊的自我修養】閱讀與積累

  • 【程序熊的自我修養】工具與實戰

  • 【程序熊的自我修養】產品與工程化

  • 【程序熊的自我修養】編程之道:編程語言、數據結構與算法、編程範式

  • 【程序熊的自我修養】Web 前端

  • 【程序熊的自我修養】服務端應用程序架構

  • 【程序熊的自我修養】數據科學與人工智能

相關文章
相關標籤/搜索