HTML5正名記:兩家機構的博弈與一種標準的誕生
導語:美國《紐約客》雜誌近日撰文,對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就為文字內容制定了一系列標記規則。如果你想新增標題,就要使用<h1>標籤,例如<h1>你的標 題</h1>。<h1>是一個標記,“你的標題”只是字元資料。你的瀏覽器可以解讀這些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的快樂值:
<emotion dimension-set=”http://www.w3.org/TR/emotion-voc/xml#pad-dimensions”><dimension name=”pleasure” value=”0.5″/></emotion>
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年的水牛城大會一樣,只要你使用了合乎標準的自動鋼琴,便可傾聽百年之前的樂曲。
相關文章
- HTML 5 正名記:兩家機構的博弈與一種標準的誕生HTML
- 一行Spark程式碼的誕生記(深度剖析Spark架構)Spark架構
- HTML5標準制定的兩大組織分道揚鑣HTML
- 讀書筆記《一個App的誕生》筆記APP
- 一隻優雅的小爬蟲誕生記爬蟲
- PathToGo 誕生記Go
- Javascript誕生記JavaScript
- 關於css脫離標準文件流的兩種方式CSS
- 《一個人工智慧的誕生》學習記錄人工智慧
- 衛生紙國家標準查詢 All In One
- “BattleTech”:一個系列遊戲的誕生、衰落與重生(上)BAT遊戲
- “BattleTech”:一個系列遊戲的誕生、衰落與重生(下)BAT遊戲
- 小程式:技術標準與生態的演變
- 扒一扒隨機數(Random Number)的誕生歷史隨機random
- Lisp的誕生Lisp
- JavaScript的誕生與死亡(雙語字幕)JavaScript
- html5標準格式HTML
- 硼酸鋇鈉,一種因機器學習而誕生的LED熒光粉機器學習
- [TEAP] HTML5之外的語義標準HTML
- 記HTML5 <a> 標籤的一個小坑HTML
- Generator與Promise的完美結合 -- async await函式誕生記PromiseAI函式
- 功能遊戲爆款的誕生之路,《家國夢》背後的故事遊戲
- 小視訊app開發過程中的兩種編碼標準APP
- 一臺Win10掌機的誕生Win10
- Android解析WindowManagerService(一)WMS的誕生Android
- Unity誕生與發展Unity
- iDaily的誕生AI
- Laravel 的觀察者使用記錄與兩種方式Laravel
- JavaScript世界萬物誕生記JavaScript
- 歷史:敏捷宣言誕生記敏捷
- 兩種利用HTML原生能力標記腳註的方式對比HTML
- 一個Android路由框架的誕生之路Android路由框架
- 扒一扒 CSS 語言的誕生史CSS
- 《三》坐標x軸在兩種機制下的比較
- Node Stream pipe的誕生
- 比特幣的誕生比特幣
- 記錄一種自定義標籤的用法
- 我們見證了兩款“王者榮耀”新遊戲的誕生!遊戲