是早期Google的招聘是出了名的難,它們只想招那些最知名大學里最厲害的尖子生,數學、編程、算法都得達到頂尖水平。
比如這個著名的招聘廣告,你得破解了它才能找到面試的方法。
但是有一群人,大學都沒畢業,卻繞過了Google苛刻的招聘流程,順利加入Google,并且還做出了世界上最流行的操作系統。
這是怎么回事呢?
0 1
帝國的危機
故事得從20年前說起,當時Google如日中天,憑借Google搜索,GMail, GMap,Google Earth等服務,建立了一個強大的互聯網帝國。
不過,隨著黑莓等智能手機的推出,移動互聯網開始醞釀,Google帝國那堅固的地基卻出現了裂痕。
如果一個新玩家霸占了移動入口,Google那些服務很可能被新玩家替換掉,這非常可怕。
當Google把目光轉向移動市場的時候,發現這里有三個巨頭:
1.塞班,一個非常難用的平臺
2.黑莓,系統專有,只能用的黑莓手機上。
3.Windows Mobile,像PC一樣可以授權給手機制造商
Google當然可以自己做,但是做手機或者手機操作系統和自家的主業確實差別太大。
于是,Google瞄準了一家創業公司,這家公司最早是給相機做操作系統的。
公司只有8個人,有人大學沒畢業,有人高中都沒畢業。
公司連個像樣的產品都沒有,僅僅是一個簡單的用JavaScript寫的一個演示系統。
但是Google看中了這幫人以及他們想開拓的新方向:開源的手機操作系統。
這個開源操作系統的定位非常好,提供一個單一的平臺,一套解決方案,讓手機制造商可以輕松地使用它制造手機,讓程序員可以輕松地在上面開發應用程序。
是的,這個創業公司就是后來大名鼎鼎的Android。
0 2
秘密招聘
進入Google以后,Andorid遇到的第一個難題就是招聘。
此時Android還出于保密狀態,沒法大肆宣傳打廣告招聘,只能悄悄地去聯系前同事,朋友,希望他們前來面試。
前來面試的人被面了好幾輪以后,才隱約地感受到:原來Google是要做一個手機操作系統啊。
嵌入式開發人才很難找到,底層系統級開發要學的東西太多了。
不過,硅谷有三家公司有這樣的人才:
1.Danger 公司
這也是Andy Rubin1999年創立的公司,曾經用Java 編程語言構建了一個智能手機平臺,有應用商店,有后端服務,可以說是Android的雛形。
2.Be 公司
1995年成立,它開發了非常有影響力的操作系統BeOS,在90年代大家還在用單核的時候,已經原生支持多核處理器,特別適合音視頻處理,支持低延遲音頻、高清視頻播放與編輯,常被認為是“為多媒體而生”的系統。
3.WebTV 公司
1995年成立,WebTV是一臺“上網機頂盒”,用戶只需一個電視 + WebTV 盒子 + 電話線,就能通過電視瀏覽網頁、收發郵件、聊天。
Android早期的開發人員主要來自于這三家公司。
這三家公司是95年~99年之間成立的,在大部分國家還在撥號上網的時候,美國已經做出了這樣先進的軟硬件設備。
可見當時美國的IT技術發展的確領先全球,在移動互聯網爆發的前夜,Android出現在美國絕非偶然,它們已經積累到那個程度了。
如果沒有Android,也會有另外一個東西出現。
0 3
選擇Java
我第一次看到Android程序的時候也很詫異,編程語言竟然是我日常使用的Java!
Java不是主要用在服務器端開發嗎,那里CPU強勁,內存管夠,在手機那端性能可就差遠了,用它開發App嗎?
為什么不用C++?
其實站在Android角度考慮一下就明白,C++雖然開發底層應用非常好,但是語法非常復雜,門檻很高,還需要手動管理內存,一不小心就會內存泄漏,會嚇跑很多開發人員的。
Java是當時全球最流行的編程語言,有Eclipse,Netbean這樣免費的IDE,可以吸引大量開發者快速上手Android開發,這一點太關鍵了。
性能問題怎么處理?
Android的辦法是:選擇Java,但是不用Java的字節碼。他們定義了一套自己的字節碼,開發了自己的虛擬機Dalvik來執行。
程序員寫的Java代碼,先被編譯成Java字節碼,然后轉換成Dalvik字節碼,然后在Dalvik虛擬機中執行。
Dalvik虛擬機為移動設備量身定制,內存占用更小,性能優化更激進。
比如它就拋棄了JVM使用的棧架構,而是采用了寄存器架構,這雖然導致指令更加復雜,但是同樣程序所需指令更少。
Google 也沒有用Java的SDK,而是基于開源的Apache Harmony進行開發,Apache Harmony沒有獲得Sun 的JDK認證,后來Sun被Oracle收購后,Oracle還對Google發起了一場法律大戰,指控Google侵權使用了Java 的API,這是后話了。
0 4
當頭一棒
Android雖然被收購,但是依然保持了創業公司的風格,特立獨行,有很大的自主權。
特別是團隊不講什么Work Life Balance,每個人都在瘋狂工作,每周工作60到80小時,他們編寫代碼,飛往世界各地尋找合適的零部件、供應商和制造商,花了六個月時間制作原型,并計劃在年底前推出。
就在這時,喬布斯登臺發布了iPhone,給了他們當頭一棒。
第一代iPhone毫無疑問是一個革命性的產品,它不僅外觀炫酷,更是創造了一種全新的交互方式:
使用虛擬鍵盤,在大觸摸屏上用軟件生成的按鈕替換大多數實體按鈕,每個應用程序現在都可以擁有自己獨特的控制方式。
例如:播放、暫停和停止按鈕只有在聽音樂或看視頻時才會出現。
當你在瀏覽器中輸入網址時,鍵盤會出現,但當你按下 Enter 鍵時它就會消失。
而Android團隊正在努力奮斗的第一款手機是這樣的:
這一看就是兩個時代的產品!
Android手忙腳亂,不得不“重新開始”,修改規范文檔,聲明“將支持觸摸屏”,盡管“本產品的設計時假設了獨立的物理按鍵,因為觸摸屏無法完全取代物理按鍵”。
iPhone封閉的生態、獨特的模式對于手機廠商、運營商、芯片公司來說都是巨大的壓力。
Google采用了相反的策略:把朋友搞得多多的,把敵人搞得少少的。
2007年11月5號,Google振臂一呼,宣布成立開放手機聯盟(Open Handset Alliance),成員包括HTC、索尼、Dell、Intel、摩托羅拉、高通、德州儀器、三星電子、LG 電子、T-Mobile、Nvidia、中國移動,華為等。
這是個看起來非常強大的聯盟,不過當時只是個新聞發布會,連一個可以運行Android的商用手機都沒有。
幾天以后,Android SDK發布了。
為了吸引開發者,Google專門舉辦了Android開發挑戰賽,這次下了血本,獎金高達1000萬美元,就是為了讓開發者在沒有手機的情況下,給Android開發應用程序。
為了讓評委們運行參賽的1788款程序,Google給每個評委都郵寄了一臺筆記本電腦(據說大部分都沒有歸還)!
每臺電腦里預裝了開發團隊特意開發的程序,評委可以選擇要評測的應用,然后在模擬器上運行。
很難想象,現在這么強大的Android,當時的發家史也如此艱難!
0 5
終獲成功
Android團隊繼續奮戰,在iPhone手機發布一年多以后,2008年10月,Android手機第一款手機HTC Dream/T-Mobile G1正式上市,依然是支持物理鍵盤。
G1支持提供可定制的圖形用戶界面、與Gmail等谷歌服務的集成、顯示應用程序推送通知,以及用于下載其他應用程序的Android 市場。
這款手機還是上個時代的感覺,和精致的iPhone根本沒法比。
G1的銷量不好不壞,6個月賣了100萬部,作為第一款Android手機,它更重要的意義是跑通了整個流程,讓手機商覺得,Android是真實的,這玩意兒是真的可以用在自家手機上的。
G1發布以后,Android團隊不敢停歇,更加玩命兒似地開發,一年之內,竟然發布了4個版本,著實瘋狂。
手機廠商也開始推出更好的Android手機,比如摩托羅拉于2009年10月發布的Droid,這是第一款大獲成功的Android設備。
Droid配置極為豐富,3.7英寸854×480 觸摸屏,WiFi,GPS,數字羅盤,3.5mm 耳機插口、MicroUSB接口,500萬像素自動對焦帶雙LED閃光攝像頭、數字羅盤、加速度計。
在強大的營銷活動加持下,Droid發售的第一周就賣出了25萬臺!
Droid的成功給其他廠商打了個樣,2010年,三星推出Galaxy系列,HTC 推出Desire,Legend,LG推出LG Optimus,索尼推出 Xperia X10......
歷經千辛萬苦,Android的命運齒輪終于開始轉動了。
在中國,看到風口的小米也在2010年推出了MIUI,基于Android 2.2 ,廣受好評。第二年,小米手機1發布,Oppo、Vivo、華為等廠商也開始采用Android,讓Android進入了有著海量用戶的中國市場。
后面事情大家都知道了,Android瘋狂發展,設備數量一路超越蘋果,超越塞班,超越Windows,成為全球第一大操作系統。
寫完Android的發展歷程,不由得感慨:這真是一群最合適的人在正確的時間,做了正確的事情。
他們經驗豐富,擁有獨立自主權,付出了遠遠超出常人的努力,在移動互聯網的風口創造了Android。
Android初始團隊中高中沒畢業的Ficus,大學沒畢業的Brian恐怕不會想到,當年那個3000行代碼的演示系統,搖身一變,竟然進入了30億設備中。
真是應了那句話:“一個人的命運啊,當然要靠自我奮斗,但是也要考慮到歷史的進程。”
參考資料:
https://corecursive.com/android-with-chet-haase/
https://www.thesmilinghippo.com/gr/en/blog/google-project-restart-android/
《Androids: The Team That Built the Android Operating System》
全文完,覺得不錯的話點個贊或者在看吧!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.