Mozilla도 웹킷으로 갈것인가?

지난 주 Opera Software가 자사의 웹 브라우저 엔진인 Presto를 버리고, 새롭게 WebKit으로 전환한다고 발표하였다.

HTML 렌더링 엔진은 웹 페이지를 해석하는 주요 소프트웨어로서 IE의 Trident, Mozilla의 Gecko 그리고 Safari와 Chrome의 Webkit 그리고 Opera의 Presto가 경쟁하고 있었다.

오페라의 결정은 매우 이례적인것으로 보이나 사실 오페라의 데스크톱 브라우저 시장 점유율은 매우 낮고, 주요 사업이 모바일 및 셋톱박스 엔진임을 감안하면 웹킷으로 전환은 매우 자연스러운 것이다. 물론 많은 개발자들이 실망하고 있지만…

오페라는 다음 버전 부터 웹킷 엔진으로 전환한 브라우저를 내놓으면서 앞으로 웹킷 오픈 소스 커뮤니티에 공헌할 것이라고 밝혔다. (이는 오픈 소스 진영 전체적으로는 매우 환영할 만한 일이다.)

사실 웹킷의 영향력은 더 확대되고 있다. 그러다 보니 Mozilla 역시 오픈 소스로서 웹킷에 참여하지 않을까?하는 이야기까지 흘러나오고 있는 듯…


(MozCamp2012에서 함께한 Brendan Eich)

Mozilla의 CTO이자 자바스크립트의 아버지인 Brendan Eich는 이례적으로 블로그 글을 통해 Mozilla는 당분간 렌더링 엔진을 바꾸지 않고 그것은 모질라 프로젝트의 사명과도 맞지 않는다고 밝혔다. 특히, 일반 사용자 제품을 직접 공급하는 오픈 소스 커뮤니티로서 웹킷을 사용하면 다른 제품과의 차별성도 없어지며 선택 가능한 기술의 다양성을 위배하게 된다.

또한, Mozilla는 XML 기반의 UI 언어인 XUL을 사용하는데, 이를 사용하는 부가 기능 개발자 생태계 및 자산을 유지하는 것은 매우 중요하며, Android용 Firefox나 Firefox OS 같은 새로운 혁신 프로젝트를 해 나가는데도 도움이 된다.

현재 Mozilla에서는 Firefox가 사용하고있는 Gecko 엔진의 차세대 버전 Servo의 개발에도 박차를 가하고 있는 중이다. Servo 는 멀티 코어 CPU와 대용량 병렬 처리 할 수있는 GPU에 최적화한 렌더링 엔진으로 현재 크롬같은 브라우저의 다중 스레드(=내부 병렬처리) 모델 보다 진일보한 것이다. 이 엔진은 오픈 소스로서 Rust라는 C++을 개선한 자체 개발 언어로 개발 중이다.

자체 엔진을 가진 때문에, Firefox OS 나 Firefox for Android 등의 프로젝트도 가능하게된다. 그 중에서도 특히 Eich는 지금 Firefox가 사용하고있는 Gecko 엔진의 차세대 버전 Servo에 큰 기대를 품고있다. Servo 는 멀티 코어 CPU와 대용량 병렬 처리 할 수있는 GPU에 최적화되어있다. 그래서 브라우저의 다중 스레드 (== 내부적 병렬성)는 Apple과 Google보다 진일보 한 것이된다.

사실 웹킷 역시 단일 시스템이 아니고 다양한 버전과 포킹이 존재한다. 예를 들어, 자바스크립트 엔진(V8 및 Nitro) 및 그래픽 엔진, (오픈 소스가 아닌) 크롬의 멀티 프로세스 엔진, 애플의 WebKit2 프레임웍 등 다양한 조합이 있다. 게다가 안드로이드 2.3의 낮은 버전의 웹킷 등은 웹 개발자에게도 큰 고역이다.

웹 개발자에게는 오히려 오페라의 웹킷 전향으로 인해 웹 사이트 브라우저 지원에 대한 수고를 조금 덜었다는 측면에서 오히려 환영 받을 것 같다. 그렇다고 모든 렌더링 엔진이 웹킷으로 일방향으로 가는 것은 바람직하지 않다. 웹은 항상 다양성과 혁신으로 성장해 왔기 때문이다.

일반 사용자에게는 렌더링 엔진은 그다지 중요하지 않다. 중국에서는 IE의 Trident 클론 엔진을 쓰는 Maxthon의 쇄락과 Qihoo/360 브라우저의 상승, 모바일에서 돌핀 브라우저가 인기를 끌고 있다. 크롬의 마케팅 덕분에 사용자가 크고 늘고 있는 것만 보아도, 얼마나 제품을 배포할 수 있는 능력에 좌우되고 있다.

Mozilla는 항상 선택 가능한 대안으로서 혁신을 이끄는 위치를 유지해 왔고, 상용 제품과 맞먹는 일반 사용자 제품을 커뮤니티 기반으로 만들어 왔다. 아마 향후에도 그 사명은 크게 변하지 않을 것이다.

p.s. 오페라 개발자 포럼에서는 Presto를 오픈 소스로 개방하라는 의견도 올라오고 있다.

여러분의 생각

  1. 크롬의 경우 크로미윰 프로젝트를 통해서 오픈소스로 사용하는 웹킨 소스코드는 모두 공개되어 있지 않나요?

  2. 개인적으로 느끼는 오페라의 문제는 표준적이지도 편리하지도 않은 UI였는데 오히려 엔진을 버리네요.

의견 쓰기

이름* 이메일* 홈페이지(선택)