虎嗅注:美國《紐約客》雜誌撰文介紹了HTML5標準誕生的歷程。
本文由新浪科技翻譯。
你可能已經知道,10月28日,萬維網聯盟(以下簡稱「W3C」)正式推薦HTML5。你或許也知道,這與應用和萬維網有一定的關係。問題在於:這跟你有關係嗎?
答案是,至少與網民有關係。所以,我們有必要了解一下HTML5是什麼,以及究竟是誰控制W3C。除此之外,還有必要知道HTML5得到W3C 推薦幕後的各種衝突。今後10年,將有數十億人使用萬維網,但真正有資格給「萬維網」下定義的人卻鳳毛麟角。W3C就是這樣一家組織。那麼,它的成員包括什麼人?他們想幹什麼?又是誰為他們提供資助?
W3C誕生
萬維網已經渡過了千禧年。它的設計方案最早在1989年提出,距離現在已經過去25年。6年後,網景的IPO(首次公開招股)扣動了硅谷的神 經。當萬維網還是新生事物時,很多精通電腦的人都很鄙視它——與其他超文本發布系統相比,這是一項極其原始的技術。例如,你可以將自己的網頁鏈接到其他任 何頁面,但你卻無法知道何時有人鏈接你的網頁。萬維網也不允許你在瀏覽器中編輯頁面。對很多超文本領域的精英思想家和程序員來說,這都是非常嚴重的缺陷。
然而,萬維網卻很容易建立,學習難度也很小。它擁有自己的一套傳送模式——任何人都可以通過閱讀網頁學習HTML語言,然後查看底層的HTML代碼。萬維網完全都由簡單的文本和圖像構成,它們與其他同樣簡單的文本和圖像相互鏈接。
科技行業向來信仰功能主義(featurism),所以人們開始向萬維網中添加所有他們所能想到的東西。如何展示3D圖像?如何讓文本發光,甚 至滾過整個頁面?如何將網頁變成軟件?不同的瀏覽器相繼湧現,每一個都形成了自己的文化,並拿下了一定的份額,包括Mosaic、網景、IE、 Cyberdog、Spyglass、Lynx和Amaya。
隨着萬維網的日益複雜,這一生態系統也逐步形成了群雄割據的局面。當時,每種瀏覽器只能渲染一種格式的圖片,如果我使用另外一種格式,那麼當我 向你發送某張圖片的鏈接時,你就無法看到真實的效果。倘若這種局面持續下去,當今世界將會有多個萬維網並存。無序狀態也會緊隨其後,而攝影師必將怨聲載道。
隨着這種割裂局勢愈演愈烈時,人們意識到需要有一個組織來之定義一種通用的語言,將所有必要的功能都包含在內。之後,該組織還必須撰寫一份文檔,包含超文本標記語言的所有演變過程。這是一個標準化流程,是一種出於商業目的而展開的技術外交,對互聯網的發展至關重要。事實上,這並非計算行業的原創。
1908年,當自動鋼琴生產廠家在水牛城的Iroquois酒店參加「水牛城大會」時,人們對鋼琴紙卷上每英寸的穿孔數量存在分歧,有人喜歡9 個,有人喜歡8個。這種差異會導致成本增加,不僅對廠家不利,還會令用戶困惑。他們最終達成了一致,因此在當今世界,每英寸9孔的鋼琴紙卷已經成為標準, 沒有人會生產其他標準的自動鋼琴。
在衝突中前行
當然,網頁的問題要複雜得多,它需要通過數十種標準來規範文字、聲音、圖像、交互、協議、代碼等各種元素。而W3C則扮演了「萬維網議會」的角 色。這是一個標準制定組織,他們會組織各種會議,讓相互競爭的組織坐下來制定統一的標準,然後將這些標準從「工作草案」過渡為「候選推薦」和「提議推 薦」。最終,如果標準能夠經得起考驗,便會獲得「W3C推薦」資格。
萬維網發明人、W3C理事蒂姆·伯納斯-李(Tim Berners-Lee)領導該組織開了20年的會議。它的會員包括近400家學術機構、非營利組織和公司。其中最積極的參與者是開髮網絡軟件並擁有大量網站的企業,包括谷歌、微軟和Facebook。他們支付會員費——美國大型企業的年費為6.85萬美元,但非營利組織和小公司的年費少得多,發達程度較低的國家也會按比例減少。
W3C的文化使命是「向所有人開放萬維網,無論硬件、軟件、網絡基礎設施、語言、文化、地理位置以及身體和心智能力如何」。要實現這一目標,就需要一個專門的委員會來制定標準文件。
如果你想了解萬維網發展的最新消息,可以訪問W3C的主頁,查看最新新聞。當你閱讀那些枯燥的標準時,或許會認為制定標準的過程是一個文雅甚至 有些學術化的流程——所有的參與者都會對分號的位置這種問題展開冷靜的討論。但實際情況並非如此。制定重要標準的過程有時很平和,但有時也要經過激烈的廝殺。
這並不是什麼令人難堪的秘密,相反,這恰恰代表了一個良性的流程。「技術標準化是一種商業外交。」多次參與這類活動的惠普商業戰略總監史蒂芬·瓦利(Stephen R. Walli)寫道,「與外交家一樣,所有的參與者都希望在擴大經濟影響的同時捍衛自己的主權。」
曾在1974年開發了HTML的先驅語言「標準泛化標記語言」(Standard Generalized Markup Language)的查爾斯·古德法布(Charles Goldfarb)表示:這類標準與立法一樣,都要經歷深層的衝突才能最終確立。
跳舞的猴子
從一開始,HTML就為文本內容制定了一系列標記規則。如果你想添加標題,就要使用
標籤,例如你的標 題。
是一個標記,「你的標題」只是字符數據。你的瀏覽器可以解讀這些HTML規則,然後以相應的格式展示出來。
HTML的實質就是大批的標籤。但HTML5卻成了一種「結締組織」,負責將多種多樣的其他技術粘合在一起,包括音頻、視頻、圖片、文字、標 題、引文、開放式畫布、3D圖像、電子郵件地址等。它可以讓你知道這些內容的存在,並提供各種渠道將其融入同一個頁面。你甚至可以「驗證」頁面。截至目前,Apple.com有1個HTML5錯誤。這其實已經很不錯了,《紐約時報》網站的錯誤達到141個。
在這種情況下,驗證是一種理想的構造。它的意義在於,如果你遵守W3C的規定,你的網站將會吸引更多的訪客。不過,這兩種頁面對多數人來說都是 可以接受的,畢竟瀏覽器的容錯率極高。事實上,任何一個標準組織的最終都會形成一種認識論:由於意見多種多樣,所以他們必須從中挑出一些作為基本信念。自動化的驗證器是一種編碼信念系統。並非每個網站都提供有效的HTML,就像並非所有天主教徒都會遵守婚前性行為禁忌一樣。事實上,完全遵守HTML規範的 網頁比例,與遵守婚前性行為禁忌的天主教徒比例可能非常接近。
這些衝突令HTML5受到了格外關注。為了理解個中緣由,必須回到1996年6月,當時,新版HTML剛剛推出。HTML3.2是一個重大更 新,因為它將之前的很多實踐正式列為官方標準。JavaScript已經被添加到瀏覽器中,於是,頁面上的所有元素都可以活躍起來。HTML3.2其實並 沒有對JavaScript過多着墨,只是寫道:「今後的HTML將有腳本。」
「JavaScript的目標是當你把鼠標移動到一隻猴子上面時,能讓它跳舞。」一位著名評論家寫道。這些跳舞的猴子最終催生了更多「跳舞的猴 子」,首先是彈窗,隨後在微軟的幫助下,又可以在不刷新瀏覽器的情況下通過IE加載新的數據——谷歌地圖、Gmail、Twitter和Facebook 等「網頁應用」均屬此類。現在,整個萬維網到處都是跳舞的猴子。我們仍把網頁稱作「頁面」,但其中有很多其實已經變身為軟件應用,其複雜程度之高甚至可以 完成文字處理、運行視頻遊戲。
2004年,這種從頁面嚮應用的改變吸引了很多跨國公司的興趣,他們從這種動態網頁中看到了巨大的利潤前景。然而,W3C已經對萬維網展開了長 達數年的改造。他們在力推「無障礙網絡」——通過為網頁賦予自我描述的功能,讓盲人和其他殘疾人也可以使用網絡。他們還希望開發語義網絡,將所有的思想都 集中到一套分散化的思想庫中。為了實現這一目標,W3C着手開發新版HTML,也就是XHTML2。配合著其他一些標準,便可通過更好的技術改造很多網頁 的功能特性。然而,當W3C希望構建無障礙網絡的同時,整個網絡行業卻都希望「讓猴子跳舞」。
WHATWG扭轉趨勢
必須強調的是,在追求這一目標的過程中,W3C似乎變得有些脫離實際。例如,W3C的情感標記孵化集團希望通過情感來標記任何內容。他們 說:「EmotionML提供了一種機制,通過科學有效的描述符來代表情感。」他們還補充說:「由於無法達成一致,EmotionML並不提供單一的情感 詞彙表,而是讓用戶在他們的註釋中選擇最適合的情感詞彙。」
具體效果如何呢?你可以使用下面一段代碼來描述0.5的快樂值:
EmotionML還擅長表達憤怒、焦慮、痛苦和輕蔑。如果這種標準得到W3C的推薦,並廣泛普及,那麼政治博客的憤怒情緒便可量化,你甚至可以選擇只閱讀包含快樂情緒的萬維網。
但這顯然沒有成為現實。2004年,正當W3C從事這一項目時,萬維網也悄然發生了很多變化。谷歌上市,蘋果通過基於Web的iTunes商店賣出了不計其數的歌曲,蘋果還推出了自己的Safari瀏覽器。
除此之外,一群來自蘋果、Mozilla和Opera的工程師組成了一個名為WHATWG的組織,也就是「網絡超文本應用技術工作組」的縮寫。他們對W3C的XHTML發展方向感到擔憂,擔心該機構忽視HTML,忽視真正的需求。
WHATWG開始從事本應由W3C從事的工作——定義新版HTML,也就是HTML5,集合各種新興的萬維網技術,並進行標準化。把這些新技術 集合在一起,可以讓瀏覽器變成通用的高速電腦,提供更智能的表格、更好的視頻和音頻,還能更好地把文檔轉換成代碼,令越發紊亂的萬維網更加有序。此後,瀏覽器成了應用的載體,可以在上面運行軟件。
2007年,W3C認可了WHATWG的方向,開始親自處理HTML5。而XHTML2所倡導的情緒化網絡從未真正發展起來。WHATWG仍然保持獨立,雙方展開了並不順暢的合作。
儘管W3C接納了HTML5,有關這種語言究竟如何部署以及何時部署,仍然留下了很多疑問。CNET的史蒂芬·夏克蘭(Stephen Shankland)常年追蹤這一標準化流程,根據他的記錄,W3C討論這項技術的郵件列表中曾經出現過「幼稚」、「不可忍受」、「可笑」和「鬼把戲」這 樣的詞彙。
同樣是在2010年,史蒂夫·喬布斯(Steve Jobs)發出了一封公開信,宣稱HTML5風格的網絡技術才是未來發展方向,Adobe的Flash專有平台無法擔此重任。這封信意義重大,因為它意味着HTML5得到了一家頂尖科技企業的祝福,從紙上談兵進入到實踐摸索階段。
現在,經過了7年的發展,HTML5的命運似乎最終有了定論。據夏克蘭報道,WHATWG和W3C之間仍然存在分歧。孰是孰非似乎並不重要。雙 方都在各司其職地肩負着自己的責任。各種各樣的衝突仍會不斷湧現,然後逐一解決,如此往複,最終出台通用標準。WHATWG顯然希望W3C終止這樣的模式,但它畢竟已經統領萬維網20年。
如今的瀏覽器速度早已今非昔比,代碼編寫者再也不必擔心不兼容的問題。不過,他們似乎只看重速度,沒人試圖改變核心。以文檔驅動的傳統萬維網仍 是網頁的基礎,但以應用驅動的萬維網卻可以跨越平台,支持任何手機。它更加複雜,有時甚至令人困惑,但多數時候都可以正常運行。
終成行業標準
W3C的HTML5標準內容非常「豐富」,光是圖片部分就有1.4萬個單詞,這還只是一小部分,全文多達53萬單詞,達到HTML4的5倍多。 但即使如此冗長,它也只是描述了萬維網定義的很少一部分。例如,他並沒有提及如何製作JPG圖片或GIF圖片,以及這些文件如何安排在二進制數據流中。其 他內容則由其他組織負責制定相應的標準,這些標準又基於更多的標準而來,甚至可以追溯到數十年前的內容。
萬維網最初是為了發布和分享文檔之用,現在已經成為一套操作系統,它能監控手機電量、錄製和發送語音,還能管理電子郵件和聊天、提供遊戲運行環境。
與微軟Windows或蘋果Mac OS操作系統不同,HTML5標準是開放的,所有人都可以使用。如果你想編寫一個瀏覽器,隨時可以獲得足夠的信息,不會有任何隱瞞。甚至還有專門的教程幫助你開展初期的工作。
任何的標準都可以折射一種文化,HTML5也不例外。它體現出我們對文字、標題、視頻和音頻的偏好:我們喜歡把各種內容組織成列表,我們還喜歡 看圖片,我們希望任何事情都能具備動畫和互動能力——每個字、每個標籤、每個結構元素。HTML5的所有內容都可以由代碼解讀,也都可以由用戶來旋轉和操縱。
萬維網曾經是一個獲取信息的地方,但現在,它也成了一個做事情的地方。這花了10年時間才最終實現。現在是2014年,HTML5終於得到了官方的認可。就像1908年的水牛城大會一樣,只要你使用了合乎標準的自動鋼琴,便可傾聽百年之前的樂曲。
From The New Yorker
HTML5誕生記:有關互聯網未來的博弈