콘텐츠로 건너뛰기
Home » 20090724 :: 브라우저 갈아타기 – IE6 잔혹사

20090724 :: 브라우저 갈아타기 – IE6 잔혹사

게으름이 아니라

사실 좀 쓰다 말다 하면서 시간이 많이 지났네요. 이제사 겨우 우당탕탕 대충 마무리지어서 발행합니다. 원래는 저의 브라우저 권장 성공기를 쓰려고했는데, 좀 병맛나는 글이 될 거 같아서 선회했습니다. 해당 내용은 나중에 다시 정리를 해봐야 할 듯 하네요.
최근 유튜브에서 IE6를 더 이상 지원하지 않는다고 공식적으로 발표하여 좀 화제가 되었었지요. 아주 바람직한 현상이라고 생각됩니다. 얼마전 DDoS 사건을 겪으면서 내심 기대했던 하나의 이슈는 IE의 ActiveX의 폐해가 좀 부각이 될 줄 알았는데, 그런 건 적어도 메이저 언론이라는 곳에서는 그리 많이 이야기 하지 않은 것 같아서 참 의아했어요. 문제의 악성 코드를 배포한 사이트들의 목록도 알려주지 않고 있고 말이지요. 뭐 해당 사이트들을 아직 못찾은 거 아닌가 하는 생각도 들었지만, 어디에선가 문제가되는 사이트들을 이미 차단했기 때문에 공격 자체가 소강 상태에 접어든다는 식으로 사람들을 안심 시키는 기사도 본 적이 있어서 더더욱 의문스럽다는 것이지요. (머 이 내용은 OO일보도 인정한 내용이네요 ㅋ)
뭐 DDoS 관련하여 많은 조치들 및 쏟아져 나오는 이런 저런 발언들을 생각하면 가뜩이나 더운 요즘 사람 마음만 더 짜증이 날 뿐이니 잠시 다음 글로 미루도록 하고 (그래놓고 이 글도 참 미루고 미루다 발행까지 왔지만요), 오늘은 요즘 바람이 불고 있는 브라우저 바꾸기 운동에 대해서 한 번 이야기해 볼까 합니다.

브라우저 갈아타기가 쉽지 않은 배경

액티브엑스와 함께 이제는 천덕꾸러기 취급을 받게된 IE는 무려 10년동안이나 우리와 함께 해온 브라우저입니다. 솔직히 지금 기준으로는 형편 없는 성능에 보안도 불안불안하지만, IE6가 처음 출시된 99년께만해도 대단한 프로그램으로 떠올랐음은 사실 인정해야 할 것입니다. 그 당시에 IE6와 경쟁했던 브라우저들의 수준은 너무나 큰 덩치에 모양새도 그리 이쁘지 못했었거든요. 게다가 윈도 운영체제와 통합되어 있다는 것은 MS로서는 대단한 강점이었습니다. 초고속 인터넷과 함께 PC가 우리 나라의 각 가정에 보급되기 시작하면서 인터넷 익스플로러는 ‘웹 브라우저’가 아닌 ‘인터넷 그 자체’로 인식되었기 때문입니다.
IT에서 10년은 강산이 대여섯번은 바뀌도 남을 정도로 매우 긴 시간입니다. IE6의 이러한 ‘유구한’ 역사는 (그리고 그와 더불어 너무 오랜 기간 동안 경쟁자가 나타나지 못했던 점과, MS의 게으른 업그레이드를 포함해서) 웹의 생태 환경을 그리 좋지 못한 방향으로 이끌고 말았습니다. IE6의 초창기에는 넷스케이프와의 웹 브라우저가 종반을 향해 치닫고 있었고 이러한 상황에서 MS는 넷스케이프와의 차별화를 위해 비표준적인 부분을 지나치게 많이 도입했던 것입니다. (물론 당시의 넷스케이프도 표준에서 멀어지고 있었음은 자명하고요) 말도 안되는 마크업 오류는 관대히 눈감아주는 한 편, MS만의 문법으로 스크립트가 작동하도록 하는 등의 이슈가 많았습니다. 게다가 비주얼 스투디오에 익숙해져가는 개발자들은 ‘웹 코딩’을 자기 스타일대로 해 나가기 시작했습니다. 예를 들면 입력폼에 글자를 넣고 서버로 전송하는 submit을 기능을 폼 자체의 기능이 아닌 스크립트로 수행하는 어처구니 없는 상황들도( IE7이 처음 출시되었을 때 SK텔레콤의 T월드는 로그인이 안됐었습니다! )그냥 그대로 받아들여지고, 그러한 코드가 또 물려지고, 복제되는 등의 악순환이 반복되었습니다. (그리고 그러는 와중에 넷스케이프는 역사의 뒤안길로 사라집니다.)
게다가 우리 나라가 보통 나라입니까. MS라면 사족을 못 씁니다. MS 윈도우의 대규모 보안 업데이트 종합 선물 세트인 ‘서비스팩’이 새로 배포될라치면 뉴스는 호들갑을 떨어댑니다. 인터넷 뱅킹이 안될 거라는 둥, 업계에 대 혼란이 온다는 둥. 그런 혼란을 틈타 많은 웹 서비스 업체들은 고객 들에게 ‘그런 건 번거롭기만하고, 오작동을 유발하니 깔지말라’고 주문합니다. 이쯤되면 막장이라고 해도 할 말 없기입니다. 아무튼 언론에서도 그렇게 떠들어대니 일반 사용자들의 인식은 점점 미궁속으로 한심하게 변해갑니다. 즉, 서비스팩을 설치하고 보안 관리 항목이 강화되어 기존에 사용하던 웹 사이트 기능에 문제가 생기면 그게 ‘웹 페이지의 문제’가 아니라 ‘서비스팩의 문제’가 되는 것입니다.
이런 문제는 특히 파이어폭스가 처음 나타났을 때 아주 점입 가경이었죠. “파이어폭스 별로 좋은 줄 모르겠어요. XX게임 사이트가면 게임도 안되고… 뭐도 안되고… 화면이 깨져서 보여요…” 상황이 이렇다보니, 상황이 이렇다보니 저도 처음에는 주위에 파이어폭스를 매우 적극 권장해주었지만,  결국엔 포기했습니다. 이러한 관점의 차이는 단순히 몇 일, 몇 달만에 생기는 것이 아니기 때문에 분명히 잘 못된 것임에도 불구하고 그 사이에 깊이 패인 간극을 메울 방법을 도저히 찾을 수가 없더군요.

