為什么中國開發不出流行的操作系統和編程語言
Stitch/2020-2-21
引子
知乎有兩個帖子很有意思,
看了很多回到,有的答案寫的很認真,按照編程語言出現的時間順序等梳理;有的也非常認真,但是邏輯是錯的;還有一種是搞笑的。
為什么中國沒有開發出流行的操作系統和編程語言?
我的答案是:
中國沒有開發出成功的操作系統和編程語言,根本原因是中國的IT產業處於落后狀態。還在循着美國產業發展路徑追趕,沒有發展到世界頂尖。沒有站到浪潮前沿,就無法感知產業發展方向,就無法創造出適合未來產業發展趨勢的操作系統和編程語言。
好,現在問題來了,什么時候中國可以寫出操作系統,什么時候可以出自己的編程語言。這個問題問的比較好,暫時不回答,在文末有答案。
PC操作系統發展歷史
簡單回顧下操作系統發展歷史
現在的操作系統有十幾個,對於IT行業以及互聯網從業人員接觸到的有
-
PC操作系統:DOS,Windows,Linux,MacOS等
-
服務器操作系統:Linux,Unix,OS/2等
-
手機操作系統:Android,IOS,BlackBerry (黑莓),Symbian(塞班),Windows Mobile
-
嵌入式系統:windRiver,QNX等實時操作系統
對於普通人一般接觸到的操作系統就三種:
電腦的window和手機平台的Android、IOS,其他的估計連聽說過都沒有。
對於業內人士了解的概念,寫一個操作系統不難,難的是基於這個系統的生態系統,IT從業人員和專業技術人員都在這個操作系統上工作以及開發應用,這樣才是一個成功的操作系統,而不是一個在高校內教學的教學模型,或者是實驗室的試驗品、Demo。
寫一個成功的操作系統,不是靠技術先進就可以了,需要天時、地利、人和。
我們回顧下當下最成功的操作系統是怎么發展起來的,以window和IOS、Android為例。
DOS系統最早是一個技術人員的作品,被比爾蓋茨買過來,修改用在了IBM的PC電腦上,隨着個人電腦的普及而發展起來。
當時電腦都沒有操作系統,DOS一出來就基本占據大部分桌面市場,后來基本DOS內核的windows隨后推出。因IBM兼容機的價格優勢,在與蘋果電腦的競爭中占據優勢。理所當然的各種應用軟件都是基於windows系統開發的。可以說PC時代的軟件巨頭都是基於Windows平台的。
后續跟隨操作系統圖形化界面的潮流推出Windows系統,此后一直占據着個人電腦操作系統的主流,后來Linux系統想占據個人桌面系統,努力了很多,一直沒有成功,不是技術不先進,圖形化不夠漂亮,軟件不夠豐富(對於非辦公人員來說,日常軟件已經夠用),而是已經過了個人電腦的浪潮,普通人已經適應了windows系統的操作了,微軟成為了事實上的個人電腦的系統的標准的制定者,操作習慣的引導者。操作習慣一旦養成,想改變是非常困難的,普通人重新去學習一種新的操作習慣的成本太高,軟件開發廠商重新適配新操作系統的成本也是巨大的。
當年推出的window Vista系統,因操作方式變化太大,遭遇了失敗。
所以Windows的天時是個人PC的浪潮,地利是在美國,完善的配套產業,人和比爾蓋茨的商業能力以及起步時媽媽是IBM的董事,IBM的PC預裝了DOS。
由於當時蘋果的封閉,Windows系統在技術上沒有蘋果的好,但是借助IBM的兼容PC價格優勢,占領了大部分市場。隨着時間的累積,Windows的生態越來越豐富,應用軟件,企業應用等,甚至影響了硬件標准的制定。
個人操作系統多年來積累的軟件,以及很多的企業應用和服務,要遷移,需要把原來的需求理清楚,新系統上開發,還要詳細測試沒有bug,新舊系統切換還要保證原有業務穩定,遷移成本是一個天文數字,沒有公司可以承擔的起。所以在個人操作系統領域,Linux根本沒有可能挑戰Window系統。
智能手機操作系統
我們再來說說手機操作系統,基本是IOS和Android的天下,這個浪潮離我們比較近,很多人都是親身經歷這兩個系統的發展的。
時間撥回到2007年,當時第一代iPhone剛發布,震驚了世界,十幾年過去了,重新回顧發布會,依然覺得震撼,真的是划時代的產品。從此,開啟了從PC時代向智能手機時代的大幕,開啟了PC互聯網時代向移動互聯網時代的大幕。
蘋果憑借iPhone的發布,獲得了巨大的成功,后續的智能手機界面和操作方式,都是以此為准,可以說蘋果制定了智能手機圖像界面的標准以及操作標准。
這個一個變換,直接帶來了IT產業的環境變化,從生物學的角度來說,外部氣候已經變了,所有的生物都要做出改變來適應新的氣候,完成遷移,不然就會被時代淘汰。
智能手機的普及以及手機操作系統的出現,是一個全新的平台和領域,也是整個IT產業的重大變化。原有PC時代的軟件巨頭和互聯網巨頭都在努力向新的平台遷移。
移動平台是全新的,操作方式是全新的,全都是未開發的處女地,沒有舊時代的巨頭阻擋和門檻。
智能手機的銷量每年增長50%以上,意味着用戶每年增長50%,這里全新的藍海,是時代弄潮兒的最佳機會。搶占住了移動平台,就拿到了通往未來的門票。
美國智能智能手機操作系統成功的天時地利人和:
-
天時:經過2000年后互聯網泡沫的破滅,硬件技術已經有了長足的進步,低功耗的cpu可以運行起來480*320的分辨率的畫質了。3G網絡的發展,速率基本可以到2M以上了,基本達到了寬帶的條件。
-
地利:在2006~07年,美國依然是IT產業的高地,硬件到軟件,無不是獨步天下。
-
人和:硅谷作為IT產業的聖地,操作系統人才積累雄厚。最關鍵的是有喬布斯這個從PC時代走過來的大神。
美國硅谷具備了天時地利人和三個條件,IOS 和android順利的占據了智能手機操作系統的市場,基本沒有遇到太大的阻力。
另外來看,手機操作系統有資格參與競爭的選手也不多,歐洲諾基亞主要的Symbian系統,加拿大黑莓主導的BlackBerry OS,微軟主導的Windows mobile(phone),三星的Bada(后來的Titan)。這幾個系統種種原因,在競爭中都失敗了。
國內的廠商當時一個能打的都沒有,甚至在智能手機爆發時(2007年,iPhone發布時),國產手機被山寨機打的節節敗退,處於歷史的低谷,根本不是現在的情形(國產智能手機占80%以上份額)。可見當時國內在整個智能手機開始普及時,產業鏈哪個環節都沒有優勢,連一個像樣的領導廠商都沒有。操作系統的特點是一旦占據了市場,基本很難更換,現在去開發一個新系統來搶占原來市場,非常困難,需要完整的工具鏈支持,開發者遷移成本也非常高。
所以操作系統國內沒有占據市場,是整體由國內IT產業的發展水平決定的,沒有站在浪潮之巔,就感知和引領行業的發展方向,提前占據新的領域。
國內操作系統的機會
iPhone發布后,整個產業界一下震驚了,苦苦探索的智能手機終於了有了方向。在蘋果之前,智能手機是黑莓,Symbian,windowCE,這幾個系統的思路基本是PC系統的延伸,而不是向IOS一樣專門為智能手機設計的操作系統。
當時的Android系統還是Robin的玩具,設計還是全鍵盤的設計。在iPhone發布不久,谷歌靈敏的嗅到時代巨變來了(成為巨頭的公司一定是靈敏的,對於產業的發展趨勢判斷一定是超級的,不然谷歌也不會成為穿越時代的巨獸),急匆匆收購了Android系統,和當年微軟的PC操作系統的思路一樣,操作系統開放給手機廠家使用,占據了大部分的智能手機系統的份額,拿到了智能手機操作系統的門票,使自己的互聯網服務有了棲身之地,奠定了谷歌在移動互聯網時代的基業。
回顧這些,就是想說明,一個操作系統的成功,一定是跟隨着產業發展的浪潮,滿足了產業發展需要的需要,隨着產業一起發展,才能獲得成功,這個就是吳軍老師寫《浪潮之巔》里的,大公司也有隨着時代轉型,不然也會沒落。
結合前面的論述,現在主流的操作系統,PC上的Windows,服務器上的Linux,智能手機的Android和IOS,格局一定,基本無法動搖。
想占開發出流行的操作系統,要等到下一個產業變遷的時刻,同時國內還要有巨頭來主導,保證資本和人力的投入,還有龐大的市場來檢驗,以及對應的技術人才和商業人才積累。這樣天時地利人和才可以抓住機會,占領新興產業需要的操作系統。
回到本文的標題,什么時候會出現中國主導的操作系統,個人覺得再出現新技術領域時,一定有中國操作系統的一席之地的。這個時間點在什么時候,我也不知道。但是下一次產業機會出現的時候,天時地利人和的優勢是在中國這一邊的。
-
天時:現在國內移動網絡開始普及5G,4G覆蓋率非常高,移動用戶數巨大,現在國內的IT廠商具備和全球頂尖的實力,阿里,騰訊,華為。在應用層面,許多應用都是在國內先出現,然后普及到全球,抖音就是一個例子。
-
地利:現在IT產業的硬件制造的高低在中國,智能手機廠商華為、oppo,vivo,小米,都是全球前幾大廠商。硬件生產效率驚人,可以第一時間以合適的成本和速度生產出新領域的硬件平台。
-
人和:這個人和不是指具體的某個人,首先國內IT產業經過這些年的長足發展,在底層系統方面積累了人才,操作系統,數據庫等。還有就是有了全球TOP級的平台,阿里,騰訊,華為,這些企業可以和美國的IT企業在研發投入上競爭,當新的產業機會出現時,這些巨頭肯定會全力投入競爭,起碼在資本投入方面,是可以與美國的企業想媲美的。還有一個就是國內巨大的市場,一旦占據就可以快速攤銷研發成本,產品快速迭代和進化,可以更方便的搶占市場和競爭。搶占新領域的操作系統,就補上了操作系統的一環。
新的編程語言
同理,編程語言也一樣,一個編程語言的發展,是切實解決產業發展中的問題,提升開發效率而取得發展的,不是閉門造車。
現在最流行的編程語言,JAVA,C,Python,C++,JavaScript等,也都是滿足了產業界的巨大需要,占據了一席之地。
以我現在用的Python為例,Python發明於1991年,一直處於小眾的領域,躲在角落里做一些雜活,“苟延殘喘”的活着,如果沒有找到新的用武之地,python就會慢慢消失在歷史的長河中。幸運的是2007年谷歌使用python做運維,找到了自己的用途。不然發展十幾年版本才進化到了2.6版本。出現較晚的Java都進化到了6,7了。
有了谷歌的站台,業界也開始學習谷歌來做運維,python開始取得了發展。后面更加幸運的是趕上了科學計算以及大數據的浪潮,在數據分析領域發揮了自己的特長,進入了編程語言的前五,還當了幾次年度語言。
所以編程語言的設計不一定就是按照教科書的范式設計最好,而是需要多方面的因素來促成。例如C#,語法設計號稱經典,和Java撕逼這么多年,也沒有威脅到Java的地位。一個是Java早期發展占據很多領域,還有就是Java靠着Android強力續命了。如果是微軟的系統取得了今天Android的地位,C#估計就替代Java在Android上的應用開發語言地位了。
新產業出現的時間
時候產業會出現新的機會,方向是什么,現在都沒有定論。需要大量的先驅去嘗試,去探索,最終找到一個出口。這個過程有多久,比較難說。
不過我們可以回顧下歷史,PC發展是起於20世紀70年代末,大規模普及要到21世紀初Windows XP發布,2015年達到頂峰,時間跨度是35年(1980~2015)。智能手機孕育在20世紀90年代末,有windows CE,黑莓等,取得突破是2007年在iPhone發布,大規模普及在2010年,時間跨度是(2000~2010)
可以看到產業發展速度是呈加速度的,智能手機從iPhone發布到規模普及,不到五年。
現在智能手機功能的發展基本已經停止了,近五年已經沒有重大的新功能了,CPU中加入NPU等都是在嘗試,是不是產業發展方向還不一定,至少華為是走在業界的前沿,開始向無人區探索了。
新的機會現在就在孕育,靜悄悄的發展,在尋找發展的最佳路徑,就像電子不知道哪里電阻最小,只會尋找最近的電阻最小的方向去。
下面為個人看法:
個人覺得電腦,手機以及眾多穿戴設備,家用智能設備,這些太復雜了,太多了,確實提升了不少體驗,但是使用起來卻不智能。可能會出現一個統一的系統。但是感覺這個產業規模不夠大,無法孕育一個主流的操作系統。