凌晨開始寫, 我都有點夢遊了, 有不對的地方請諒解.前端
過去一年互聯網上看到過好多關於中國製造的讚譽的聲音,
好比手機行業的崛起, 好比陸續披露的各類超級工程, 以及在國外的成就,
中國中低端製造業簡直稱霸全球了, 相比前一年的新聞很是樂觀,
而美國和一些西方國家仍然佔據高端部分, 好比手機芯片, 知識產權等等.
我就在想, 軟件行業呢, 軟件的製造和服務, 咱們作到廉價和高效了嗎?程序員
早先國產的產品經常有山寨的名字, 好比說手機, 模仿蘋果,
今年看來, 好多手機廠商開始跑在前頭, 漸漸有一些驚喜出來.
在軟件行業, 山寨國外網站商業模式甚至界面的事情也很多了,
可是到今年, 漸漸有一些 Facebook 模仿微信的聲音,
我想製造業和軟件行業應該會有至關多的共性, 因而就有前面這個問題,
當國產手機開始進攻國外市場, 製造作到了, 軟件行業有這個能耐了麼?算法
我作前端, 實際上我大部分時間在刷國外的社區的新聞, 而較少國內,
其實很容易對二者的差距有切身的體會, 新聞幾乎都是國外的!
偶爾會有淘寶發佈了什麼, 或者騰訊, 可是平時都是國外的大廠,
咱們的社區裏在討論哪一個框架好, 而國外老是在生產着各類框架類庫,
國內逐漸有成羣體的程序員出如今知乎, 微博, 在各類論壇, 愈來愈大的人羣,
可是不多看到前端程序員從編譯原理層級討論, 雖然英文社區也不是很是多,
我想說從中能看到兩個羣體的程序員之間不小的差距.編程
隨着近些年社交媒體的發展, 網絡社區發達, 逐漸增多的線下活動,
能夠看到技術前沿的信息傳播的延時在減少, 好比 Swift 文檔神奇的翻譯速度,
並且不少人樂忠於轉載甚至翻譯英文社區的技術資源到中文,
這些都在代表咱們正在快速地追趕, 只是不知道多久才能追上,
同時技術在換代, 好比 WebAssembly 正在制定規範, 參與的好像都是外國人,
咱們在追, 他們在跑, 究竟又是誰更快呢, 我也看不清說不清.
此外除了編程語言咱們還有框架, 還有平臺, 都須要追趕.小程序
近些年個人思惟改變也不小, 熱衷於學習那些經濟方面的網紅,
好比某個用貨幣戰爭爲線索梳理各類歷史和國家戰略的人,
或者某個每週三晚上評論一遍經濟話題的人, 以及他的寵物,
或者某個作投資的天天更新一個對科技前沿的解讀的人,
他們看待 IT 行業和經濟時事的視角和方式讓我極爲欽佩,
帶上這樣的視角, 再回來看軟件行業各個大廠的競爭, 簡直暗流涌動.
個人知識量很難說能夠把事情看清, 但看上去比一兩年前條理多了.後端
製造業自己彷佛跟人口紅利有關, 龐大的人口和城市化帶來的工人的規模,
也許還加上國人的吃苦耐勞, 解釋了中低端製造業的產品的優點,
然而軟件行業並不大同樣, 有個段子說寧願價錢招高手也不要分紅招十我的,
更不用說 AI 了, AI 將會解放大量的人力. 機器和科技會彌補人口的差距,
而計算機領域的教育呢, 至少從圈子裏的聲音很難感受何時能追上英文社區,
我在前端圈接觸到好多人都是自學, 還有不少創業的人是輟學, 而不是本專業,
與之對比, 國外偶爾看到人說十歲開始學編程, 還有說編程三十年, 怎麼比?
也許真的到咱們這邊從小寫代碼的人長大, 這個差距才能追上.瀏覽器
做爲外行來看待制造業, 競爭力要當作本, 售價, 生產速度, 質量和售後,
去掉售價這個全球共通的因素, 就是成本, 速度, 質量了,
固然這些因素類比到軟件行業, 總會涉及到各類複雜概念, 我不期望能弄清楚,
大概說這些吧, 底層工具的可靠性, 業務代碼的可靠性, 時間人力成本, 設計,
提及來就是公司技術的積累和人才的素質, 這兩個都有被拉開差距的吧.微信
公司層面好比華爲再到如今靠的是這麼多年巨大的科研投入,
新興的廠商好比小米, 在短暫的時間內能作到什麼程度, 咱們還不知道,
但這無論怎樣下定決心之後幾年甚至十年的時間仍是會要的吧?
假如說國內人品暴走作出了一個強大的 VR 操做系統, 怎麼說,
VR 會有大量的計算速度的需求, 有大量防眩暈的需求, 還有從新定義人機交互,
中間都會有大量的工做, 要造成競爭力要多少技術積累, 一兩年能作到嗎?網絡
而後是人的因素, 要解決好比 VR 這麼多問題, 就對應到那麼多的簡歷,
須要大量的交互經驗, 高性能的圖形開發, 3D 體感和空間計算, 還有更多,
已有的程序員經過什麼途徑獲取知識? 博客, 聚會, 別人的代碼, 工做經歷,
是的咱們學東西是很是快, 可是若是沒有先例能夠去學呢? 沒有框架沒有代碼?
好比編程, 若是沒有前人作過, 就須要去讀 paper 寫算法本身去作,
極端的還有本身去研究. 咱們如今有這樣的實力麼? 精通操做系統和編譯原理?app
至少從前端開發的行業看來, 我感到很是地被動, 主流框架幾乎都是國外的,
也許如今好多了, 我剛入行時候說國外某某公司怎麼, 被人吐槽崇洋媚外過,
如今你們很清楚, Google 主導着瀏覽器, Facebook 主導着一個框架,
這個有着衆多中文開發者的號稱開放標準的平臺, 誰最有話語權?
固然是開發瀏覽器的人, 制定 ECMAScript 規範的人, 那主要都是誰呢?
咱們在說移動通訊標準, 華爲搶下 5G 的某個什麼的時候. 編程領域咱們有什麼?
固然短時間來講以咱們的差距, 咱們甚至是後發優點, 可是微軟跟網景競爭總聽過了吧,
假如咱們追上, 到了那個量級, 別人手裏捏着標準, 而後發生競爭, 會怎樣?
我也考慮另外的可能性, 好比小種語言小衆社區, 若是咱們早點切入,
而後跟着社區成長, 咱們有一席之地, 等到社區壯大, 就有咱們說話的地方,
好比 Elixir, 這門語言新興, 沒幾年, Conf 都只開了兩屆,
以我國的人口, 若是有那個幾十我的活躍在當中, 對社區來講至關多了,
可是回到現實, 若是要深刻 Elixir, 得有深刻的 Erlang 的經驗, 多少人有,
其餘新興的小衆社區, Clojure, 甚至 Haskell, 門檻更高,
卻是 Go 社區這些年風風火火看到有很多的人, beego 也是風光了.
回到前端來, 這些年重大的創新, 有咱們參與麼, 算咱們驕傲麼?
咱們須要有足夠的高素質的程序員才能在這方面取得優點和好處,
呃.. 也許有點像我沒睡醒在說夢話, 你們寫代碼主要是爲的謀生纔對,
我想說換個角度, 好比你公司上級創業, 缺人, 還有技術搞不定,
而後你上, 結果坑多得要死你徹底忙不過來, 而後想挖人, 一看國內沒人可挖, 坑吧.
或者你用了國外的代碼有功能缺失, 費盡力氣找到解決方案, 但願官方解決,
結果官方沒時間 review 代碼, 你只能一直用有問題的版本,
若是本身 fork, 還有面臨新的代碼跟官方的代碼衝突的問題, 只能本身解決.
我只是想說這個事情真的是重要的, 不然會消耗不少時間金錢.
目前看來很難單純依靠學校教育把總體的素質提升上去了,
前端以寫教材都跟不上的速度在往前發展, 還不止往一個方向,
咱們更不可能先不工做幾年, 好好學習這些東西, 房價新聞也不少啊,
只剩下說創建社羣, 儘可能把學習技術的成本壓縮下來, 讓你們更快能遇上,
好比說, 儘快用檢驗完成的新技術替換掉舊技術, 效率落後的技術還學個什麼勁,
還有經過社區的信息量夯實基礎, 常見問題看別人接連犯錯, 旁邊幹看也能看明白了,
以及擴大人羣, 讓真正聰明的人能進入到編程的領域, 帶來技術的突破,
咱們甚至須要學習的梯度, 由於高手寫東西新手看不懂, 好比 Haskell 社區的狀況.
就是說有個成熟的社區, 按說是能夠很大程度下降學習成本的.
具體關於社區, 我從前也討論了, 新聞, 文檔, 通信工具, 博客討論等等,
咱們須要論壇, 微博, 我的博客, 問答網站, IM, Wiki, 各類形式和各類人,
甚至還要有線下聚會, 要有擅長 PPT 和演講的人, 還要交際花,
首先咱們要掌握消化國外技術的能力, 而後想辦法積累本身的技術,
到後面咱們才能造成足夠的競爭力. 至於跟 Google 同臺競技? 好吧我是不敢想.
以此爲假想吧, 咱們走到哪一步了? 咱們遇到哪些瓶頸了? 接下來作什麼?
咱們有 V2ex 有知乎某些意見領袖了, 有 Go, Ruby, Node, React 各類中文論壇,
也有了 Segmentfault 這樣綜合性的純技術網站, 以及一些年代早一些的社區.
接下來咱們須要的是什麼? 什麼樣的方案是有效的?
其中一些也是我這些年思考 React 社區的事情的邏輯, 首先我微博刷了大量新聞,
而後一塊兒弄了 React 論壇, 在微博建立了抓新聞的機器人, 接着還有微信羣,
同時更多我之外的人還弄了 QQ 羣, 各類線下分享, 各類博客等等,
對我來講參與進中文社區的建立, 幫我認識了不少厲害的人, 還有他們作的事情,
我也看到微信羣他們會聊複雜到我對付不了的各類技術細節, 真慶幸他們都是本身人,
同時, 我也明白這不夠, 文檔整理, 聊天室, 技術探索, 新人引導, 各類不足,
而不少超出個人能力了, 或者我其實也沒那個決心或者那種資源.
到我我的吧, React 那麼多問題, 明天 Facebook 會不會把 js 撤了放新語言上來?
會不會很快 React 被淘汰了, 這是更加困擾個人問題, 到時候我怎麼辦,
要注意, 我是自學的程序員, 若是技術換了, 那些年輕人確定是學得比我快的,
Chrome 每月都會更新, API 一直在調整, 連 js 都一年好幾個版本,
因此我對 js 並不珍重, 我須要更可靠的技術棧. 熟悉個人人知道我在賭 Clojure.
年初休息的幾個月我花大量時間寫 cljs, 年末在 D2 作了一些分享, 我安穩了不少,
若是明年 Facebook 強推 Reason, 不少人也許頭疼, 但我至少已經作了不少準備.
新技術其實還關係到一個成本的問題, 好比當年福特 T 型車壓成本的事情,
固然如今還有今年國產千元機的事蹟. 某種程度上軟件行業更多壓縮成本的例子,
從前寫軟件要大量的人一塊兒協做, 如今一我的就能作出小的 app,
創業公司變得一個後端幾個前端加移動端, 而後就能作產品了,
可是, 即使壓縮成本, 科技自己的含量倒是急劇上升, 實際上整個技術棧成本不是在下降,
甚至是在升高, 只是說, 在當前的環境中獲取上游產品的成本下降了,
強行舉例, 好比從前只有一家公司賣芯片, 很貴, 但如今你們都作, 就便宜了.
以此能夠解釋 FP 語言好比 Clojure 爲何我說成本低, 實際上卻門檻更高.
隨着更多人用 cljs 的理念編寫界面, 我認爲將會遭遇更少的問題, 也就是成本低,
可是學習 Clojure, 特別是沒有足夠中文資料和中文社區的狀況下, 成本很大,
這麼多年耳濡目染, js 已經信手拈來了, Grunt Gulp Webpack 花那麼多力氣學會了,
到 Clojure 語言變了, 編譯工具變了, 社區認不出來, 都是英文, 合算麼?
這筆帳很差算. 可是站在個人角度, 我會 Clojure, 我看到 js 那麼多坑, 我是憂心忡忡的.
好比 JSX, 當年 coffee 中徹底不是問題, 而 ES6 你們還在吐槽 JSX 有問題. 讓我怎麼說好.
並且明年的 WebAssembly, 我看過別人社區的人吐槽 js 的各類言論,
我有理由擔憂幾個大廠聯合發動了產業升級, 要強行替代掉舊的技術,
js 成爲熱門技術最近十年的事情, 不少前端好比我, 入行也就四五年,
可是站在 Java 或者 Objective-C 的角度, js 就是攪局啊, 搶走了一大塊蛋糕,
如今有別的技術來搶 js 的市場, 背後三個大廠撐腰, 會不會就搞成了? 頗有可能啊.
固然 wasm 是底層技術, 有專門寫編譯器的職業分工, 通常人不用擔憂,
可是長遠看呢, 你的 app 天天有千萬用戶, 競爭對手打開網頁飛快, 你能安心繼續 js 麼?
過去一年還發生了不少事情, 大概是叫 O2O 吧, 我學會了訂外賣, 手機打車,
我還體驗了一次飛豬直接訂賓館, 還有掃描騎自行車, 手機買地鐵票,
固然也怪我本身沒能力, 可是若是去一個新的城市遊玩, 這些都很成問題,
地圖的問題早些年已經解決了, 各類生活化的服務, 還有信用方面, 仍然在完善中,
無論怎樣我這種小城鎮進城的死宅也能刷高鐵出去玩, 至少沒之前那麼困擾了.
隨着互聯網行業的發力, 狀況會愈來愈好, 就像我在新城商業視頻裏看到的那樣,
不久之後我能從 app 上直接租賃別人空間的空間用來辦公或者其餘事情,
也許幾年後真的另外一個地區就像去上海另外一個區那麼方便也說不定.
還有按照某人的預言, 明年無線充電技術成熟會逐漸進入市場, 有的玩了,
我也記不大清楚哪些廠商承諾了要在 2017 年發佈什麼技術的,
最關心的是 Weex 和 WebAssembly, 一個關係到我工做, 一個關係到會不會丟工做,
Clojure 已經處於穩定狀態, cljs 應該很快會有對 ES6 模塊的支持, 算是重大利好,
Webpack 2 經歷了一個季度的跳票, 終於迎來了 RC 版本, Larkin 曬娃也是看夠了,
React Fiber 快成了, 不關心, 反而 Jordan 前天發 ReasonML 的 demo 暗藏殺機.
若是 ReasonML 真能成氣候, FP 也許又會刷一波新聞, 我反正已經笨鳥先飛了.
後端語言 Go 和 Elixir 要盯兩眼, Clojure 已經山寨了 Go, 不知道不會繼續下手,
Vue 2 已經算是搞好了吧, 我後面就圍觀 Weex 方向怎麼發力了, 小程序還沒看.
對了 CoffeeScript 2.x 正在 alpha, 官網都好了, 就差 class 部分, 快了.
固然憂心的事情也不少, 說了幾年的要學後端要學設計, 到如今沒有可靠的路徑,
因爲我在 Clojure 和前端要花不少精力, 其實很難踏踏實實一點一點學,
某種程度上我擔憂之後我更難學東西了, 並且年齡增長自己就會削弱學習能力.
同時蒼白的戀愛經歷讓我對本身的宅屬性也感覺到了愈來愈大的壓力,
我不知道成天上網的人羣以外的人都在想些什麼, 玩些什麼, 加上我原本就是獨處的性格,
我也不熟悉杭州上海蘇州以外其餘地方, 可是我工做好幾年了, 還能逃避多久?
我也沒參加過一次 Clojure Conf, 社區的大神網上都不愛搭理我, 感受很孤立.
仔細去想, 頭疼的事情很多, 我也是躲着. 俗話說報喜不報憂吧, 點到爲止.
2016 年對我來講是個轉折, 前面三年寫的單頁面應用, 投入了大量的精力,
年初硬生生把本身變成了 Clojure 程序員, 工做方面也脫離了 React,
曾經的 React 中文站長, 在 Vue 程序員組裏給移動 app 寫 Weex, 的周邊...
去年春節我曾詢問 cljs 的工做, 可是新年將至我更加確信 Clojure 在國內的小衆,
外人看我恐怕更像是爲的代碼潔癖才變身 Clojure 程序員, 屬於過度激進,
並且對於 Clojure 實用性的判斷, 推廣的進度, 有很嚴重的時間上的誤判,
結果反而致使 React 中文社區出現了投入不足, 正好是 Vue 風頭正盛的時候.
好吧, 雖然我堅持不可變數據優於 Observable, 但 Vue 的成就和前景無可置疑.
也正好是曉鬆奇談播放最後一集的時候, 就像其中女粉絲正忙着傷感那樣她說本身都已經成年了, 聽了高曉鬆的節目, 價值觀仍然在改變.某種程度上我也是, 從宋鴻兵, 從高曉鬆, 從王煜全, 從吳曉波等等, 我學到好多東西,那些東西我家長沒能力教我, 我老師未曾教我, 我同窗同事也不能教我,甚至從書裏我也學不到, 而這些深深改變着個人世界觀, 改變着我對本身的指望,他們教了我不少歷史和當下, 讓我在思考時有了更多的知識儲備和視角,就像高曉鬆說的, 若是都不知道世界是什麼樣, 歷史是什麼樣, 還怎麼造成獨立思考?而他們帶給個人, 絲絕不遜於編程領域我投入那麼多時間所學習到的,世界依舊很大, 咱們依然眇小.