自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為什么你招聘不到程序員,以及軟件如何定義現(xiàn)實(shí)世界

開發(fā) 前端
最近一段時間,我周圍很多其他行業(yè)的朋友都跑來問我,是不是他們應(yīng)該學(xué)寫一點(diǎn)程序。我通常都回答,只要你有興趣,學(xué)的下去,那就當(dāng)然應(yīng)該。就算不能 成為職業(yè)程序員,在這個軟件定義一切的行業(yè)里面,理解程序如何產(chǎn)生,理解程序員如何工作,那就一定會有一份更好的職業(yè)機(jī)會等著你。為什么不學(xué)呢?

文/霍炬

2015 年,互聯(lián)網(wǎng)創(chuàng)業(yè)從火熱到“寒冷“,但有一件事全年都沒有變化,就是大家都覺得招聘不到程序員。 我沒有確切的數(shù)字知道 2015 年這一年程序員的薪資增長的比例,但是我確切的知道,在 2015 年,一個有3~4 年工作經(jīng)驗的年輕程序員,在北京和上海能拿到的薪水已經(jīng)接近 2010 年盛大創(chuàng)新院給我的薪水了。要知道,2010 年盛大為了創(chuàng)建創(chuàng)新院,給出的是業(yè)界頂級的薪水,而且那時候我已經(jīng)有 8 年的工作經(jīng)驗了。這不過是 5 年前的事,今天,3 年工作經(jīng)驗的程序員薪水已經(jīng)到了這個水平。在中國,大概唯一增長率可以比的上北上廣房產(chǎn)的,就是程序員的薪水了。

 

很多人人根本拒絕相信這件事,不僅僅這個行業(yè)之外的人,甚至連這個行業(yè)之內(nèi)的人也覺得非常不可思議。但所有人不得不面對的一個事實(shí)是:當(dāng)你需要程序 員的時候,會發(fā)現(xiàn)根本招聘不到程序員。那個“所有都準(zhǔn)備好了,只差一個程序員就可以開工了” 完全不是笑話,我知道無數(shù)個項目,都是真的就差一個程序員了。

但是,他們就是招聘不到這個急需程序員。

還有很多人的看法是,過幾年程序員就好招聘了,現(xiàn)在只是泡沫時期罷了。甚至還有人認(rèn)為,過幾年我們就不需要程序員了,因為有更多的工具可以幫助生成 軟件。不好意思,這兩種想法都不是 2015 年才有的,從 1995 年,甚至 1985 年,這兩種看法就存在了。30 年來,泡沫起了一輪又一輪,破了一輪又一輪,自動化工具也確實(shí)出了一個又一個,更多的平臺也被建立起來,確實(shí)某種程度人,一些人可以“不需要寫程序”,也 能 *開始* 進(jìn)行互聯(lián)網(wǎng)創(chuàng)業(yè)。但是,幾十年來程序員的需求始終是上升的,符合需求,能寫出可用代碼的程序員從來沒好 招聘過,這個職業(yè)一直處于一種古怪到近乎瘋狂的供不應(yīng)求階段。回頭來看,就算是 2008 年金融危機(jī)的大崩潰時刻,全世界范圍內(nèi),程序員好招聘也只持續(xù)了半年。美國 H1b 簽證只有 2008 年沒用滿,之后每一年都要抽簽才能獲得,無數(shù)中國和印度的程序員急盼簽證。

“不需要寫程序就可以進(jìn)行互聯(lián)網(wǎng)創(chuàng)業(yè)”,這個倒是某種意義上是實(shí)現(xiàn)了。不過并不是有自動生成軟件的工具,而是各種應(yīng)用平臺發(fā)展起來了。比如,一個專 心內(nèi)容創(chuàng)業(yè)的人,用微信公眾帳號就可以開始,一行程序都不用寫。但是不要忘記,這些平臺背后,仍然是無數(shù)程序員的工作成果。就算是用微信公眾平臺開始了創(chuàng) 業(yè),如果規(guī)模發(fā)展的大一點(diǎn),終究還是要寫一些程序的,要么是自己的 App/社區(qū),要么是 HTML5 做的各種活動,或者是用微信 SDK 接口做的各種自動化功能??傊?,早晚你還是要寫點(diǎn)程序的。如果換個角度看,像微信公眾平臺這類應(yīng)用,只不過是把過去沒有寫程序能力的人拉了上來可以有個開 始,等其中的強(qiáng)者被篩選出來之后,他們又回到要雇程序員的境地。這么一看,這些平臺不僅沒有減少程序員的職位,反而擴(kuò)大了需求。如果沒有公眾平臺,可能很 多創(chuàng)業(yè)者壓根到不了需要程序員支持這一天,也賺不到錢去養(yǎng)活一個程序員,現(xiàn)在,他們中的成功者終于可以活到這一天,加入競聘程序員的行列了…