높고 견고한 벽. 그리고 균열

그런데 최근 몇 년 사이에 상황이 좀 재밌게 돌아가기 시작합니다. 윈도비스타가 출시되고, IE7이 탑재되기 시작했죠. 그리고 이 IE7이 XP용으로도 나오기 시작합니다. 개인적으로는 이 때가 정말 흥미 진진했는데요, 팔자에도 없는 웹서비스 기획을 해보게 된 계기이기도 하고 동시에 국내에서 10위내에 랭크될만한 대형 사이트의 코딩을 하신 분과도 작업을 해 보았고, 더 웃긴것은 그 때 별로 깔리지도 않았던 IE7을 기준으로 서비스를 만들었던 경험 때문입니다. 특정 지역 서비스의 부가 서비스 개념으로 사이트를 제작했는데, 경제 수준이 좀 되는 동네이다보니 “여기 사시는 분들이 5~6년 된 컴퓨터를 쓰실 일도 없을테고, 일단 사면 최고 기종 아니겠느냐, 그리고 이제는 PC를 사면 IE7이 깔려있다. 표준에 맞게 가자”고 해서 IE6에서 안되는 부분은 대놓고 포기하는 사태가 벌어지기도 했지요. 다행인지 불행인지는 모르겠으나, 타 지역에서는 그 존재를 모르시는 일이 많은지 웹 관련 클레임은 거의 들어오지 않았습니다. (빙고)
어쨌든 새로운 OS가 새로운 PC에 탑재되어 판매되기 시작하면서 IE7의 점유율은 물리적인 압력에 의한 것처럼 상승하기 시작합니다. 사실 두 브라우저는 비슷하면서도 또 많이 다르기 때문에 IE6가 개발자들의 지옥 코스로 부각된 것은 이 때 쯤부터가 아니었을까 생각됩니다. 차라리 IE6와 FF만 정합한다면 더 쉬웠을지도 모르지요.
그런데, 이러한 상황에서 정말 재밌던 것은 IE7은 그럼에도 부진한 점유율 상승을 이루어왔는데, 그 이유는 IE6 사용자들이 FF로 갈아타기 싫었던 이유와 마찬가지 입니다. 실질적으로 ‘잘 안되는 것’은 없습니다만, 익숙하지 않았던 것과 언론이 부채질해 온 ‘업그레이드에 대한 막연한 두려움’이 큰 몫을 차지했던 것 같네요. 그리고 주목할만한 것은 이러한 점은 IE7의 점유율 상승에도 큰 장애가 된 것이 사실입니다.
결국 IE6의 독주와 이에 웹을 너무 안일하며 개발을 해온 서비스 업체 그리고 거기에 동조하여 무책임한 이슈 떠벌리기에만 급급했던 대한민국 언론. 이런 것들이 지금의 웹 생태계를 난국으로 몰아넣었다는 점에서는 비난을 피하기는 어려울 것입니다.

