이전 글을 보고 오시면 더 좋습니다.
tl;dr
Chromium은 브라우저의 OS화를 꿈꾸고, WebKit은 브라우저에서 더 나은 Graphics를 꿈꾸고, Mozilla는 사용자의 프라이버시 보호를 꿈꾼다.
Chromium
지금 웹에서 가장 선두주자로 달려나가고 있는 브라우저라고 하면 Chromium을 빼놓고 이야기할 수 없을 것이다. 전세계 브라우저 점유율 1위인 Chrome, 2위인 MS Edge가 모두 Chromium을 기반으로 구현되고 있습니다.
Google은 4~5년 전부터 웹 애플리케이션 고도화를 목표로 다양한 활동을 개진해나가고 있습니다. 웹의 미래를 견인하는 기업 중 하나로서 Google의 목표는 더 많은 정보를 Web에서 이용할 수 있게 하는 것일 겁니다.
- PWA (Progressive Web Apps)는 이제 완전히 정착되었으며, 예전 글에서 다뤘던 ServiceWorker, WebAppManifest 레이어를 뛰어넘어서 ‘웹 애플리케이션’을 부르는 새로운 단위가 되어가고 있습니다.
- Microsoft가 Chromium에 합류하면서 MS Store에 PWA를 등록할 수 있게 하고, 그 노하우를 바탕으로 Google Play Store에도 PWA를 등록할 수 있게 할거라는 기사가 있었다. 예컨데 PWA를 Native Application과 동일하게 취급하겠다는 이야기.
- Chrome OS는 북미, 유럽 시장에서 교육용 OS로 크게 자리매김하였으며, G Suite에서 제공하는 다양한 Application (Google Docs, SpreadSheet, Presentation)을 통해서 Web Platform을 더 견고히 만들고 있습니다.
- Chromium은 작년부터 Project Fugu 라는 이름의, Web에서 OS 수준의 정보에 접근할 수 있는 API들을 제작하고 있습니다. WebCodecs, NativeFileSystem API 등이 개발되었으며 실제로 Working하는 중
- MS는 Office와 관련한 스펙들을 강화하기 위해서 문서 편집과 관련한 다양한 스펙에 기여하고 있습니다. 웹에서 편집 관련된 것들은 이제 MS가 대부분 쥐고 있다고 해도 무방할 수준으로 많이 기여 중
또한 W3C와 협력하여 HTML, DOM 등의 스펙을 관리하고 있는 WHATWG의 주력 멤버로 Google, Microsoft 멤버들이 참여하고 있기 때문에 표준화 활동에서도 지속적으로 움직이고 있습니다.
아마 앞으로도 Chromium은 소비 메모리를 줄이는 동시에 성능을 높이고, 더 나은 UX를 제공할 수 있는 인터페이스에 대해서 지속적으로 고민해 나갈 것입니다.
WebKit
많은 사람들이 Google에 묻혀서 Apple의 Web 사랑을 잘 모르지만, Apple은 예전부터 Web을 꽤 아끼는걸로 유명한 기업입니다. 어쨌든 WebKit 엔진에 가장 많은 역할을 하고 있는 것도 사실이고, WebKit이 없었다면 Chromium도 없었을 겁니다.
WebKit의 최근 행보는 Google의 그것과는 조금 다른데, Web Application에 초점을 맞추기 보다는 Web GL의 성능 개선, Web GPU를 통한 극한의 Graphics 제어, Web Animation 고도화, ECMA Script 최신 버전 지원, CSS 최신 버전 지원 등 조금 더 Browser의 Platform 레이어에 집중하는 모습입니다.
또한 Web AR 등의 구현에도 초점을 맞추는 것으로 보아, Google과 결은 비슷하지만 조금 더 Graphics 레이어의 고도화에 신경쓰고 있는 점을 살펴볼 수 있습니다.
WebKit은 예전부터 획기적인 변화를 꾀하기보다, 기본을 잘하려고 노력하는 모습을 보여주고 있습니다. 어떻게 하면 Browser의 기본 API를 강화하고, 더 나은 성능을 제공할 것인가에 더 집중하고 있는 모습으로 보이네요.
WWDC에서 ARM Based Mac을 이야기 했으니, 아마 앞으로의 WebKit은 Graphics 자체에 집중하는 한편 여러 기기에서 사용할 때의 경험을 강화할 거라 생각됩니다. 개인적인 의견이지만 Resize 할 때 액션을 강화하거나, RWD 관련 스펙을 고도화하고, Color나 Fonts 같은 것들을 더 고도화 시킬 겁니다.
거기에 기기간 연동을 위한 API들이 몇개 나오지 않을까 생각됩니다. 한편으로 Web GPU 등을 통해 AR을 지속적으로 지원하고, 웹에서 ML을 돌릴 수 있는 근간을 마련하고 있는 것으로 보입니다.
Mozilla
Firefox로 대표되는 Mozilla의 최근 행보는 꽤 괴롭습니다. 그도 그럴 것이 Mozilla Foundation은 Open Source 기반으로 동작하지만, Mozilla corporation은 어쨌든 Browser를 통해서 수익을 낼 수 있어야하는 기관이기 때문입니다.
그런 면에서 최근 Mozilla의 여러 시도는 실패했고, 점유율은 바닥으로 치닫고 있습니다. (저는 Firefox 브라우저를 개인적으로는 좋아합니다)
Mozilla의 최근 움직임은 C++을 대체할 언어인 Rust의 지속적인 개발을 견인하는 한편, Firefox에서 Privacy 침해 우려를 방지하는 데에 초점을 맞추고 있습니다.
대표적인 게 Sandbox를 통한 브라우저 내 트래픽 이동 차단, Monitor를 통한 트래픽 경로 살펴보기, Mozilla VPN 제공 등이 있겠습니다. 또한 Mozilla에서 제공하는 MDN과 Browser 관련 지식들은 그 질이 꽤 높기 때문에, 앞으로도 지속적으로 지켜볼 가치가 있다고 생각합니다.
(그와 별개로 Mozilla 자체는 위기 상태라고 생각합니다.)
결론
Chromium의 점유율이 높아지면서 Google과 MS의 작은 날개짓이 웹 생태계 전체에 영향을 미치는 시기가 되었습니다. 그렇다고 WebKit의 점유율이 지금에서 더 최악에 치닫는 일은 없을 듯 하지만, 그럼에도 불구하고 확실한 경쟁자가 부족한 것이 사실입니다.
향후에 점점 브라우저 파편화가 심해질 거라 생각되고, 아마 일부 개발자들은 크로스 브라우징을 포기할 거라 생각됩니다. 사실 지금도 UA 긁어다가 Chrome Only로 동작시키는 웹사이트들이 종종 보이는 수준이니까요.
소비자에게 브라우저 선택을 강요해서는 안됩니다. Chrome, MS Edge, Firefox, Safari 유저 모두 최신 버전의 브라우저를 사용하고 있다면 더 나은 사용성을 가질 권리가 있습니다. (IE는…)
그럼에도 불구하고 새로운 브라우저 API들에 대해서는 지속적으로 학습하고, 어떤 것들을 지금 단계에서 녹여낼 수 있는가에 대해서 지속적으로 고민하는 훈련은 필요하겠습니다.
앞으로는 지금보다 더 할 수 있는 일이 많아질 것입니다. 그 기회를 붙잡으시길 바랍니다.