這個世界對程序員的需求幾十年沒降低,按照我的觀點(diǎn),甚至未來幾十年也不會降低,薪酬也只會持續(xù)上升。各種社交平臺上,也會見到各種惡毒嘲笑諷刺程 序員的人和段子(基本來自傳統(tǒng)行業(yè),他們大概覺得自己一輩子也不需要好好的和程序員打交道吧),這些人顯然是不相信我這個看法的。無論相信不相信,眼前的 情況就是這樣的。為什么程序員會這么難招聘,背后的原因是什么?要回答這個問題,我一般會推薦對方看一篇文章,叫做《軟件正在吞噬整個世界》,這是 2011 年美國著名風(fēng)投 Andreessen Horowitz 創(chuàng)始人 Marc Andreessen 寫的文章。今天看來,這篇文章的意義顯然被低估了,Andreessen 寫過很多文章,但這無疑是最重要的一篇,也是對未來的指向最清晰的一篇。但別說 2011 年,就算是今天,也很少有人真正理解它的重要性。這篇文章并不長,看完我這篇,推薦找來再讀一遍,相信你會有新感受。

我一直非常推崇這篇文章的看法和遠(yuǎn)見,但是,我覺得他用的“吞噬”(Eating)這個詞并不好,它沒有能精確體現(xiàn)真實(shí)情況,我更愿意使用的詞是“定義”(defining)。“軟件定義現(xiàn)實(shí)世界”,這算是我發(fā)明的一個新詞。我這篇文章要寫的,就是關(guān)于軟件是何如定義現(xiàn)實(shí)世界的。

今年 3 月份的時候,我在杭州和一個朋友聊天,我們叫她夕總,是做傳統(tǒng)行業(yè)的。她很驚訝程序員為什么這么難招聘。我給她大致描述了越來越多的行業(yè)開始使用軟件來替 代傳統(tǒng)人力勞動的狀況。她恍然大悟的說:“啊,我知道了,我家小區(qū)過去是個老大爺負(fù)責(zé)收停車費(fèi),現(xiàn)在變成了完全自動刷卡進(jìn)入。所以,很多個老大爺被軟件替 代了,軟件又需要程序員來開發(fā)和維護(hù)?” 這個例子找的非常準(zhǔn)確,從一個具體的案例來看,就是這樣的。她敏銳的抓住了現(xiàn)實(shí)世界最基層的情況。我也繼續(xù)用這個例子做為背景說下去。

圖片:以前是這樣的

 

[[163501]]

圖片:以后都是這樣的了…

 

[[163502]]

當(dāng)我們用一套停車場管理系統(tǒng),替代了停車場管理員(那個老大爺)之后,整件事情改變了什么?它并不僅僅是節(jié)約了一個老大爺?shù)娜肆Τ杀具@么簡單,僅僅 節(jié)約人力成本的價值并不大,因為基層體力勞動的人力成本是相當(dāng)有限的,節(jié)約 20 個老大爺?shù)墓べY,也未必能比得上一個程序員的工資支出。

比節(jié)約一個人的人力成本更重要的是,我們用軟件來規(guī)范了停車場的行為,即所謂“定義”。在使用軟件之前,停車場管理員是有很大權(quán)利的,很多人都知 道,給停車場管理員塞一包煙,他可能就會少收你 20 塊錢停車費(fèi)。甚至很多停車場管理員會直接把停車費(fèi)塞到自己口袋里面,如果你沒要停車發(fā)票的話。停車場的運(yùn)營是沒辦法監(jiān)督這種行為,要監(jiān)督,就需要付出巨大 的人力,甚至冒很大風(fēng)險。有了軟件系統(tǒng)之后,一切都不一樣了。不再需要去監(jiān)督這種往自己口袋里面塞錢的行為了,只要軟件沒有能被他們找到的漏洞,一切都變 成了非常規(guī)范的行為。開車來的車主進(jìn)入停車場的時候取卡,系統(tǒng)拍下車牌照,出停車場的時候自動計時收費(fèi),付錢之后停車場出口才打開,車才能離開。這個過程 可以完全沒有人力參與,就算是保留那個停車場老大爺?shù)穆毼粊碜鰬?yīng)急工作,他的行為也是嚴(yán)格被軟件規(guī)范的。不交錢,停車場出口不打開,車就沒法離開停車場, 這是一條被明確定義了的基本規(guī)則,除非暴力去破壞停車場設(shè)施,否則,一切都是被軟件管理的,人改變不了什么。從此,整個過程中不會再有錢的損耗,停車場運(yùn) 營方會獲得更多收益。這些收益中的一部分,就變成了軟件公司的利潤,軟件公司利潤的一部分,變成了程序員工資。

