前陣子應朋友邀請到一個教寫web的課程做點分享,自己不知不覺在這裏頭算是變成老屎忽了。我主要分享的內容是Javascript Fatigue和如何應對之類,基本上沒有新觀點,只是不要太趕潮流,留意每個選擇,都有成本之類。但在這變動得快的行頭裏有些東西還是頗為穩定的,就是web三寶:HTML, CSS, Javascript,而當中 HTML/CSS 的宣告方式帶來了其強韌的特質,以至時至今日,我們都仍能看到第一個網頁。
當聽到 Edge 會跳船到 Blink,也就是 Chrome 的引擎,是若有所失一下。沒錯對於開發來說,可能是方便了,少試一個瀏覽器,但感覺很獨大。若果算 Webkit 是 Blink 的表親,那就只剩下 Firefox 的 Gecko (Quantum) 來競爭,而且看來也注定是少數。獨大的問題,當然就是影響過大,行差踏錯的話我們就GG了。而似乎,我們現在很難要求 Google 不行差踏錯,剩下的就只是靠 Blink 的 open source 社群來維持,但其實也可能是比併公司人頭數。
瀏覽器已經成為系統上最複雜的軟件,要寫一個支持現有標準的,也需要一定的人力物力財力,所以大概都只能看大公司,或者幸運的話有如 Mozilla Foundation 這一機構可以實作。因此引擎真的是買少見少,相當稀有,所以現在支持 Firefox 又好像多了個理由。(我是鐵粉)
有人可能會說,在始終有 W3C 之下,Blink 怎樣都得跟標準吧,會怎麼走樣呢?但 Google 嘛就是有影響力,例如他們之前力推 AMP,就已經使不少網站為了搜尋結果而加入,但現在不少人都覺得那是個壞主意。我會突然想像在 Blink 獨大的平行宇宙裏,對 AMP 有試作式的支持,情況可能更一面倒,不能回頭。再況且 W3C 都是由人組成的,哪個公司的成員較多,就較有影響力。可幸的是 W3C 暫時在考慮事情時,還是非常審慎,望這傳統能承傳。
想像一個災難式場面,Blink 獨大,然後某些原因下 Blink 引擎不能用了,大家要用一個新引擎,但也沒有資源去重新打做,開始時可能只退回到支持數十年前的基本東西。這種情況下,最能抵住這災難的網頁,是以 HTML/CSS 為主的網頁,因為這些語言設計本身能夠容錯,看不懂的跳過就是;而 javascript 為主的網頁如instagram,可能會空白一片。
Mentions