IE8의 강제 업데이트와 문제점

IE7이 IE6와 가장 달랐던 점이자 동시에 달랐지만 전혀 인정 받지 못했던 점은 바로 탭 브라우징이었습니다. MS에서조차 이런 걸 눈치채고 있었는지는 모르겠지만, 아무튼 IE7의 기본 동작 모드는 새 창에서 _blank로 정의된 링크가 열리도록 한 것이었죠. 실제로 파이어폭스를 주변에 권했을 때 가장 ‘불편하다’고 반응하는 부분은 대체로 ‘네이버에서 링크를 눌렀는데, 창이 새로 안뜬다’는 것이었습니다. IE7이 이러한 ‘혼란(?)’을 중화시키는 역할을 어느 정도 수행할 때 쯤에 IE8이 등장했습니다. 거의 그냥 모양새만 좀 달라진 IE7과는 달리 많은 부분에서 환골탈태라는 말에 걸맞을만큼 싹 뜯어고쳐진 모습이 뭐랄까, 좀 마음이 놓이는 모습이었습니다. IE8이 등장할 때 가장 큰 이슈가 되었던 것은 바로 하위 호환성을 포기하고 웹표준을 전격적으로 지원한다는 이야기였습니다. ACID2 테스트를 100점으로 통과했었죠. 이는 IE6,IE7을 떠올렸을 때 깜짝 놀랄만큼 센세이셔널한 이야기이기는 합니다. 어떤 의미에서는 대단하다고 할 수 있겠습니다만, 사실 하위 호환성을 포기한다는 것은 MS 입장에서는 이러한 하위 호환성 포기가 그렇게 어려운 결정은 아니었을 겁니다. 왜냐면 하위 호환성을 포기할 것이냐 말 것이냐의 문제는 브라우저를 만드는 입장에서는 별로 고민할 거리가 없기 때문이지요. 웹 서비스가 비록 웹 브라우저 위에서 돌아간다고해도, 이 하위 호환성에 대한 여지는 정확하게는 브라우저가 아닌 웹 서비스 자체에서 눈물을 머금고 수정을 해야할 문제이니까요. 단지 서비스를 만드는 사람의 입장에서는 정합해야할 브라우저가 하나 더 추가된 것일 뿐이라는 이야기입니다.
암튼 이런 배경에서 등장한 IE8에 대해서 MS는 더더욱 단호한 조치를 취합니다. 바로 IE8을 윈도우XP의 자동 업데이트 항목 중 ‘중요 업데이트’로 설정함으로써 윈도 자동 업데이트를 사용하는 사용자들이 IE8을 거의 반 강제적으로 다운로드 받아 설치하게끔한 것이지요. 언뜻 보기에 이러한 결정은 매우 반길만하다고 생각됩니다만, 제가 보기에는 좀 시기 상조가 아니었나 싶은 생각도 듭니다. 이런 결정이 내려진 것은 IE8이 출시되고 몇 달 지나지 않은 시점으로 기억하는데 물론, MS가 오랜 기간의 테스트를 거친 것은 사실이지만 ‘대부분의’ 시스템에 적용될 것을 예상하고 시행하는 윈도우즈 업데이트에 포함시켜도 좋을 만큼의 IE8의 안정성이 확보되지 못한 상황에 내려진 판단이라는 점은 좀 성급했다고 생각되는군요. 덕분에 네이버 지식인에는 ‘IE8을 깔고 났더니 어쩌구 저쩌구…’ 하는 질문들로 득실거리기 시작했고, IE8을 삭제하는 방법에 대한 이야기들이 나오기 시작했습니다. 안타깝게도 이렇게 업데이트 적용 후 IE8을 수동으로 삭제하고나면 윈도 자동 업데이트가 다시 IE8을 설치하라고 하지는 않는다는 점에서 ‘보다 안정적인 대안’으로서의 IE8이 시장에 진입할 수 있는 기회가 좀 줄어든 것은 아닌가 하는 생각도 조금은 듭니다.