這就是軟件企業(yè)為何有巨大盈利,程序員工資為什么這么高的原因。僅從這個例子看,軟件沒有創(chuàng)造新的價值,但是在若干傳統(tǒng)行業(yè)中,軟件奪回了一部分人 本來不應(yīng)該拿到的錢,把這些錢重新變成了利潤,程序員分享了這部分利潤。在這個停車場的例子中,按道理說,停車場管理員的收入只應(yīng)該是一份工資,不包括偷 偷塞到口袋里面的停車費(fèi),但是如果沒有軟件,這種行為是沒法阻止的,一定會有很大一筆錢流到不應(yīng)該獲得它們的人手里。另外一方面看,在車主這邊,他們的行 為也被定義了。過去很多人是愿意接受 10 塊錢買一包煙,省 20 塊錢停車費(fèi)這種設(shè)定的。但在軟件管理之下,這種利益交換沒機(jī)會發(fā)生了。在這個停車場的案例中,參與業(yè)務(wù)的兩方行為都被軟件重新規(guī)范和定義了。

整個過程可以這樣看:在軟件企業(yè)的幫助下,現(xiàn)實(shí)世界的資金流向被重新分配了。這就是“軟件定義現(xiàn)實(shí)世界”。軟件重新定義了社會規(guī)則,定義了人的行為。當(dāng)然,目前軟件還只是體現(xiàn)了業(yè)務(wù)人員的意愿,在這個階段,更確切的說法是:軟件幫助人們重新定義社會規(guī)則。

這只是個開始。我們站的高一點(diǎn)看這個已經(jīng)被軟件接管了的停車場。你會發(fā)現(xiàn),關(guān)于它的細(xì)節(jié)都被隱藏了,你只知道它存在著接口(Interface)。 所謂接口,就是對資源的一種抽象,我們知道它提供什么,比如在這里例子中,可能是停車場有多少空車位,已經(jīng)停有多少車,每天有多少收益,停車場的位置在 哪…等等,具體的細(xì)節(jié),被裝進(jìn)了一個黑箱子里面,我們不再關(guān)心它。比如,一個軟件管理的停車場還有沒有看車?yán)洗鬆?,這就算細(xì)節(jié),在這種視角下,我們不再關(guān) 心這個人是否存在,也不關(guān)心他在做什么,因為已經(jīng)用軟件定義好了他的行為,這時候我們只關(guān)心提供結(jié)果的接口即可。

在軟件世界中,知道了接口,就可以使用這一份資源。從此,我們把這個停車場可以看作軟件世界里存在的一個單元(Unit), 剛才說了,它的現(xiàn)實(shí)狀況已經(jīng)被裝進(jìn)黑箱子屏蔽掉了。如果你只有一個這樣的單元,它只能用來規(guī)范基本行為,但如果你在相鄰街道再有一個這樣的“停車場單 元”,這時候就能開始有一些新的變化了。比如,停車場單元A已經(jīng)幾乎停滿了,但停車場單元B還空著一半車位,這時候就可以通過軟件來調(diào)整資源,讓車主盡量 往停車場B停。具體手段有很多,比如通過智能手機(jī)發(fā)送一條消息,告訴正在開來的車主,停車場A要排隊 10 分鐘,停車場B排隊 1 分鐘就可進(jìn)入。自然可以分流一部分人到停車場B。甚至是把停車場B的停車價格降價 10%,吸引更多人前往。這些實(shí)時的,根據(jù)資源剩余情況的動態(tài)配置,利用傳統(tǒng)手段是不可能做到的。一方面是傳統(tǒng)手段沒法快速反饋信息,另外一方面,傳統(tǒng)方 式的審批決策流程過長,要降價總要有個負(fù)責(zé)人批準(zhǔn)一下吧?從而讓實(shí)時的動態(tài)調(diào)整變得不可能。但在一個被軟件定義的世界里面,是可以做到的。在這種模式下, 如果我們再屏蔽掉具體的引導(dǎo)辦法(降價,排隊時常通知之類),甚至可以把A和B兩個停車單元合并成一個看,即,在軟件層面上,我們有了一個更大的停車場單 元。

再繼續(xù)下去,如果有更多的資源具有了接口,他們之間還可以發(fā)生什么交互?比如,兩個停車場旁邊有兩個規(guī)模和品質(zhì)相似的餐館A和餐館B,它們也具有了 接口,軟件世界里面,我們抽象出餐館單元A和B,知道它們的座位有多少空余,知道今天廚房有什么材料,知道價格…那么,停車單元A報告自己已經(jīng)滿了的時 候,這時候餐館B是不是愿意暫時降價 10% 來吸引更多客源?如果餐館B通過降價,成功把自己空余的資源賣掉了,他是否愿意分享一部分利潤給停車場,以及分享一部分利潤給幫助進(jìn)行資源配置的軟件運(yùn)營 方?

這些都是會在未來發(fā)生的事情。越來越多的現(xiàn)實(shí)世界資源通過一個接口,接入軟件世界,成為一個抽象的單元,它們會直接發(fā)生相互的作用,這就是我們多年 所說的“智能化”。所有的這一切,最終都需要軟件實(shí)現(xiàn)。把一個現(xiàn)實(shí)資源抽象成接口這件事,在軟件行業(yè)稱之為“虛擬化”,一個 60 年代軟件行業(yè)就使用的概念。通常這個詞被用于云計算行業(yè),云計算產(chǎn)業(yè)在真正的物理計算機(jī)上虛擬出了計算機(jī)、路由器、內(nèi)存…把這些資源彈性分配給需要的用戶 使用。但實(shí)際上,現(xiàn)實(shí)世界的一切都是可以通過這種方式被虛擬化的。這就是未來被軟件定義的現(xiàn)實(shí)世界。對于這樣的世界,如果找一個更容易理解的例子,最適合 的是游戲。未來的一切都像即時戰(zhàn)略游戲所表現(xiàn)的那樣,如果你玩過星際爭霸,大概會記得拿鼠標(biāo)點(diǎn)一下,派出一個 SCV 去采礦,用鼠標(biāo)點(diǎn)一下工廠,坦克就開始被生產(chǎn)出來。在這個過程中,操作者只需要知道點(diǎn)鼠標(biāo)下達(dá)指令,之后收獲指令的結(jié)果。點(diǎn)一下鼠標(biāo),幾分鐘之后得到一輛 坦克,至于工廠里面具體如何生產(chǎn)一輛坦克,SCV 如何獲得礦石,這些細(xì)節(jié)被屏蔽掉,不用在關(guān)心。將來現(xiàn)實(shí)世界,傳統(tǒng)行業(yè)的一切都會變成這樣,甚至連下達(dá)指令的(玩游戲)的這個操作者早晚也會被軟件替代。

我并不是在寫科幻小說,在今天,很多行業(yè)已經(jīng)實(shí)現(xiàn)了類似的效果。比如航空業(yè),這個行業(yè)里面很多部分已經(jīng)是高度虛擬化的了,他們已經(jīng)可以用一個指揮系統(tǒng)調(diào)動各種地勤和支持資源去完成航空行業(yè)運(yùn)轉(zhuǎn)的各種流程。當(dāng)然,他們也需要好多程序員來開發(fā)和維護(hù)這個系統(tǒng)…

說到這里,推薦一部非常符合這個主題的動畫片,叫做《夏日大作戰(zhàn)》,這部 2009 年的動畫用圖形化和更易懂的方式描述了這種未來的場景,非常好看。這是 2010 年,當(dāng)時還在九城工作的布布推薦我的,我們都非常喜歡它,也一致認(rèn)為這就是未來。(布布這個人也在笑來關(guān)于比特幣的文章里面出現(xiàn)過,他跟笑來說不要挖礦, 要花錢去買比特幣…是一個非常傳奇的家伙)

圖片:夏日大作戰(zhàn)

 

我們再站高一點(diǎn),看之前描述的場景。現(xiàn)在我們有了若干的資源單元,他們分布在不同的行業(yè),這些單元已經(jīng)被軟件定義好了,我們看作是黑箱。在軟件之 下,又定義了無數(shù)具體工作人員的行為。剛才的例子里面,除了停車場管理員,還有廚師,服務(wù)員…沿著這個思路繼續(xù)想,還會有給餐館進(jìn)貨,供應(yīng)原材料的供應(yīng) 商,維修停車場設(shè)施的公司…所有這些,會會被虛擬化成軟件世界中的一個單元。然后是各種被提供服務(wù)的人(所謂用戶),他們有接收信息的方式,大到計算機(jī), 小到智能手機(jī),或者各種嵌入式系統(tǒng),比如特斯拉電動車駕駛艙里面的那塊大屏幕…一個使用手機(jī)的用戶,或者一輛特斯拉,同樣都可以被抽象成一個帶有接口的資 源單元。所有資源單元的行為,都是被軟件定義的,他們之間的交互方式和可能產(chǎn)生的結(jié)果,同樣是被軟件定義和調(diào)配的。這其中的每一層,每一部分,都需要大量 程序員的工作。越來越多的現(xiàn)實(shí)資源被虛擬化,也就產(chǎn)生了更多的交互和更多的可能性,這些一樣需要程序員去實(shí)現(xiàn)。今天,人類社會被虛擬化成軟件的資源還只有 極少的部分,我沒有具體統(tǒng)計的數(shù)字,但大家只要想想自己每天的現(xiàn)實(shí)生活所需所用,至少能有個大概的感知,恐怕被虛擬化的資源連1% 都不到。未來的空間有多大?幾乎是無限量的大。