브라우저 갈아타기에 대한 우리들의 준비

아무튼 이제 IE6를 대체할 수 있는 플랫폼의 준비는 거의 완료되었다고 판단해도 크게 무리가 있지는 않은 것 같습니다. IE8과 IE7이 있고, 구글 크롬, 파이어폭스, 사파리, 오페라 등의 멋진 브라우저들도 멋진 외관과 훌륭한 성능을 가지고 간택되기만을 기다리고 있는 것이니까요. 그리고 어느 정도 자신감 있는 서비스들은 (트위터나 유튜브) 이제 IE6 말고 더 좋은 브라우저를 써보라고 슬슬 사용자들을 꼬드기기 시작합니다. 그런데 이렇게 브라우저만 구비되면 사용자들은 순순히 IE6를 버리고 다른 서비스를 찾아 떠날 수 있을까요? (그리고 국내라면 그러한 사용자들은 여전히 압도적으로 너무나 많습니다.)
꼭 그렇지만은 아닐 거라고 봅니다. 지금도 여전히 파이어폭스나 구글크롬, 오페라에서 정상적으로 동작하지 않는 서비스가 너무나 많습니다. 단순히 화면이 어긋나는 것을 떠나서 여기저기에 이해할 수 없는 방식으로 사용된 자바 스크립트가 브라우저에 따라서 제대로 작동하지 못하는 곳들은 지금도 여전히 많다는 것이죠. (게다가 앞서 언급했듯이 웹 브라우저에서 자바 스크립트가 정상적으로 실행되지 않고 오류가 발생한다면 대부분의 브라우저는 그러한 내용을 적극적으로 알리지 않고 슬그머니 스크립트 실행을 중단해버립니다. 그게 브라우저 사용 시나리오에도 부합하는 것이구요)  엑티브 X문제는 사실 IE와 비IE 계열간의 문제이므로 좀 다른 이슈라고 생각됩니다만, 사실 ‘사용자의 접근성’을 중시하는 철학으로 웹 서비스를 제작하려면 액티브 X를 사용해서 웹상에서 사용하는 서비스 ==> 웹에서 할 수 있는 것만 제공하는 웹 서비스 + 전용 클라이언트의 형태를 병행하여 제공하면 (비용문제는 있겠습니다만) 되는 것이지요. 그리고 요즘은 말도 안되는 액티브엑스를 남발하기보다는 플래시의 기능을 이용해서 이러한 문제를 우회하는 서비스들도 많이 있죠.
어쨌든 지난 10년동안 발목에 묶인 큰 바위 같던 브라우저 문제의 가장 큰 덩어리를 우리는 지금 치워보려고 하는 순간에 와 있습니다. 그리고 이러한 흐름은 점점 더 거세어 질 거라는 것도 명백해 보입니다. 어찌보면 단순히 브라우저 하나 버리고 끝나는 문제가 아니라, 웹서비스에 대한 인식이 바뀌고 접근성에 대한 고민들이 더욱 중요하다고 생각됩니다만, 지금 블로고스피어 곳곳에서 보이는 이러한 브라우저 갈아타기를 천명하는 개발자/기획자들의 블로그를 보면 사실 그러한 점은 좀 찾아보기가 힘들어서 좀 씁쓸하게 생각되기도 하네요. 분명 브라우저를 교체하면 사용자 입장에서도 훨씬 빠른 인터넷을 쓰는 것 처럼 체감 성능의 향상이 있을 수도 있습니다만,  ‘지금의 형상에서 브라우저 정합 업무량만 줄어드는’ 것으로 웹 환경이 바뀌어서는 안된다는 겁니다. 결국 브라우저 갈아타기 운동은 구형 브라우저를 역사의 뒤안길로 보내는 작업인 동시에 웹 환경에 대한 인식 변화와 실제 환경 개선이 서로 맞물려야 할 것입니다. 그런 면에서 브라우저 갈아타기는 단순히 사용자들이 새 브라우저를 다운로드 받는 비용만 생각할 정도의 단순한 운동에 그칠 것은 아닙니다. 서비스 자체가 표준에 부합하게 구현되어야 하며, 그 이전에 위에서 이야기한대로 비 IE 계열의 브라우저 사용자들이 실질적으로 전체 서비스를 사용할 수 있도록 하는 고려가 설계에 반영 되어야 할 것입니다. 사실 IE6를 버릴거면 (많은 분들이 주장하시듯) 왜 굳이 IE8을 설치해야 하는 지 전 잘 모르겠거든요.