現(xiàn)實(shí)世界能被虛擬化到什么程度呢,我之前幾次推薦過科幻小說《雪崩》里面描述了未來的世界只剩下三種職業(yè):娛樂業(yè)、程序員和 Pizza 快遞員。這本寫于 90 年代初的小說,早年看起來非常震撼,今天看起來…覺得他還不夠極端。因為現(xiàn)在我們已經(jīng)確知了,Pizza 快遞員的工作會被無人機(jī)改變,娛樂業(yè)會被 VR/AR 改變。最后干脆現(xiàn)實(shí)世界只剩下了程序員這一種職業(yè)…軟件并沒有吞噬掉現(xiàn)實(shí)世界,而是重新定義了現(xiàn)實(shí)世界的所有資源。

圖片:雪崩封面

 

所以,今天一切關(guān)于軟件/互聯(lián)網(wǎng)泡沫的看法都是過時的?,F(xiàn)實(shí)世界的虛擬化已經(jīng)快到了相當(dāng)?shù)某潭?,我們真的需要大量的程序員,未來仍然需要,有多少都 不夠用。因為程序員職業(yè)缺口太大了,早就不是有錢就能招聘到的了,甚至一個程序員因為公司要打卡,就會選擇另外一家企業(yè),因為他們可選擇的余地實(shí)在太大 了。很多企業(yè)遠(yuǎn)遠(yuǎn)沒意識到問題的嚴(yán)重性,而聰明的企業(yè),已經(jīng)在忙著做“企業(yè)技術(shù)文化”工作了。如果你不是 BAT,又不是一個很酷的新公司,程序員們根本對你沒有興趣,到這個境地,花別人一倍的錢也未必能雇到人,所以就需要做技術(shù)文化工作,去宣傳我們也是很酷 的,我們也是能改變世界的…從而不至于在這種競爭中落后。

最近一段時間,我周圍很多其他行業(yè)的朋友都跑來問我,是不是他們應(yīng)該學(xué)寫一點(diǎn)程序。我通常都回答,只要你有興趣,學(xué)的下去,那就當(dāng)然應(yīng)該。就算不能 成為職業(yè)程序員,在這個軟件定義一切的行業(yè)里面,理解程序如何產(chǎn)生,理解程序員如何工作,那就一定會有一份更好的職業(yè)機(jī)會等著你。為什么不學(xué)呢?

以上這些,就是難以雇到程序員這種狀況產(chǎn)生的基本面,因為這個職業(yè)缺口確實(shí)太大了,未來這種職業(yè)缺口不僅不會減少,毫無疑問還會繼續(xù)擴(kuò)大下去,甚至可以夸張一點(diǎn)的說,人類世界現(xiàn)代化的速度,很大程度被程序員數(shù)量不夠制約…

 

責(zé)任編輯:王雪燕 來源: 歪理邪說
相關(guān)推薦

2015-09-24 09:04:36

程序員

2014-03-04 09:43:23

程序員外包

2010-10-09 09:20:08

.NET

2016-04-28 11:17:33

互動出版網(wǎng)

2009-05-26 09:00:59

ScalaJava面向?qū)ο?/a>

2015-01-06 09:37:58

2015-08-11 09:18:44

程序員最好

2011-12-02 11:04:25

軟件定義網(wǎng)絡(luò)

2016-12-01 13:40:37

2015-06-29 14:55:37

2017-12-11 09:27:14

2009-03-12 10:18:24

程序員80后求職

2009-03-12 10:11:35

程序80后求職

2018-03-27 10:52:59

程序員不適合C++

2018-06-25 13:37:13

2011-08-11 14:52:59

2011-09-18 09:42:08

程序員

2013-10-29 10:24:31

程序員漫畫

2015-06-05 14:15:13

程序員難升職

2014-08-15 11:07:09

程序員
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號